Posso fazer com que o Firefox não exiba os contornos de foco pontilhado feio nos links com isso:
a:focus {
outline: none;
}
Mas como posso fazer isso também com <button>
tags? Quando eu faço isso:
button:focus {
outline: none;
}
os botões ainda têm o contorno pontilhado quando clico neles.
(e sim, sei que esse é um problema de usabilidade, mas gostaria de fornecer minhas próprias dicas de foco, que são apropriadas ao design, em vez de feios pontos cinza)
Respostas:
fonte
:focus {outline:none !important;}
Não há necessidade de definir um seletor.
No entanto, isso viola as práticas recomendadas de acessibilidade do W3C. O esboço está lá para ajudar aqueles que navegam com teclados.
https://www.w3.org/TR/WCAG20-TECHS/F78.html#F78-examples
fonte
<button>
, não<a>
, nem<input>
without ... an author-supplied visual focus indicator
- em outras palavras, é bom substituir o estilo de agente do usuário pelo seu, como mencionado no OP. Idealmente, deve ser de alto contraste.Se você preferir usar CSS para se livrar do esboço pontilhado:
fonte
0px
pode ser substituído por apenas0
O abaixo funcionou para mim no caso de LINKS, pensou em compartilhar - no caso de alguém estar interessado.
Felicidades!
fonte
a { outline: none; }
deve ser suficiente para links.a { outline: none; }
com!important
->a { outline: none !important; }
fonte
a
Elementos, então eu encontrei uma boa opção para serbody :focus, body :active { outline: 0; border: 0; }
::-moz-focus-inner { border: 0; }
[Update] Esta solução não funciona mais. A solução que funcionou para mim é esta https://stackoverflow.com/a/3844452/925560
A resposta marcada como correta não funcionou no Firefox 24.0.
Para remover o contorno pontilhado do Firefox nos botões e tags âncora, adicionei o código abaixo:
Encontrei a solução aqui: http://aghoshb.com/articles/css-how-to-remove-firefoxs-dotted-outline-on-buttons-and-anchor-tags.html
fonte
Tentei a maioria das respostas aqui, mas nenhuma delas funcionou para mim. Quando percebi que também precisava me livrar do contorno azul dos botões do Chrome, encontrei outra solução. Remover borda azul do botão CSS personalizado no Chrome
Este código funcionou para mim no Firefox versão 30 no Windows 7. Talvez possa ajudar alguém lá fora :)
fonte
Não há como remover esses focos pontilhados no Firefox usando CSS.
Se você tiver acesso aos computadores em que o aplicativo da web funciona, acesse about: config no Firefox e defina
browser.display.focus_ring_width
como 0. O Firefox não mostrará nenhuma borda pontilhada.O bug a seguir explica o tópico: https://bugzilla.mozilla.org/show_bug.cgi?id=74225
fonte
::-moz-focus-inner {border:0;}
como mencionado em várias outras respostas funciona perfeitamente.Existem muitas soluções encontradas na Web para isso, muitas das quais funcionam, mas para forçar isso, para que absolutamente nada possa realçar / focar uma vez que se use o seguinte:
Isso apenas adiciona um pouco de segurança extra e sela o acordo!
fonte
Isso obterá o controle de alcance:
De: remover o contorno pontilhado do elemento de entrada do intervalo no Firefox
fonte
range
- obrigado :)Testado no Firefox 46 e Chrome 49 usando este código.
Antes (pontos brancos são visíveis)
Depois (os pontos brancos ficam invisíveis)
Se você deseja aplicar apenas em alguns campos de entrada, botões, etc. Use o código mais específico.
Feliz codificação !!
fonte
!important
era necessário para me substituir estilo do Firefox. Felicidades!Basta adicionar este css para a caixa de seleção
Isso está funcionando bem para mim.
fonte
Eu acho que você realmente deve saber o que está fazendo removendo o esboço do foco, porque isso pode atrapalhar a navegação e acessibilidade do teclado.
Se você precisar removê-lo por causa de um problema de design, adicione um
:focus
estado ao botão que o substitua por outra sugestão visual, como alterar a borda para uma cor mais brilhante ou algo assim.Às vezes, sinto a necessidade de descrever esse esboço irritante, mas sempre preparo uma sugestão visual de foco alternativo.
E nunca use a
blur()
função js. Use a::-moz-focus-inner
pseudo classe.fonte
Na maioria dos casos, sem adicionar o
!important
código CSS, ele não funcionará.Então, não esqueça de adicionar
!important
Ou qualquer outro código:
fonte
Onde
button
pode estar qualquer seletor de CSS para o qual você deseja desativar o comportamento.fonte
Você pode intensificar o foco em vez de se livrar dele.
fonte
Remova o contorno pontilhado dos links, botão e elemento de entrada.
fonte
Se você possui uma borda em um botão e deseja ocultar o contorno pontilhado no Firefox sem remover a borda (e, portanto, sua largura extra no botão), você pode usar:
fonte
O código CSS abaixo funciona para remover isso:
fonte
Parece que a única maneira de conseguir isso é definindo
em about: config por navegador.
fonte
Isso funciona no firefox v-27.0
fonte
Depois de tentar muitas opções acima, apenas o seguinte funcionou para mim.
fonte
button:focus { outline: none !important }
Ou se você gosta de mim, não gosta! Importante, isso também substitui o estilo do Firefox::root button:focus { outline: none }
Junto com o Bootstrap 3, usei esse código. O segundo conjunto de regras apenas desfaz o que a inicialização faz para os botões de foco / ativo:
Observe que seu arquivo css personalizado deve vir após o arquivo css do Bootstrap no seu código html para substituí-lo.
fonte
Sim, não perca !
fonte
Você pode tentar
button::-moz-focus-inner {border: 0px solid transparent;}
no seu CSS.fonte