Chromeでうまく機能しているカスタムチェックボックスをCSS3で作成しようとしています。 Firefoxでは...あまりそうではありません。Firefoxでカスタムチェックボックスが失敗する
編集:それはFirefoxの37
以下の答えに正常に動作しているようだと、まだ関連ですが、半ば2013年からスタイル関連の問題が解決されています。
ここではIEのサポートは記載されていませんが、編集/回答は歓迎します。
demo
HTML:
<input type="checkbox" id="first"/>
<label for="first">This is pretty awesome</label>
CSS:
input[type=checkbox] {
appearance: none;
background: transparent;
position: relative;
}
input[type=checkbox]::after {
position: absolute;
top: 0;
left: 0;
content: '';
text-align: center;
background: #aaa;
display: block;
pointer-events: none;
opacity: 1;
color: black;
border: 3px solid black;
}
input[type=checkbox] + label {
line-height: 48px;
margin: 0 15px 0 15px;
}
input[type=checkbox]:hover::after {
content: '';
background: #32cd32;
opacity: .3;
}
input[type=checkbox]:checked::after {
content: '\2713';
background: #32cd32;
}
input[type=checkbox]:checked:hover::after {
opacity: 1;
}
input[type=checkbox],
input[type=checkbox]::after {
width: 48px;
height: 48px;
font-size: 46px;
line-height: 48px;
vertical-align: middle;
border-radius: 50%;
}
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
注:私は、ベンダープレフィックスを除去し、ユーザーが選択簡潔にするためのようなもの。完全なコードはペンの中にあります。
FirefoxでChromeと同じように見えるように変更するにはどうすればよいですか?
が希望:
が望まれていない:私は1つが存在する場合、私はまだ、よりよい解決策を愛したい(可能なようですな限りそれを修正するために管理
純粋なCSSでは不可能です。 url:http://stackoverflow.com/questions/2587669/css-after-pseudo-element-on-input-field –
他のmozillaリンク:http://forums.mozillazine.org/viewtopic.php?f=25&t= 291007 –
申し訳ありませんが、画像を修正しました。だから、後のテキスト*はFirefox上に表示されていますが、ボーダー半径やボックスシャドウは表示されません。私は何とかチェックボックスを隠すことを喜んでしています。私はチェックボックスを隠して、ラベルの ':: after' ::' before'を作ろうとしています。 – FakeRainBrigand