我想要一个带有两个右对齐列的布局.所以,我创建了三个div(两列和一个包装器):
<div id="wrapper">
<div id="left">
First column
</div>
<div id="right">
Second column
</div>
</div>
我向左浮动div div,向右浮动div,并为所有三个div设置正确的宽度:
#wrapper{
width:30em;
}
#left{
float:left;
width:10em;
}
#right{
float:right;
width:20em;
}
这一切看起来都像预期……
Without floating the div http://img690.imageshack.us/img690/5844/rightrightalign.png
..然后我将包装器div浮动到右侧,如果需要,WebKit和Firefox都不会显示水平滚动条:
Without the right align http://img690.imageshack.us/img690/8559/withoutrightalign.png
如果我使用position:absolute,会发生同样的情况;右:0
完整示例HTML文档:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html><head>
<style type="text/css" media="screen">
#wrapper{
width:30em;
float:right; /* The problem line */}
#left{
float:left;
width:10em;
background: green;}
#right{
float:right;
width:20em;
background: red;}
</style>
</head>
<body>
<div id="wrapper">
<div id="left">Left</div>
<div id="right">Right</div>
</div>
</body>
</html>
有没有办法在不丢失水平滚动条的情况下获得右对齐的双列布局?
最佳答案 你不想要花车.这是你要找的东西:
#wrapper{
width:30em;
margin-right: 2px;
margin-left: auto;
}
#left{
float:left;
width:10em;
background: green;
}
#right{
float:right;
width:20em;
background: red;
}