基本上我有一个UL列表XHTML断行空间的问题
<ul>
<li style="background-image:url(images/thumbs/spaceinvader.jpg);"><a href="#"></a></li>
<li style="background-image:url(images/thumbs/spaceinvader.jpg);"><a href="#"></a></li>
<li style="background-image:url(images/thumbs/spaceinvader.jpg);"><a href="#"></a></li>
<li style="background-image:url(images/thumbs/spaceinvader.jpg);"><a href="#"></a></li>
<li style="background-image:url(images/thumbs/spaceinvader.jpg);"><a href="#"></a></li>
<li style="background-image:url(images/thumbs/spaceinvader.jpg);"><a href="#"></a></li>
<li style="background-image:url(images/thumbs/spaceinvader.jpg);"><a href="#"></a></li>
<li style="background-image:url(images/thumbs/spaceinvader.jpg);"><a href="#"></a></li>
</ul>
现在列表的样式是:
现在li {
display:inline-block;
margin:5px 0 0 8px;
width:73px;
overflow:hidden;
}
li a {
display:block;
background:url(../images/gtborder.png);
width:73px;
height:55px;
}
li:hover {
background-position:0px -55px;
}
好吧,每个列表之间的差距应该是完全8像素,但是当我在浏览器中查看...它的mroe然后8px。它因为换行符。
如果我把所有的li标签放在一行上,那就没问题,但我真的不想那样做。 有没有一种方法可以让我的html保持原样,只需编辑css,让这个空间不再存在?
嗨奥兹,我真的不明白这个问题。实际上每个李之间都有8px。 – 2010-11-18 20:37:38
它的一个浏览器怪癖,基本上把这个lis之间的换行符当作li之间的空格。所以其实际上8px +考虑到字体和字体大小的空间的宽度。但设置字体大小为0不会工作,因为一些浏览器将其保留为1px而不是0 – Ozzy 2010-11-18 20:52:53