CSS中<li>标签横向排列出现间距问题
2017-03-06 20:54
537 查看
HTML代码块:
[objc] view
plain copy
<!-- header -->
<div class="tab-header">
<ul>
<li><a href="#">公告</a></li>
<li><a href="#">规则</a></li>
<li><a href="#">论坛</a></li>
<li><a href="#">安全</a></li>
<li><a href="#">公益</a></li>
</ul>
</div>
CSS代码块:
[objc] view
plain copy
#tabControl .tab-header ul {
background-color: gray;
width: 498px;
height: 30px;
}
#tabControl .tab-header li {
background-color: green;
list-style: none;
display: inline-block;
width: 98px;
height: 30px;
text-align: center;
line-height: 30px;
/*float: left;*/
}
#tabControl .tab-header li a {
text-decoration: none;
display: inline-block;
width: 98px;
height: 36px;
background-color: black;
}
显示效果:
期待效果:
错误原因:
中间出现间距的原因:<li>标签和<li>标签之间有空格引起
修改方式:
方式1:
[objc] view
plain copy
<div class="tab-header">
<ul>
<li><a href="#">公告</a></li><!--
--><li><a href="#">规则</a></li>
<li><a href="#">论坛</a></li>
<li><a href="#">安全</a></li>
<li><a href="#">公益</a></li>
</ul>
</div>
第一个<li>标签和第二个<li>标签直接注释掉或者紧挨着没有空格 结果如下:
方式2:li选择器中加入 float: left; 让li变成浮动,让各个<li>标签紧挨着排列。同时还可以看到 float具有inline元素特性。
方式3:设置ul标签的属性 font-size = 0,再重新设置li标签的 font-size 。
个人建议 方式2是最后考虑的一种方式。
[objc] view
plain copy
<!-- header -->
<div class="tab-header">
<ul>
<li><a href="#">公告</a></li>
<li><a href="#">规则</a></li>
<li><a href="#">论坛</a></li>
<li><a href="#">安全</a></li>
<li><a href="#">公益</a></li>
</ul>
</div>
CSS代码块:
[objc] view
plain copy
#tabControl .tab-header ul {
background-color: gray;
width: 498px;
height: 30px;
}
#tabControl .tab-header li {
background-color: green;
list-style: none;
display: inline-block;
width: 98px;
height: 30px;
text-align: center;
line-height: 30px;
/*float: left;*/
}
#tabControl .tab-header li a {
text-decoration: none;
display: inline-block;
width: 98px;
height: 36px;
background-color: black;
}
显示效果:
期待效果:
错误原因:
中间出现间距的原因:<li>标签和<li>标签之间有空格引起
修改方式:
方式1:
[objc] view
plain copy
<div class="tab-header">
<ul>
<li><a href="#">公告</a></li><!--
--><li><a href="#">规则</a></li>
<li><a href="#">论坛</a></li>
<li><a href="#">安全</a></li>
<li><a href="#">公益</a></li>
</ul>
</div>
第一个<li>标签和第二个<li>标签直接注释掉或者紧挨着没有空格 结果如下:
方式2:li选择器中加入 float: left; 让li变成浮动,让各个<li>标签紧挨着排列。同时还可以看到 float具有inline元素特性。
方式3:设置ul标签的属性 font-size = 0,再重新设置li标签的 font-size 。
个人建议 方式2是最后考虑的一种方式。
相关文章推荐
- CSS中<li>标签横向排列出现间距问题
- HTML中的<UL>标签中li横向排列
- 【CSS.DIV】HTML<li>标签
- HTML中<ul>标签中的<li>横向排列
- 如何在Html的CSS中去除<li>标签前面小黑点
- HTML中的<UL>标签中li横向排列
- css实际技巧---<a>标签中有文字图片ie7下不显示图片的问题
- <li>标签之间有间距的问题
- 使用CSS制作文字环绕图片效果(文字内容包含<li>标签)
- HTML中的<UL>标签中li横向排列
- HTML中的<UL>标签中li横向排列
- <Object>标签在各个浏览器下的兼容问题
- html <img>标签 src=""内的图片路径问题
- ssh错误总结1.1----关与struts2中极为恶心的<s:action>标签问题
- 关于标签<html:link>在URI后面传参数的问题
- PHP无法解析短标签<? ?>的解决方案——不是引号的问题哦
- struts2 标签<s:iterator />获取长度问题
- <%@ page=""......%>标签需要注意的问题
- web.xml中配置<error-page>标签不起作用的问题
- struts2 使用<s>标签注意的问题