为什么ul li之间存在差距

时间:2016-06-20 10:55:42

标签: html css

在下面的代码中,我无法理解为什么绿色家居,产品,服务,关于我们,联系

之间的差距很小

我已在.ul.li属性中将边距和填充设置为0px。那为什么绿色李之间有差距?

*{
    box-sizing:border-box;
}


html,body {
	margin: 0px;
	height: 100%;
	width: 100%;
	left: 0px;
	top: 0px;
	background-color: rgba(173,192,241,1);
    }

.wrapper {
	height: 725px;
	max-width: 960px;
	margin-left: auto;
	left: 0px;
	top: 0px;
	/* [disabled]background-color: rgba(15,26,155,1); */
	margin-right: auto;
	position: relative;
}



.topimage {
	width: 100%;
	max-width: 960px;
	height: 100%;
	max-height: 175px;
	/* [disabled]background-color: rgba(0,102,204,1); */
	position: absolute;
	/* [disabled]border: thin solid rgba(255,0,0,1); */
}

.topimage img{
	max-width: 100%;
	max-height: 100%;
	/* [disabled]margin-bottom: -9px; */
	display: block;
	margin-right: auto;
	margin-left: auto;
	border-radius: 15px 15px 0px 0px;
}

.menu {
	background-color: rgba(15,26,155,1);
	height: 100%;
	max-height: 50px;
	max-width: 960px;
	position: relative;
	top: 175px;
}
.list {
	color: rgba(0,0,0,1);
	text-decoration: none;
	margin-right: auto;
	margin-left: auto;
	background-color: rgba(255,0,0,1);
	padding: 0px;
}

.list li {
	display: inline-block;
	margin-right: 0px;
	margin-left: 0px;
	width: auto;
	text-align: center;
	background-color: rgba(204,255,0,1);
	position: relative;
	padding: 0px;
}

.content {
	width: 100%;
	height: 500px;
	background-color: rgba(20,35,214,1);
	position: relative;
	top: 175px;
	padding-right: 0.5%;
	padding-left: 0.5%;
}

.leftcontent {
	background-color: rgba(210,238,252,1);
	float: left;
	height: 100%;
	max-height: 500px;
	width: 100%;
	max-width: 85%;
	top: 0px;
	position: relative;
	border-left-color: rgba(205,205,205,1);
	/* [disabled]margin-left: 0.3%; */
}

.rightcontent {
	background-color: rgba(51,177,236,1);
	float: right;
	height: 100%;
	max-height: 500px;
	width: 100%;
	max-width: 15%;
	position: relative;
	top: 0px;
	/* [disabled]margin-right: 0.3%; */
}

.footer {
	
}
<div class="wrapper">
<div class="topimage">

</div>
<div class="menu">
<ul class="list">
<li>Home</li>
<li>Products</li>
<li>Services</li>
<li>About Us</li>
<li>Contact</li>
</ul>
</div>

<div class="content">
<div class="leftcontent">
</div>
<div class="rightcontent">
</div>
</div>

</div>

4 个答案:

答案 0 :(得分:0)

如果列表元素之间没有新行,则它可以正常工作。因此,您可以将所有内容放在一行(请参阅代码段)或将font-size: 0;添加到<ul>

ul {font-size:0;}

&#13;
&#13;
*{
    box-sizing:border-box;
}


html,body {
	margin: 0px;
	height: 100%;
	width: 100%;
	left: 0px;
	top: 0px;
	background-color: rgba(173,192,241,1);
    }

.wrapper {
	height: 725px;
	max-width: 960px;
	margin-left: auto;
	left: 0px;
	top: 0px;
	/* [disabled]background-color: rgba(15,26,155,1); */
	margin-right: auto;
	position: relative;
}



.topimage {
	width: 100%;
	max-width: 960px;
	height: 100%;
	max-height: 175px;
	/* [disabled]background-color: rgba(0,102,204,1); */
	position: absolute;
	/* [disabled]border: thin solid rgba(255,0,0,1); */
}

.topimage img{
	max-width: 100%;
	max-height: 100%;
	/* [disabled]margin-bottom: -9px; */
	display: block;
	margin-right: auto;
	margin-left: auto;
	border-radius: 15px 15px 0px 0px;
}

.menu {
	background-color: rgba(15,26,155,1);
	height: 100%;
	max-height: 50px;
	max-width: 960px;
	position: relative;
	top: 175px;
}
.list {
	color: rgba(0,0,0,1);
	text-decoration: none;
	margin-right: auto;
	margin-left: auto;
	background-color: rgba(255,0,0,1);
	padding: 0px;
}

.list li {
	display: inline-block;
	margin-right: 0px;
	margin-left: 0px;
	width: auto;
	text-align: center;
	background-color: rgba(204,255,0,1);
	position: relative;
	padding: 0px;
}

.content {
	width: 100%;
	height: 500px;
	background-color: rgba(20,35,214,1);
	position: relative;
	top: 175px;
	padding-right: 0.5%;
	padding-left: 0.5%;
}

.leftcontent {
	background-color: rgba(210,238,252,1);
	float: left;
	height: 100%;
	max-height: 500px;
	width: 100%;
	max-width: 85%;
	top: 0px;
	position: relative;
	border-left-color: rgba(205,205,205,1);
	/* [disabled]margin-left: 0.3%; */
}

.rightcontent {
	background-color: rgba(51,177,236,1);
	float: right;
	height: 100%;
	max-height: 500px;
	width: 100%;
	max-width: 15%;
	position: relative;
	top: 0px;
	/* [disabled]margin-right: 0.3%; */
}

.footer {
	
}
&#13;
<div class="wrapper">
<div class="topimage">

</div>
<div class="menu">
<ul class="list">
<li>Home</li><li>Products</li><li>Services</li><li>About Us</li><li>Contact</li>
</ul>
</div>

<div class="content">
<div class="leftcontent">
</div>
<div class="rightcontent">
</div>
</div>

</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您可以删除inline-block元素创建的空间,如下所示。 或者,您可以使用float代替inline-block

.list {
  letter-spacing: -4px;
  font-size: 0;
}

.list li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: 0;
  font-size: 14px;
}

或者您可以使用float

.list {
  overflow: hidden;
}

.list li {
  float: left;
}

答案 2 :(得分:0)

试试这个 -

.list li {
    float: left;
    list-style: none;
    width: auto;
    text-align: center;
    background-color: rgba(204,255,0,1);
    position: relative;
}

将上述css替换为您现有的.list li

答案 3 :(得分:0)

只需将其添加到您的代码中

即可
.list{
font-size:0;
}
.list li{
font-size:20px;
padding:0px 0px 0px 10px;
}