打印

[教程] br玩转清除浮动

先看一下br怎么玩转“清除浮动”了。使用以下代码
复制内容到剪贴板
代码:
<br clear="all" />
以下是代码效果演示

 提示:您可以先修改部分代码再运行
很简单很方便吧?不过还有一个缺点,占了一行的空间。怎么将br设置成不占行空间呢?
br目前所知可用的css样式,影响br的外观表现
复制内容到剪贴板
代码:

display:none;
line-height:0;
如果设置height width visiblility border background ==这些影响外观的样式都无作用
仅仅可以设置行高为0,跟不换行了。
不得不承认display:none;这个很鸡肋。

在此总结一下html中的br标签 有5种属性依次为"class", "clear", "id", "style", "title" 使用DW8的时候代码提示可以看得到了。差不多都支持这些属性吧,除了某些浏览器不支持title。 修正后的br清除浮动代码只需两行即可
复制内容到剪贴板
代码:
<style>   br{   line-height:0;   }   </style>
<br clear="all" />
注意:使用br的方法清楚浮动的缺陷是,不能帮助我们通过strict.dtd验证,可以通过xhtml1-transitional.dtd验证了。通不过strict验证的原因是html标签属性尽量少用,因为表现要与结构内容分离开来了。


然后对比一下网上的div万能清除浮动了
复制内容到剪贴板
代码:
*
{
    margin:0;
    padding:0;
}
html,body
{
    height:100%;
    width:100%;
}
.clearBoth:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearBoth {
    height:0;
    width:0;
    line-height:0;
    display: inline-block;
    overflow:hidden;
}
* html .clearBoth {height: 0%;}
这种方法很多浏览器都支持。但是可以帮助我们通过strict.dtd验证,呵呵。
<div style="clear:both"></div>  本来最简单了,但是占用高宽。after伪类使用的非常好,可是非标准兼容的不买账了。

两种方法的比较
使用<br clear="all" /> 与 <div style="clear:both"></div>方法相比代码少很多而且语义也很强, 入门使用这个简单不过了。怎么简单怎么玩。


清楚浮动有什么好处? 撑高父容器了height:auto;  让布局更好看点。
其实浮动也没什么不好的了,关键是浮动被滥用了就得请clear:both出来了。

转载请注明出处, 谢谢合作! 原文地址:http://www.10kuai.cn/br.html

[ 本帖最后由 hero4u 于 2007-3-31 16:26 编辑 ]
本帖最近评分记录
  • snwebsite 威望 +1 谢谢! 鼓励下.^_^ 2007-3-31 22:56
体验游戏 game4power
不错,我以前都一直是添加一个空的DIV进行清除浮动的。
心在那里...
<br clear="left" />
<br clear="right" />
到现在才知道这样也可以清除浮动。。。。

TOP

还在为头像烦恼?还在为不能关注好友动态烦忧?快来蓝色理想家园吧!
不错不错
这种方法见过,感觉不错
谢谢LX分享
忍受。一定要学会忍受。

TOP

到现在为止我都还不太明白清除浮动是什么意思...
CSS学得太糟糕了...
書閱三經 人做自己 自得自樂 我就是我
支持正體字 只因有心

TOP

对付FF等,灵活使用display:table最省心~~

对于IE,必要的时候可以加overflow:auto,一个hack都用不着。
竹与笛:http://www.dizyh.cn

TOP

恩,运用元素的自身属性.但这样又将表现加到结构之上了,所以需要时还是推荐

br {
clear:
}

<br/>
LOST - FRINGE

TOP

呵呵,重写br标签还是有很多不便之处了。 临时兑付一下清楚浮动还可以
体验游戏 game4power

TOP

是的,8楼说的对,现在讲究的就是样式与结构分离
忍受。一定要学会忍受。

TOP

<br clear="all" />无法通过严格声明的验证,而且对于br这个元素在xhtml2中基本会被去除。所以在现在的布局中还是尽量少用或者不用!
个人Blog:PlanABC   团队Blog:淘宝UED  专注Web前端技术!

TOP

其实  br  确实是很方便  但是正如#11楼所说的  br的未来也不是很乐观  而且还会占据移行的空间  所以我还是建议使用   <div stylt="clear:both;"></div>

TOP

不喜欢用br,有洁癖。
在父元素上加clearfix,清除容器内的浮动。
复制内容到剪贴板
代码:
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
* html>body .clearfix { display: inline-block; width: 100%; }
* html .clearfix { height: 1%; /* End hide from IE-mac */ }
/* ie7 hack*/
*+html .clearfix { min-height: 1%; }
[ 本帖最后由 firepage 于 2007-7-16 16:53 编辑 ]

TOP

都说是玩转,自然是旁门左道啦
很多时候写测试page的时候可以兑付一下,又不是长久之计,仅作为演示之用了
体验游戏 game4power

TOP

反对,反对,严重反对!
虽然你这样做可以节省一半标签,但你有没有想过去掉CSS以后的效果,谁会愿意看你那么多无意义的线?
xhtml是语意化语言,你那样做毫无语意化,节省一个标签才几字节而已,现在网速不会慢到几字节/秒吧?
没有必要那样做,干吗那么懒呢?呵呵。
纯束个人观点,仅供参考!
我讨厌div+css    WEB民工群: 19746324

TOP

LS反对谁?

TOP