の要素に新しい CSS クラスを追加する方法はあります:hover
か?
jQuery と同様ですが、CSS に変換されます。
$(element).addClass('someclass');
短い答えいいえ:)
ただし、次のようにホバーに同じ CSS を使用することもできます。
a:hover, .hoverclass {
background:red;
}
クラスを追加する必要がある理由を説明すれば、より良い解決策があるかもしれません。
誰もがこれに対する jQuery/JS の回答を提供しているので、追加の解決策を提供します。あなたの質問に対する答えはまだいいえですが、LESS (CSS プリプロセッサ) を使用すると、これを簡単に行うことができます。
.first-class {
background-color: yellow;
}
.second-class:hover {
.first-class;
}
簡単に言えば、カーソルを合わせると、.second-class
のすべてのプロパティが表示され.first-class
ます。ホバーするだけで、クラスが永続的に追加されるわけではないことに注意してください。LESS の詳細については、こちらをご覧ください: LESS の使用を開始する
これもSASSの方法です:
.first-class {
background-color: yellow;
}
.second-class {
&:hover {
@extend .first-class;
}
}
CSS には、JavaScript と同じ方法でオブジェクトを変更する機能は実際にはありません。
:hover
は疑似クラスなので、そこに CSS 宣言を入れることができます。
a:hover {
color: #f00;
}
セレクターのリストを使用して、ホバーされた要素または特定のクラスの要素に CSS 宣言を適用することもできます。
.some-class,
a:hover {
color: #f00;
}
なぜ@Marco Berroclは否定的なフィードバックを受け取り、彼の答えは完全に正しいのですか?
だから私は答えではなくホバーすると思うし、彼は多くの場合jqueryまたはjavascriptを使うべきだ
CSS のみを使用する、いいえ。追加するには jQuery を使用する必要があります。