<br/>清除中的vs <div />

cod*_*ear 23 html xhtml

有什么不同

<br style="clear:both;"/>
Run Code Online (Sandbox Code Playgroud)

VS

<div style="clear:both;"/>
Run Code Online (Sandbox Code Playgroud)

??

还有,我想

<div style="clear:both;"/> 
Run Code Online (Sandbox Code Playgroud)

是一个很好的清算方式,但是

<div style="clear:both;"> </div>
Run Code Online (Sandbox Code Playgroud)

一个正确的方法?

Jas*_*hen 28

不同之处在于您继承的其他样式属性.当然,一个继承自<br>另一个<div>.

<div>除了暗示换行符和一些非零高度(链接到当前字体高度)之外display:block,通常没有特殊的样式含义<br>.

但经常(例如,无处不在的css-reset技术),几乎没有差别.因此,选择具有最大语义意义的那个.

[UPDATE]

要关闭标签,请使用<div></div>和不使用<div/>. 这就是原因.

感谢评论员塞巴斯蒂安·塞利斯(Sebastian Celis)和"结束标签"修正的流行语.

  • 结束标签有所不同.我不建议使用自动关闭div标签.见http://dusan.fora.si/blog/self-closing-tags (3认同)

Guf*_*ffa 10

这是我用于清除的样式:

.Clear { clear: both; height: 0; overflow: hidden; }
Run Code Online (Sandbox Code Playgroud)

用法:

<div class="Clear"></div>
Run Code Online (Sandbox Code Playgroud)

当高度为零时,这不会占用页面中的任何额外空间.

Internet Explorer有一个奇怪的想法,即每个元素的内容必须至少有一个字符高,另一个奇怪的想法是每个元素应该与它的内容一样高.使用overflow: hidden可防止内容影响元素的大小.

  • 为什么选择downvote?如果你不发表评论解释原因,那就没用了. (2认同)