导航栏中的两个项目之间存在小差距。 这是html,css代码:
body{
margin: 0px;
font-family: sans-serif;
}
ul{
padding: 15px 0px;
background: grey;
list-style-type: none;
}
li{
display: inline;
}
a{
border: 1px solid black;
color: white;
text-decoration: none;
padding: 15px 15px;
}
a:hover{
background: grey;
color: black;
}
a:active{
background: white;
}

<ul>
<li><a href="#">Home</a></li>
<li><a href="#">Support</a></li>
<li><a href="#">Contact</a></li>
<li><a href="#">Support</a></li>
</ul>
&#13;
这是输出。
如果我将margin
a
标记设置为-1
,则会缩小差距。
答案 0 :(得分:2)
您可以向display: table;
元素添加<ul>
。这将删除空间。
body{
margin: 0px;
font-family: sans-serif;
}
ul{
display: table;
padding: 15px 0px;
background: grey;
list-style-type: none;
}
li{
display: inline;
}
a{
border: 1px solid black;
color: white;
text-decoration: none;
padding: 15px 15px;
}
a:hover{
background: grey;
color: black;
}
a:active{
background: white;
}
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">Support</a></li>
<li><a href="#">Contact</a></li>
<li><a href="#">Support</a></li>
</ul>
答案 1 :(得分:1)
你可以使用它,间距是display:inline
。有关间距
body {
margin: 0px;
font-family: sans-serif;
}
ul {
padding: 15px 0px;
background: grey;
list-style-type: none;
}
li {
display:inline-block;
}
a {
border: 1px solid black;
color: white;
text-decoration: none;
padding: 15px 15px;
}
a:hover {
background: grey;
color: black;
}
a:active {
background: white;
}
&#13;
<ul>
<li><a href="#">Home</a></li><!--
--><li><a href="#">Support</a></li><!--
--><li><a href="#">Contact</a></li><!--
--><li><a href="#">Support</a></li>
</ul>
&#13;
答案 2 :(得分:1)
如果我理解正确,你必须将每个元素的边距设置为0:
* {
margin: 0;
}
* {
margin: 0;
}
body {
font-family: sans-serif;
}
ul {
padding: 15px 0px;
background: grey;
list-style-type: none;
}
li {
display:inline-block;
}
a {
border: 1px solid black;
color: white;
text-decoration: none;
padding: 15px 15px;
}
a:hover {
background: grey;
color: black;
}
a:active {
background: white;
}
&#13;
<ul>
<li><a href="#">Home</a></li><!--
--><li><a href="#">Support</a></li><!--
--><li><a href="#">Contact</a></li><!--
--><li><a href="#">Support</a></li>
</ul>
&#13;
答案 3 :(得分:1)
我把它添加到你的css:
a {
margin-right: -5px;
}
输出:
答案 4 :(得分:1)
这是因为空白。您可以使用许多技术来解决问题。
删除结束li
标记之间的空格:
<ul>
<li>
<a href="#">Home</a></li><li>
<a href="#">Support</a></li><li>
<a href="#">Contact</a></li>
</ul>
删除结束li
代码:
<ul>
<li><a href="#">Home</a>
<li><a href="#">Support</a>
<li><a href="#">Contact</a>
</ul>
使用注释删除空格:
<ul>
<li><a href="#">Home</a></li><!--
--><li><a href="#">Support</a></li><!--
--><li><a href="#">Contact</a></li>
</ul>
将font-size:0
用于CSS中的ul
元素:
ul { font-size: 0; }
li { font-size: 16px; }
答案 5 :(得分:1)
添加空格以隐藏空格......
body{
margin: 0px;
font-family: sans-serif;
}
ul{
padding: 15px 0px;
background: grey;
list-style-type: none;
}
li{
display: inline;
}
a{
border: 1px solid black;
color: white;
text-decoration: none;
padding: 15px 15px;
}
a:hover{
background: grey;
color: black;
}
a:active{
background: white;
}
/* Add this */
li:after {
content: ' ';
font-size: 0;
}
&#13;
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">Support</a></li>
<li><a href="#">Contact</a></li>
<li><a href="#">Support</a></li>
</ul>
&#13;
答案 6 :(得分:1)
删除空间并重新定义边界定义。
body {
margin: 0px;
font-family: sans-serif;
}
ul {
padding: 15px 0px;
background: grey;
list-style-type: none;
display: inline-block;
}
li {
border-top: 1px solid black;
border-bottom: 1px solid black;
border-right: 1px solid black;
float: left;
padding: 15px;
text-align: center;
min-width: 60px;
}
li:first-child {
border-left: 1px solid black;
}
a {
color: white;
text-decoration: none;
display: inline-block;
}
a:hover {
background: grey;
color: black;
}
a:active {
background: white;
}
&#13;
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">Support</a></li>
<li><a href="#">Contact</a></li>
<li><a href="#">Support</a></li>
</ul>
&#13;