title: Why do all Dash components have borders when clicked?
body: <p>I'm following a simple tutorial to build a stock price dashboard in Plotly Dash. When the app is running on localhost, every Component gets a border when hovered or clicked. See the GIF below.</p>
  <p><a href="https://i.stack.imgur.com/olE88.gif" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/olE88.gif" alt="borders on Dash components" /></a></p>
  <p>Is this due to a setting somewhere? It's very annoying, and it seems to happen in most of the Dash apps I've been making.</p>
  <p>The code for the app is here:</p>
  <pre class="lang-py prettyprint-override"><code>import dash
  import dash_core_components as dcc
  import dash_html_components as html
  from dash.dependencies import Input, Output, State
  import plotly.graph_objs as go
  import pandas_datareader.data as web
  from datetime import datetime, timedelta
  
  
  app = dash.Dash(title=&quot;Stock Dashboard&quot;)
  
  app.layout = html.Div(
      [
          html.H1(&quot;Stock Ticker Dashboard&quot;),
          html.Div(
              [
                  html.H4(&quot;Enter stock symbols:&quot;),
                  dcc.Input(
                      id = 'stock_picker',
                      value = 'AAPL',
                      style = dict(
                          fontSize = 24,
                          width = '100%',
                          marginRight = '15px',
                          padding = '10px 5px',
                          borderRadius = '4px'
                      )
                  ),
              ],
              style = dict(
                  display = 'inline-block',
                  verticalAlign = 'middle',
                  marginRight = '20px',
                  width = '40%'
              )
          ),
          html.Div(
              [
                  html.H4(&quot;Choose a date range:&quot;),
                  dcc.DatePickerRange(
                      id = 'date_picker',
                      min_date_allowed = datetime(2010, 1, 1),
                      max_date_allowed = datetime.today(),
                      start_date = datetime.today() - timedelta(days=365),
                      end_date = datetime.today(),
                  ),
              ],
              style = dict(
                  display = 'inline-block',
                  verticalAlign = 'middle',
                  marginLeft = '20px'
              )
          ),
          html.Div(
              [
                  html.Button(
                      id = 'submit_button',
                      n_clicks = 0,
                      children = &quot;Submit&quot;,
                      style = dict(
                          fontSize = 24,
                          marginLeft = '30px'
                      )
                  )
              ],
              style = dict(
                  display = 'inline-block',
                  verticalAlign = 'bottom'
              )
          ),
          html.Div(
              [
                  dcc.Graph(
                      id = 'stock_graph',
                      figure = dict(
                          data = [{'x': [1,2], 'y': [3,1]}],
                          layout = go.Layout(
                              xaxis = dict(
                                  title = dict(
                                      text = &quot;Date&quot;,
                                  ),
                              ),
                              yaxis = dict(
                                  title = dict(
                                      text = &quot;Closing Price / [$]&quot;,
                                  )
                              )
                          )
                      ),
                      style = dict(
                          height = '600px'
                      )
                  )
              ],
              style = dict(
                  height = '600px'
              )
          )
      ],
      style = dict()
  )
  
  @app.callback(
      Output('stock_graph', 'figure'),
      [Input('submit_button', 'n_clicks')],
      [
          State('stock_picker', 'value'),
          State('date_picker', 'start_date'),
          State('date_picker', 'end_date')
      ],
  )
  def update_graph(n_clicks, stock_ticker, start_date, end_date):
      start = datetime.strptime(start_date[:10], '%Y-%M-%d')
      end = datetime.strptime(end_date[:10], '%Y-%M-%d')
  
      print(f&quot;Getting stock prices for: {stock_ticker}, [{start} - {end}]&quot;)
      df = web.DataReader(stock_ticker, 'yahoo', start, end)
  
      fig = dict(
          data = [go.Scatter(
              x = df.index,
              y = df['Close'],
              mode = 'lines'
          )],
          layout = dict(
              title = stock_ticker,
              yaxis = dict(
                  title = 'Closing Price / [$]'
              )
          )
      )
  
      return fig
  
  if __name__ == '__main__':
      app.run_server()
  </code></pre>
  <p>Edited to add the version numbers for some of the modules (please let me know if I should include others):</p>
  <pre><code>pandas==1.1.1
  pandas-datareader==0.9.0
  dash-core-components==1.10.2
  dash-html-components==1.0.3
  dash-renderer==1.6.0
  dash-table==4.9.0
  Flask==1.1.2
  Flask-Compress==1.5.0
  </code></pre>