【发布时间】:2010-10-20 09:56:30
【问题描述】:
根据 CSS 2.1 标准,浮动元素的垂直边距不应与任何相邻元素一起折叠。
见: http://www.w3.org/TR/CSS21/box.html#collapsing-margins
但实际上这并不是在除 IE6 之外的所有浏览器(FF、Safari、Opera 和 Chrome)中都会发生的情况(虽然没有尝试使用 IE7 或 IE8)。代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" />
</head>
<body>
<div style="margin-bottom:10px;">HEADER</div>
<div style="float:left;width:100%;margin:10px 0px;">Floating div</div>
<div style="margin-top:10px;">FOOTER</div>
</body>
</html>
添加 clear:both;到页脚 div 没有任何区别。
我不是 CSS 方面的专家,所以如果我的理解有误,请纠正我
编辑:
显然我的问题引起了一些混乱。上面的代码只是为了演示我所指的行为,这不是我试图找到解决方案的真正问题。
【问题讨论】:
标签: css