2016-11-18 30 views

答えて

2

はあなたに感謝します。シンプルなsolution.youは、私はスニペットを入れ

span:active div.parent{background:#eaeaea} 
span:focus div.parent{background:#eaeaea} 

両方のクラスを使用する必要がありますし、あなたの最高のベットはいくつかのハッキングです - そのうちの1つはcheckboxlabelです。

下記を参照のデモ:

div { 
 
    border: 1px solid red; 
 
} 
 
#checkbox, 
 
#checkbox:checked + div { 
 
    display: none; 
 
} 
 
a { 
 
    border: 1px solid; 
 
    margin:5px; 
 
}
<input type="checkbox" id="checkbox" /> 
 
<div> 
 
    <span> 
 
    <a><label for="checkbox">hello</label></a> 
 
    </span> 
 
    <span> 
 
    <a><label for="checkbox">hi</label></a> 
 
    </span> 
 
</div>

+1

それは非常に創造的な/革新的な!! –

+0

'label '以外の要素はどうでしょうか? –

+1

まあ、それはハックだと思います!通常、私たちはJSを使用すべきです... – kukkuz

2

が何をしたいということです純粋なCSSのソリューションを

div { 
 
    border: 1px solid red; 
 
}
<div> 
 
    <span> 
 
    <a>helo</a> 
 
    </span> 
 
    <span> 
 
    <a>hi</a> 
 
    </span> 
 
</div>

を探しています。しかし、これでもマウスボタンが一度表示されると、これが表示されます。

ありますが、それを行うには透明にできる唯一の事はある、しかし、それはまだあるでしょう、そして、あなたはJSせずに完全にこれを達成することはできません。

div { 
 
    border: 1px solid red; 
 
    height: 50px 
 
} 
 
div { 
 
    pointer-events: none; 
 
    opacity:1; 
 
    animation: hide 0.1s linear infinite; 
 
    animation-play-state: paused; 
 
} 
 
div a { 
 
    pointer-events: auto; 
 
} 
 
div:active { 
 
    animation-play-state: running; 
 
} 
 
@keyframes hide { 
 
1%{ 
 
    opacity:0; 
 
    position:absolute; 
 
    } 
 
    100% { 
 
    opacity: 0; 
 
    position:absolute; 
 
    } 
 
}
<div> 
 
    <span> 
 
    <a>helo</a> 
 
    </span> 
 
    <span> 
 
    <a>hi</a> 
 
    </span> 
 
</div> 
 
Some randow text/element

+0

これはよさそうだ...しかし、私は、私はそれを編集したことがマウスイベント – Srisa

+0

にそれを取得したいない、しかし、あなたが取得している手立ていけませんこれはJSなし –

0

はあなたが使用することができます。アクティブ、:フォーカス擬似クラス。

それは何を見てすることはCSSで正確にできません

+0

子要素のクリックで親要素を単純にスタイリングしているようですね。 –

+0

スニペットを追加すると、それは私に役立つでしょう...私は解決策を得ることができませんでした – Srisa

+0

ジョーンズヴィノスジョセフ:何について話している –

関連する問題