I have done this using jQuery, HTML and CSS:
HTML
<div id="overflow">
<div class="container">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
</div>
CSS
#overflow{
border: 1px solid #000;
height: 220px;
width: 220px;
overflow-x: scroll;
overflow-y: hidden;
}
#overflow .container div{
border: 1px solid #CCC;
float: left;
width: 200px;
height: 200px;
}
jQuery
$(function(){
var width = 0;
$('#overflow .container div').each(function() {
width += $(this).outerWidth( true );
});
$('#overflow .container').css('width', width + "px");
alert(width);
});
});
Basically the div can not use a fluid width in CSS as width is applied inherently from the parent div.
Using some jQuery code you can attach the width to the containing div easily.
Here is the fiddle with the final code.
OR
Use a fixed width on the container div i.e. #overflow .container { width : 1880px }
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…