デフォルトのボタンはクリック時にアウトラインスタイルを表示しませんが、カスタムボタンはクリック時にアウトラインスタイルを表示するのはなぜですか?デフォルトのボタンはクリック時にアウトラインスタイルを表示しません
クリック時にカスタムボタンからアウトラインスタイルを削除するにはどうすればよいですか?ユーザーがキーボードを使用して移動するときにアウトラインスタイルを維持します(デフォルトボタンと同じ動作)。
.btn {
display: inline-block;
padding: 12px;
background: cyan;
border: none;
}
<div>
<button type="button">Why no outline styles on click?</button>
</div>
<div style="margin-top: 24px">
<button class="btn">Why outline styles on click?</button>
</div>
UPDATE:アクセシビリティの理由でなし:私はアウトラインを使用することはできません。参照してください:http://www.outlinenone.com/
これはJSで 'blur 'を使って修正できます。私は、ユーザーエージェントがブラウザイベントに応答していることを推測しており、カスタムスタイルの要素(少なくとも特定のプロパティの場合)ではなく、デフォルトのスタイル付き要素のフォーカスを削除しています。 – hungerstar