我有一个有趣的问题,我花了一段时间才用 IE9 复制,但它涉及浮点数和内联块元素。由于移动设备中所需的内容流,我正在尝试使用浮动和内联块来获得特定的元素顺序。然而,它们非常奇怪地流动在一起。我会听从小提琴..
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>Float and Inline-Block Lab</title>
<style type="text/css">
.green {
float: left;
width: 60%;
height: 100px;
background-color: #0ABC00;
}
.yellow {
float: right;
height: 50px;
width: 40%;
background-color: #ABC000;
}
.blue {
float: left;
width: 65%;
height: 100px;
background-color: #00ABC0;
}
.red {
display: inline-block;
width: 30%;
height: 80px;
background-color: #AB0000;
}
</style>
</head>
<body>
<div class="green">(A)</div>
<div class="yellow">(B)</div>
<div class="blue">(C)</div>
<div class="red">(D)</div>
</body>
</html>
在 Firefox / Chrome 甚至 IE8(虽然不是 jsfiddle)中它工作正常。红色正好在黄色之下。然而,在 IE9 中,当蓝色将红色推向右侧时,它也会强制其 y 偏移量与绿色一起清除。这是 IE9 中的标准行为还是错误,是否有任何解决方法可以保留 DIV 的顺序?
约翰