html - 从边缘对 LI 的悬停效果
问题描述
我有以下 HTML 嵌套的 ul li 结构,我想在每个 LI 上实现悬停效果,(类似于当前对具有大写 A 的 li 的悬停效果),它的子 li 也应该从最顶层的父 LI 的开头悬停(下例就像大写阿里悬停效果一样)
ul { list-style: none; padding: 0; margin:0 }
li { margin:0; padding: 0; cursor:pointer}
.container > ul .items {padding-left:1.5rem}
.items:hover {
background:red
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
</head>
<body>
<div class="container">
<ul class="parent" id="Head">
<li class="items"><a><span>A</span></a></li>
<li class="items">
<div class="group"><a><span>B</span></a> </div>
<ul class="group-item">
<li class="items"><a><span>b</span></a></li>
<li class="items"><a><span>b</span></a></li>
</ul>
</li>
<li class="items">
<div class="group"><a><span>C</span></a></div>
<ul class="group-item">
<li class="items"><a><span>c</span></a></li>
<li class="items"><a><span>c</span></a></li>
<li class="items">
<div class="group"> <a><span>c</span></a> </div>
<ul class="group-item">
<li class="items"><a><span>c1</span></a></li>
<li class="items"><a><span>c1</span></a></li>
<li class="items">
<div class="group"> <a><span>c1</span></a> </div>
<ul class="group-item">
<li class="items"><a><span>c2</span></a></li>
<li class="items"><a><span>c2</span></a></li>
<li class="items"><a><span>c2</span></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</div>
</body>
</html>
解决方案
如果您只想突出显示内容,那么您应该只针对您的内容:hover
<a>
在这里,我针对<li>
. 如果您的列表元素中可以有除<a>
-tags 之外的其他元素,那么您也需要定位它们。或者更新 HTML 以始终使用具有特定类的 div 包装内容。
我对您的代码所做的更改是:
li a {display: block}
li a:hover {background-color: red}
请记住,在这里使用类可能会更好,而不是针对站点列表中的每个链接。
ul { list-style: none; padding: 0; margin:0 }
li { margin:0; padding: 0; cursor:pointer}
li a {display: block;}
.container ul a {padding-left:1.5rem}
.container ul ul a {padding-left:3rem}
.container ul ul ul a {padding-left:4.5rem}
.container ul ul ul ul a {padding-left:6rem}
li a:hover {
background:red;
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
</head>
<body>
<div class="container">
<ul class="parent" id="Head">
<li class="items"><a><span>A</span></a></li>
<li class="items">
<div class="group"><a><span>B</span></a> </div>
<ul class="group-item">
<li class="items"><a><span>b</span></a></li>
<li class="items"><a><span>b</span></a></li>
</ul>
</li>
<li class="items">
<div class="group"><a><span>C</span></a></div>
<ul class="group-item">
<li class="items"><a><span>c</span></a></li>
<li class="items"><a><span>c</span></a></li>
<li class="items">
<div class="group"> <a><span>c</span></a> </div>
<ul class="group-item">
<li class="items"><a><span>c1</span></a></li>
<li class="items"><a><span>c1</span></a></li>
<li class="items">
<div class="group"> <a><span>c1</span></a> </div>
<ul class="group-item">
<li class="items"><a><span>c2</span></a></li>
<li class="items"><a><span>c2</span></a></li>
<li class="items"><a><span>c2</span></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</div>
</body>
</html>
推荐阅读
- python - leetcode 2键键盘问题的递归方法
- c# - 图片来源未显示
- jquery - 仅当在 Internet explore 中按下 Enter 键时才停用 onchange 事件
- python - Python Pocketsphinx:使用解码器类时无法识别关键字
- laravel - Laravel Route 说对不起,找不到您要找的页面
- google-cloud-storage - 在 Google 存储桶中上传 InputStream
- python-3.x - 如何从 python 文件传输数据并在不同的 python 文件中使用它?
- php - Laravel 从链接路由中获取 OTP 和电话
- java - Java,具有相对路径的访问目录导致不同环境之间的问题
- vba - 循环浏览大量邮件会冻结 Outlook