IE6下div#center和div#right錯位成兩行了,其他Firefox等沒有問題。
奇怪的是,div#center width 設置成700就可以了。
請問這是怎么回事,謝謝!
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
"http://www.w3.org/TR/REC-html40/strict.dtd">
<html>
<head>
<title>Chapter 3 Project</title>
<style type="text/css">
#main{
border: 1px solid black;
width: 950px;
margin: 0; padding: 0;
}
#center{
border: 1px solid red;
width: 710px;
margin: 0; padding: 0;
margin-right: 240px;
}
#right{
border: 1px solid blue;
float: right;
width: 50px;
margin: 0; padding: 0;
}
</style>
</head>
<body>
<div id="main">
<div id="right">
<p>right</p>
</div>
<div id="center">
<p>center</p>
</div>
</div>
</body>
</html>
5 个解决方案
width 710 加上margin-right 240 再加上border已經超過950了
再加上IE6下面會有幾個像素的差距,你寬度設成704就好了,
或者你直接把center的margin-right給去掉,在你這種情況下設了寬度就沒必要margin-right了
原因:ie6下 有個布局的概念 ,你這個問題是 ie6bug,你給right添加了 float屬性,那么這個div就有布局了,他呈現的是個塊,會阻止其他的元素浮動在他的周圍。在firefox瀏覽器下 ,就沒有這個影響,因為浮動的元素是脫離了文檔流,不再占居原來的空間了,所以不妨礙center的位置。