Aqui eu tenho um CSS-selector baseado em bobince 's resposta para selecionar qualquer elemento HTML focalizável:
a[href]:not([tabindex='-1']),
area[href]:not([tabindex='-1']),
input:not([disabled]):not([tabindex='-1']),
select:not([disabled]):not([tabindex='-1']),
textarea:not([disabled]):not([tabindex='-1']),
button:not([disabled]):not([tabindex='-1']),
iframe:not([tabindex='-1']),
[tabindex]:not([tabindex='-1']),
[contentEditable=true]:not([tabindex='-1'])
{
/* your CSS for focusable elements goes here */
}
ou um pouco mais bonito no SASS:
a[href],
area[href],
input:not([disabled]),
select:not([disabled]),
textarea:not([disabled]),
button:not([disabled]),
iframe,
[tabindex],
[contentEditable=true]
{
&:not([tabindex='-1'])
{
/* your SCSS for focusable elements goes here */
}
}
Eu o adicionei como resposta, porque era isso que eu estava procurando quando o Google me redirecionou para esta pergunta do Stackoverflow.
EDIT: Há mais um seletor, que é focável:
[contentEditable=true]
No entanto, isso é usado muito raramente.