CSS - change the style of another element when a link is hovered?(CSS - 悬停链接时更改另一个元素的样式?)
问题描述
当链接悬停时如何更改另一个元素的样式 - 没有 jQuery/JavaScript?
How can I change the style of another element when a link is hovered - without jQuery/ JavaScript?
ul>li>a:hover main {
opacity: 0.1;
}
main p {
font-size: 200px;
}
<header>
<ul>
<li><a href="#">Hover me</a></li>
</ul>
</header>
<main>
<p>Hello World!</p>
</main>
我想在链接悬停时更改main
中文本的opacity
.
I want to change the opacity
of the text in main
when the link is hovered.
有可能吗?
编辑
我尝试了一个兄弟姐妹:
I tried with a sibling:
a:hover ul {
opacity: 0.5;
}
<header>
<ul>
<li><a href="#">Hover me</a><span></span>
<ul>
<li>Child 1</li>
<li>Child 2</li>
<li>Child 3</li>
</ul>
</li>
</ul>
</header>
但是还是不行……
推荐答案
不能使用 +
或 ~
兄弟选择器,因为 <a>
和 <main>
元素不是同级元素.因此,您可以使用 JavaScript.例如,可以在 fadeTo()
内使用 hover()
方法:
It is not possible to use +
or ~
sibling selectors, becouse <a>
and <main>
elements are not siblings. Thus you could use JavaScript. For example it is possible using by fadeTo()
within hover()
method:
$("a[data-opacity-target]").hover(function() {
var selector = $(this).data("opacity-target");
$(selector).fadeTo(500, 0.1);
}, function() {
var selector = $(this).data("opacity-target");
$(selector).fadeTo(500, 1);
});
main p {
font-size: 200px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<header>
<ul>
<li><a href="#" data-opacity-target="main">Hover me</a></li>
</ul>
</header>
<main>
<p>Hello World!</p>
</main>
在您的 EDIT 部分中,您应该使用 a:hover~ul
选择器而不是 a:hover ul
.
In your EDIT section you should use a:hover~ul
selector instead of a:hover ul
.
这篇关于CSS - 悬停链接时更改另一个元素的样式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:CSS - 悬停链接时更改另一个元素的样式?


基础教程推荐
- 动态更新多个选择框 2022-01-01
- 悬停时滑动输入并停留几秒钟 2022-01-01
- 在 JS 中获取客户端时区(不是 GMT 偏移量) 2022-01-01
- 响应更改 div 大小保持纵横比 2022-01-01
- Karma-Jasmine:如何正确监视 Modal? 2022-01-01
- 当用户滚动离开时如何暂停 youtube 嵌入 2022-01-01
- 在for循环中使用setTimeout 2022-01-01
- 角度Apollo设置WatchQuery结果为可用变量 2022-01-01
- 我什么时候应该在导入时使用方括号 2022-01-01
- 有没有办法使用OpenLayers更改OpenStreetMap中某些要素 2022-09-06