当我将鼠标悬停在一个链接上时,我想更改三个链接的颜色。
预先感谢
答案 0 :(得分:2)
1&2:不,您目前无法以我所知道的任何方式在纯HTML和CSS中执行此操作。将来,您也许可以使用:has
选择器。请参见以下代码片段,以快速演示如何实现:
p > a {
color: blue;
}
p:has(a:hover) a {
color: red;
}
<p>This is a paragraph the contains some blue <a>links</a>. There are a few different <a>links</a> in here. You can hover over any of the <a>links</a>, and in a browser which supported the :has CSS selector, all of the <a>links</a> would have the hover styles applied to them and turn red.</p>
请注意,:has
查询选择器目前处于试验阶段,截至本文撰写之时,支持仅限于使用“与document.querySelector()
之类的功能”,并且“不能在样式表中使用”(请参见{ {3}},以获取更多信息。 (因此,很明显,上面的代码段在浏览器支持:has选择器之前不起作用,我只是将其包含在内,以演示:has选择器如何解决该用例。)
3:第三个问题还不够清楚,我无法回答。
答案 1 :(得分:0)
1)您可以在CSS中使用hover
伪选择器来实现此效果。 2)将悬停选择器放在子链接的父链接上。 3)您可以将a
替换为.link
类,但这取决于您。
.links a {
color: #333;
}
.links:hover a {
color: #ff0000;
}
<div class="links">
<a href="#">link 1</a>
<a href="#">link 2</a>
<a href="#">link 3</a>
</div>