我有这段代码:
nav li{
display: inline-block;
background-color:blue;
width: 70px;
padding: 5px;
}
nav li:first-child, nav li:last-child {
border-radius: 5px;
}
<nav>
<li>Home</li>
<li>Work</li>
<li>Contact</li>
</nav>
我想删除此右边距。 我该怎么做?我试过了:
margin:0
padding:0
它不起作用。
答案 0 :(得分:0)
这是inline-block
s的常见问题,您应该删除元素之间的空白区域。
nav li{
display: inline-block;
background-color:blue;
width: 70px;
padding: 5px;
}
nav li:first-child, nav li:last-child {
border-radius: 5px 0 0 5px;
}
nav li:last-child {
border-radius: 0 5px 5px 0;
}
&#13;
<nav>
<li>Home</li><!--
--><li>Work</li><!--
--><li>Contact</li>
</nav>
&#13;
答案 1 :(得分:0)
请重置父元素font-size: 0
和line-height: 0
然后在子元素上设置必需的font-size
和line-height
像这样
nav li{
display: inline-block;
background-color:blue;
width: 70px;
padding: 5px;
font-size: 14px;
line-height: 20px;
color: #fff;
text-align: center;
}
nav li:first-child {
border-radius: 5px 0 0 5px;
}
nav li:last-child{border-radius: 0 5px 5px 0;}
nav ul{
font-size: 0;
line-height: 0;
}
nav li:hover{
background: #333;
}
<nav>
<ul>
<li>Home</li>
<li>Work</li>
<li>Contact</li>
</ul>
</nav>