สิ่งนี้ใช้ได้กับฉันใน IE 7, FF 3.5, Chrome 3b, Safari 4 (Windows)
ยังใช้งานได้ใน IE 6 หากคุณไม่ใส่เครื่องหมาย div ที่ชัดเจนที่ด้านล่าง
แก้ไข : ตามที่ Natalie Downe กล่าวคุณสามารถเพิ่มwidth: 100%;
เข้าไป#container
แทนได้
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<style type="text/css">
#container {
overflow: hidden;
border: 1px solid black;
background-color: red;
}
#left-col {
float: left;
width: 50%;
background-color: white;
}
#right-col {
float: left;
width: 50%;
margin-right: -1px; /* Thank you IE */
}
</style>
</head>
<body>
<div id='container'>
<div id='left-col'>
Test content<br />
longer
</div>
<div id='right-col'>
Test content
</div>
<!--div style='clear: both;'></div-->
</div>
</body>
</html>
ฉันไม่รู้วิธี CSS ในการจัดกึ่งกลางข้อความในแนวตั้งใน div ที่ถูกต้องหาก div ไม่ได้มีความสูงคงที่ หากเป็นเช่นนั้นคุณสามารถตั้งค่าline-height
ให้เป็นค่าเดียวกับความสูง div และวาง div display: inline; line-height: 110%
ที่ภายในมีข้อความของคุณด้วย