Internet Explorerのボタンのスタイルを完全に削除する方法はありますか?ボタンにcssスプライトを使用していますが、すべて問題ありません。
しかし、ボタンをクリックすると、少し上に移動し、形が崩れます。CSSクリック状態、またはマウスダウンはありますか?何がその状態を引き起こすのかわかりません。
それほど大したことではないことはわかっていますが、時には重要なのは小さなことです。
回答:
「ボタンをクリックすると少し上に移動する」と言うと、ボタンのマウスダウンクリック状態について話していると思います。マウスクリックを離すと、通常の状態に戻ります。 ?また、次のコマンドを使用して、ボタンのデフォルトのレンダリングを無効にします。
input, button, submit { border:none; }
もしそうなら..
個人的には、このIEネイティブアクションを実際に停止/オーバーライド/無効にできないことがわかりました。このため、この動きを可能にするためにマークアップを少し変更し、さまざまな状態のボタンの全体的な外観に影響を与えませんでした。
これが私の最後のマークアップです:
<span class="your-button-class">
<span>
<input type="Submit" value="View Person">
</span>
</span>
私はこれがより徹底的なアプローチを提供すると思います:
button, input[type="submit"], input[type="reset"] {
background: none;
color: inherit;
border: none;
padding: 0;
font: inherit;
cursor: pointer;
outline: inherit;
}
<button>Example</button>
!important
ます。とはいえ、それは状況決定なので削除しました。background: none
完全に有効です:stackoverflow.com/questions/20784292/…–
<button/>
...私の場合、font: inherit;
トリックをしました。ありがとうございました!
あなたの質問には「Internet Explorer」と書かれていますが、他のブラウザに興味がある人はall: unset
、ボタンを使ってスタイルを解除できます。
IEまたはEdge 18では機能しませんが、他のすべての場所で十分にサポートされています。
https://caniuse.com/#feat=css-all
Safariの色に関する警告:WebKitのバグが原因で、color
使用後にボタンのテキストを設定all: unset
するとSafari 13.1で失敗する場合があります。(このバグはSafari 14以降で修正される予定です。)「黒に設定されているため、色が上書きされます。」の使用後にテキストを設定する必要がある場合は、との両方を同じ色に設定してください。all: unset
-webkit-text-fill-color
color
all: unset
color
-webkit-text-fill-color
アクセシビリティ警告:マウスポインタを使用していないユーザーのために、再度追加いくつかに必ず:focus
スタイリング、例えばbutton:focus { outline: orange auto 5px }
のためのキーボードアクセシビリティ。
そして忘れないでくださいcursor: pointer
。 を含むすべてのスタイリングをall: unset
削除しcursor: pointer
ます。これにより、ボタンの上にカーソルを置くと、マウスカーソルが手の形に見えます。あなたはほぼ間違いなくそれを取り戻したいと思っています。
button {
all: unset;
color: blue;
-webkit-text-fill-color: blue;
cursor: pointer;
}
button:focus {
outline: orange 5px auto;
}
<button>check it out</button>
outline
、:focus
要素の状態のすべてのスタイルを追加し直す必要があります。
outline
スタイルよう。(ただし、他の目的で再追加する必要があるものはないと思います。何か知っていますか?)
ボタンの「アクティブ」状態だと思います。