html - CSS:向左浮动的列表项之间的空格
问题描述
我是新人,请多多包涵。
我使用 ul 和 li 制作了一个导航菜单:这是我的菜单的 jsfiddle
我的问题是菜单和下拉菜单之间有空格
我很困惑代码的哪一部分在做这件事。我什至在我的 CSS 中添加了清除所有默认边距和填充。我猜它的html?如果是这样,您通常如何删除不需要的间距?
* {
margin: 0;
padding: 0;
}
ul {
list-style: none;
}
ul li {
background-color: black;
border: 1px solid white;
width: 110px;
height: 30px;
line-height: 30px;
text-align: center;
float: left;
}
ul li a {
color: white;
text-decoration: none;
}
ul li a:hover {
background-color: red;
display: block;
}
ul li ul li {
display: none;
}
ul li:hover ul li {
display: block;
}
<link rel="stylesheet" type="text/css" href="style.css">
<ul>
<li><a href="#">Menu 1</a></li>
<li><a href="#">Menu 2</a></li>
<li><a href="#">Menu 3</a>
<ul>
<li><a href="#">submenu 1</a></li>
<li><a href="#">submenu 2</a></li>
<li><a href="#">submenu 3</a></li>
</ul>
</li>
</ul>
解决方案
不是margin
,它来自你的border: 1px solid white;
*{
margin:0;
padding:0;
}
ul{
list-style: none;
}
ul li{
background-color: black;
/* border: 1px solid white; --- Here it is */
width: 110px;
height: 30px;
line-height: 30px;
text-align: center;
float: left;
}
ul li a{
color: white;
text-decoration: none;
}
ul li a:hover{
background-color: red;
display: block;
}
ul li ul li {
display: none;
}
ul li:hover ul li{
display:block;
}
<link rel="stylesheet" type="text/css" href="style.css">
<ul>
<li><a href="#">Menu 1</a></li>
<li><a href="#">Menu 2</a></li>
<li><a href="#">Menu 3</a>
<ul>
<li><a href="#">submenu 1</a></li>
<li><a href="#">submenu 2</a></li>
<li><a href="#">submenu 3</a></li>
</ul>
</li>
</ul>
推荐阅读
- python - 计算系列和准确度之和python
- python - 如何测试给定的矩形是否与排除区域列表相交?
- java - 如何分离dto映射逻辑
- flutter - 当“颤振升级”时,我得到“权限被拒绝”错误
- javascript - Firebase JavaScript 获取 UID 并使用它将信息写入实时数据库
- reactjs - React hooks - 传递道具时,它变得未定义
- python - 等待线程被外部函数阻塞
- react-native - 为什么 FlatList renderItem 道具不起作用
- x86 - 读取寄存器还是从内存中读取更昂贵?
- android - 如何检查Firebase中是否已存在值并在android中获取密钥