解决在DIV+Css页面中的right浮动移位或显示错误的问题

大家在做新闻列表显示时,通常会在标题后面增加一个右边对齐的日期文本来显示
这个使用表格做页面设计时候是很简单的,但是如果是DIV方式来实现的话,会有点
麻烦,需要做两层嵌套的来实现,而且代码控制也不易于实现,当然如果你对浏览
器显示效果要求不高的话,可以用li+一个rightfloat的层来实现,但是这种方式在
IE6,IE7下面就会有向下移位的问题,IE8下却没有,这个跟IE8的绘制算法有关,
有疑问的朋友可以与CG探讨.

解决办法:
将你需要浮动的层写在父容器的最前面,比如你需要在LI元素中有一个A用于右对
齐,下面是三种参考代码,但是只有最后一种可以兼容IE6,IE7,其余都会显示错误。

<li>这里浮动错误<a>2001-10-01</a></li>
<li>这里没有浮动<a>2001-10-02</a></li>
<li><a>2001-10-03</a>这里浮动正确</li>

下面是测试代码
CSS部分

<!-- 
.right{ float:right; } 
li{ border:1px solid #F0F; margin:5px; } 
a{ border:1px solid #FF0; } 
-->

HTML部分

<div id="wrap">
<ul>
	<li>这里浮动错误<a class="right">2001-10-01</a></li>
	<li>这里没有浮动<a>2001-10-02</a></li>
	<li><a class="right">2001-10-03</a>这里浮动正确</li>
</ul>
</div>

下面是演示效果:

Leave a comment

Your comment