0

2 つの要素のボタンがあり、別のボタンをクリックすると 1 つの色を変更したい、またはその逆の場合。試してみましたが、うまくいきません。誰でも私を助けることができますか?HTML:

<button id="t1">Test 1</button>
<button id="t2">Test 2</button>

CSS:

#t1:active + #t2
{
    color: red;
}
#t2:active + #t1
{
    color: red;
}
4

2 に答える 2

2

CSS のみを使用してこれを実現する方法はいくつか考えられますが、完全に「誠実」というわけではありません。

:active最初の方法は、最初のボタンの「偽の」クローンを作成し、2 番目のボタンがdemo: little linkのときにそれを表示することに依存しています。

button2 番目の方法は、の1 つが である場合:active、その背後にある親要素:activeも同様であるという事実に依存しています。このソリューションのデモは次のとおりです: little link

于 2012-09-13T17:12:41.863 に答える
2

兄弟コンビネータは一方向 (前の兄弟から後の兄弟) でのみ機能するため、その逆はありません。#t2つまり、CSS を使用すると、 がクリックされたときだけ変更でき#t1、 がクリックされた#t1ときは変更できません#t2。また、兄弟コンビネータではなく、>子コンビネータです。

両方の方法で同じ動作が必要な場合は、:activeセレクターの代わりに JavaScript の mousedown イベントを使用する必要があります。

于 2012-09-13T16:35:01.740 に答える