javascript - 悬停后创建不透明的超链接,同时为 div 父级设置透明背景
问题描述
我有一个div
导航元素,它在悬停时变得有点透明(请注意,在 div 元素悬停之前,所有超链接都是不透明的)。我想让当前悬停的超链接再次变得不透明,例如本网站的导航部分:https ://www.amandarachlee.com/
我不知道该怎么做。如果您能告诉我应该如何为导航部分赋予这种风格,我将不胜感激。
a:focus,
a:hover {
color: #333300;
}
a {
text-decoration: none;
}
.header-inner {
padding: 20px;
}
#header-nav ul {
list-style-type: none;
}
#header-nav ul li {
display: inline-block;
position: relative;
zoom: 1;
-webkit-backface-visibility: hidden;
vertical-align: middle;
font-size: 20px;
margin: 0 auto !important;
}
#header-nav ul li a {
margin-left: 60px;
transition: .4s all ease-in;
font-weight: bold;
color: #333300;
padding: 0 10px;
}
#header-nav {
width: 50%;
height: 25px;
margin: 0 auto;
transition: .2s ease-out;
}
#header-nav:hover {
opacity: .5;
}
.header-nav-item {
color: #333300;
}
#header-nav:hover>.header-nav-item {
opacity: 1;
}
<div class="container-fluid">
<header class="header header-bottom">
<div class="header-inner">
<nav id="header-nav">
<ul>
<li><a href="#" class="header-nav-item">item1</a></li>
<li><a href="#" class="header-nav-item">item2</a></li>
<li><a href="#" class="header-nav-item">item3</a></li>
<li><a href="#" class="header-nav-item">item4</a></li>
<li><a href="#" class="header-nav-item">item5</a></li>
<li><a href="#" class="header-nav-item">item6</a></li>
</ul>
</nav>
</div>
</header>
</div>
解决方案
只是改变
#header-nav:hover {
opacity: .5;
}
进入
#header-nav:hover li:not(:hover){
opacity: .5;
}
这样,当悬停整个容器时,只有未悬停的项目才会获得 opacity。
请参阅以下代码段:
a:focus, a:hover {
color:#333300;
}
a {
text-decoration: none;
}
.header-inner {
padding: 20px;
}
#header-nav ul {
list-style-type: none;
}
#header-nav ul li {
display: inline-block;
position: relative;
zoom: 1;
-webkit-backface-visibility: hidden;
vertical-align: middle;
font-size: 20px;
margin: 0 auto !important;
}
#header-nav ul li a {
margin-left: 60px;
transition: .4s all ease-in;
font-weight: bold;
color: #333300;
padding: 0 10px;
}
#header-nav {
width: 50%;
height: 25px;
margin: 0 auto;
transition: .2s ease-out;
}
#header-nav:hover li:not(:hover){
opacity: .5;
}
.header-nav-item {
color: #333300;
}
#header-nav:hover > .header-nav-item{
opacity: 1;
}
<div class="container-fluid">
<header class="header header-bottom">
<div class="header-inner">
<nav id="header-nav">
<ul>
<li><a href="#" class="header-nav-item">item1</a></li>
<li><a href="#" class="header-nav-item">item2</a></li>
<li><a href="#" class="header-nav-item">item3</a></li>
<li><a href="#" class="header-nav-item">item4</a></li>
<li><a href="#" class="header-nav-item">item5</a></li>
<li><a href="#" class="header-nav-item">item6</a></li>
</ul>
</nav>
</div>
</header>
</div>
推荐阅读
- java - 如何使用 Jackson 以最简单的形式破坏 JSON
- angular - Angular 将组件从模块传递到 App 模块中的另一个模块
- java - Junit5 测试报告器
- java - 带有配置的资源“attr/strokeWidth”的重复值
- azure - 删除 /var/lib/azsec 下的文件是否安全?Azure 虚拟机
- java - app:compileDebugJavaWithJavac , react-native app 编译失败
- java - java.io.IOException:无法运行程序“curl”CreateProcess error=2,Impossibile trovare il file specificato
- xml - 通过 Grok Exporter 读取 XML 文件
- windows - 有没有办法在 Minikube 目录和本地 Windows 10 目录之间共享 Kubernetes 卷?
- node.js - 节点js获取状态