日期:2014-05-17  浏览次数:20877 次

为什么后面那个div覆盖前面div 如果后面也加float:left 就不覆盖了
<!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>
<style type="text/css">
#divmain{
margin:0 auto;
width:470px;
}
    #div1{
float:left;
width:100px;
height:100px;
background:#006;
}
 #div2{

width:100px;
height:100px;
background:#CCC;

}
        </style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<div id="divmain">
<div id="div1">10</div>
<div id="div2">20</div>
</div>

</body>
</html>
float:left; HTML css div

------解决方案--------------------
以后代码要用代码框编辑,要不然这样人家看也不方便。
------解决方案--------------------

<!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>
<style type="text/css">
#divmain{

margin:0 auto;
width:470px;
background:#999;
}
    #div1{
float:left;
margin:0 auto 0 20px;
width:100px;
height:100px;
background:#fff;
/* z-index=-1;*/
}
 #div2{

width:100px;
height:100px;
background:#CCC;

}
        </style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<div id="divmain">
52345623546
<div id="div1">10</div>
<div id="div2">20345345</div>
</div>

</body>
</html>

这样子看起来比较明显,因为float之后div1脱离正常流,所以浮动在其他div之上。如果你把div2也变成float那么,div1,div2就变成同样的了,div2就浮动在div1之后,详情请参见css权威指南关于float的说明。
------解决方案--------------------
引用:

<!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>
<style type="text/css">
#divmain{

margin:0 auto;
width:470px;
background:#999;
}
    #div1{
float:left;
margin:0 auto 0 20px;
width:100px;
height:100px;
background:#fff;
/* z-index=-1;*/
}
 #div2{