button
クリックで背景色を変更することは可能ですか? document
全体のうち、CSSとHTML5のみを使用していますか?
(例: JavaScriptでは簡単です )
コメントに投稿したフィドルに基づいて、Bootstrap button CSSを使用するように少し修正しました。
BootstrapのCSSファイルを含めるだけで、以下のコードを使用できます。
<label for="check" class="btn btn-default">Toggle background colour</label>
<input type="checkbox" id="check" />
<div></div>
div {
width: 100%;
height: 100%;
background: #5CB85C;
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
label.btn {
position: absolute;
top: 10px;
left: 10px;
z-index: 2;
}
input[type="checkbox"]{
display: none;
}
input[type="checkbox"]:checked + div{
background: #5BC0DE;
}
隣接する兄弟セレクター を使用します。
これが機能しています: http://jsfiddle.net/eYgdm/ (ラベルテキストの選択を防ぐために*-user-select: none;
を追加しましたが、ラベルが機能するために必須ではありません)
Chrome、Firefox [デスクトップおよびモバイル](Gecko)≥1.0、Internet Explorer≥7、Opera≥9およびSafari≥3参照: 属性セレクター および 隣接する兄弟セレクター
あなたはこのようなことをすることができます-隣接するCSSセレクタを使用します:
<button class="btn">button</button>
<div class="content"></div>
btn:active + .content{
background: blue;
}
いいえ、CSSには"クリックしてから何かを行う"という概念はありません。
残念ながら、CSSルールにはバックトラックはありません。 CSSセレクターの場合、要素の祖先を登る方法はありません。
それを行う方法があります:
.cc2:focus {
background-color: #19A3FF;}
:focusは基本的に、クラスcc2の要素をクリックすると、背景が青くなることを意味します。
:targetセレクターを(ab?)使用できます。これはおそらく古いブラウザでは機能しません。リンクをクリックすると背景が切り替わる非常に簡単な例を次に示します。
コンセプトは、ターゲット要素にCSSスタイルを適用することです。以下のコードでは、リンクをクリックすると本文のIDがターゲットになり、body:targetのスタイルが適用されます(背景色が変更されます)。
<html>
<head>
<style>
body { background-color:#333; }
body:target { background-color:#fff; }
</style>
</head>
<body id="myBody">
<a href="#myBody">Click</a>
</body>
</html>