<div id="site-nav">
<div id="sn-container">
<span id="login-info">欢迎来到数字阅读 请<a href="#1">登录</a> <a href="#2">免费注册</a></span>
<ul id="sn-menu">
<li><span><a href="#">网站导航</a></span></li>
<li><span><a href="#">友情链接</a></span></li>
</ul>
</div>
</div>
#login-info {
font-size: 12px;
}
#sn-menu {
position: absolute;
display: inline;
margin: auto;
list-style: none;
font-size: 12px;
}
#sn-menu li {
display: inline;
}
代码如上,效果图如上,为什么两个没有对齐?怎么会多出一点边距来?
我试着运行了下,没有出现你的问题。估计是ul标签继承的样式的在作怪,你再仔细检查检查
两个span
会产生间距,比较经典的css样式问题。解决该问题有很多种方法,不一一赘述。
去除inline-block元素间间距的N种方法
你有重置ul等样式嘛?
用审查器可以看到边距在哪里,不过其实右边那两个连接再放在ul li内其实没有必要,seo来说多了2层嵌套,直接用a标签就好了...
小伙子,span是行内元素,ul是块元素…这是根本原因……设置ul的display值就好。
span是行内, ul是块级,首先知道这一点。然后,你将单独的一个span和嵌套在ul li中的span放在一个盒子里,并选择横向排列,(说实话这样的第一个span和后面继承ul li的span肯定会有不同,至于具体的只有看实际情况),像你这个,我的理解是一个条跟一个盒子横向摆在一起,所以,你可以把盒子的“高度”增加或者把盒子定位,也可以直接把,前面的span放在盒子(ul li)里。个人比较倾向后者,另外这里的盒子其实是块的概念,解释的复杂了,希望对你有帮助…