li与span的搭配使用所产的浏览器兼容性问题
1.ls两位,设定了width还是没用。
2.总结了一下就是,里面的标签漂浮以后,就不能撑起外层的容器了。
3.li要设至少一个宽度或高度,还要加上overflow:hidden,这样里面的元素就不会跑外面去了
span本身虽然是内敛元素但是加上浮动以后,就变成了块级元素。所以才会自动换行,浮动元素的顶端,不能高于先于它出现的浮动元素或段落顶端
我们常常在做网站的时候会div,li,span中加入span右对齐,例如:文章列表中在我们会加入时间让它右对齐,以增加网页的可读性,如下代码:
html如下:
- span右对齐,换行显示的解决方法2010-8-26
css:.news ul li span{float:right;}
不过问题又来了,往往我们在一个块中加入span时就会发现在网页中预览时span换行右对齐了,那么这是为什么呢?
原来是因为:当非float元素和float元素在一起的时候,假如非float元素在前,那么float元素将被排拆,所以,即使span是float:right,但文本显示是float:none,所以span将被排斥。
不换行的解决方法:
一、把span先于文本显示
<<ul class="news">
<<li>2010-8-26span右对齐,换行显示的解决方法>
l>
二、让文本float:left
- <<ul class="news">
<<li>span右对齐,换行显示的解决方法2010-8-26 - >
l>
<.fl {float:left;}>
<.fr{float:right;}>
第二种方法没有第一种方法简单,为了网页代码的简洁性,建议采用第一种方法。