目标是将两个div对齐。
HTML:
<div class="test1>Text 1</div>
<div class="test2>Text 2</div>
CSS:
.test1 {
float: left;
}
.test2 {
float: left;
}
只要浏览器窗口宽于两个div,它就可以正常工作。浏览器窗口宽度不能再容纳两个div的时刻,test2被推到test1下面。
如何防止这种行为?所以它们总是彼此相邻(如果它们的总宽度大于浏览器宽度,则显示一个水平滚动条?)。
答案 0 :(得分:3)
将它们包含在包含div中,并将包含div的内容赋予固定宽度(以像素为单位)。浏览器窗口小于该宽度后,将显示滚动条。
答案 1 :(得分:1)
你应该包装那些 divs ,并将wrap width
设置为等于所有孩子width
的总和:
请参阅此Fiddle Example!
<强> HTML 强>
<body>
<div id="wrap" class="clearfix">
<div class="test1 floatL">Div 01</div>
<div class="test2 floatL">Div 02</div>
</div>
</body>
<强> CSS 强>
body {
width: 100%;
height: 100%;
margin: 0;
padding: 0;
}
.floatL {
float: left;
}
.test1 {
width: 500px;
height: 50px;
background-color: #D9D9D9;
}
.test2 {
width: 700px;
height: 30px;
background-color: #CCC;
}
/* helpers */
.clearfix:before,
.clearfix:after {
content: '\0020';
display: block;
overflow: hidden;
visibility: hidden;
width: 0;
height: 0;
}
.clearfix:after {
clear: both;
}
.clearfix {
zoom: 1;
}
<强> JQUERY 强>
$(function() {
var sum=0;
$('#wrap > div').each( function(){ sum += $(this).width(); });
$('#wrap').width( sum );
});
这样做的目的是收集#wrap
的每个第一个孩子的内容,并将它们加在一起,将其设置为#wrap
的宽度。
答案 2 :(得分:0)
你可以做的是创建一个表并将div放在其中。 这样它就不会溢出到下一行。