html - 如何在悬停时影响div之外的元素
问题描述
我试图让一个子菜单出现在我将要悬停的元素 div 之外。我已经尝试了多种方法来完成这项工作,但到目前为止我还没有运气。出于设计目的,子菜单需要位于链接 div 之外。
让它工作的最佳方法是什么?
.header {
display: flex;
padding: 20px 0;
}
.nav {
max-width: 1100;
width: 100%;
margin: auto;
}
.nav a {
margin: 0 35px 0 0;
color: #333333;
transition: 0.5s ease;
}
#sub-menu {
position: relative;
width: 100%;
background: #333;
height: 150px;
display: none;
margin-top: 20px;
max-width: 100%;
}
.three:hover #sub-menu {
display: block
}
<div class="header">
<div class="nav">
<a class="one" href="#">Home</a>
<a class="two" href="#">About</a>
<a class="three" href="#">Services</a>
<a class="four" href="#">Contact</a>
</div>
<div id="sub-menu"></div>
解决方案
这种行为仅靠css是无法实现的,需要一些JS代码。原因如下:为了缓解这种情况,CSS 提供了 3 个选择器
将样式更改应用于 div 的子级 + 将样式更改应用于父级 div 的直接子级 ~ 将样式更改应用于父级 div 的所有以下子级
但是没有办法使用这些选择器直接修改两个级别的 div(祖父母:P)......所以你可能需要一点 JS 希望我正确回答了这个问题
推荐阅读
- ios - CoreGraphics 之字形和 2 个 CGPoint 之间的哈希线
- elasticsearch - ELK Stack 中的基本身份验证
- reactjs - 如何使用“usestate”正确编写矩阵更新?
- python - CSES 问题集 Missing Number 中的运行时错误
- c# - 如何正确设置 ApplicationUser 和 FriendRequest 实体以允许级联删除
- mysql - Django object.raw('query') 不返回更新的查询集
- azure - Azure 认知搜索,如何配置分析器以支持“startsWith”?
- r - 将组大小添加到汇总表不再有效
- python - 为什么这显示 1 个文件下载但在 LibTorrent 中保存 2 个文件
- loops - 我希望它只循环一次