2

overflow:auto; を使用して別の div に div を配置する際に問題があります。最初は、すべての div が margin: 0 auto; で中央に配置されます。しかし、最後のdivのサイズを変更するためにjqueryを使用すると、スクロールバーが表示されますが(予想どおり)、他のdivはその位置を維持します。すべてのdivがスクロールされたdivの中心に自動的に編成されるようにします。

私はlas divのサイズを次のように変更します:

$('#boton').click(function(){
    $('.div2').css({width:'400px'});
});

私はこのフィドルでそれを表示し、ボタンのサイズ変更を押します:

http://jsfiddle.net/odabart/cAyVF/1/

編集:

どのdivのサイズが変更されるかわからないので、自動化のためにcssのみを使用してこれを実現したい、jqueryは例に過ぎない

4

3 に答える 3

1

黄色の div は、親要素の幅 (200px) の中央に配置されています。すべての div を中央に配置するには、別の div を追加し、jQuery を使用してその div のサイズを変更する必要があります。

デモ: http://jsfiddle.net/ahuvY/1/

HTML:

<div style='overflow:auto;width:200px;height:300px'>
    <div class="inner">
        <div class="div1"></div>
        <div class="div1"></div>
        <div class="div1"></div>
        <div class="div1"></div>
        <div class="div1"></div>
        <div class="div1"></div>
        <div class="div1"></div>
        <div class="div2"></div>
    </div>
</div>
<input type='button' id='boton' value="resize"/>

jQuery:

$('#boton').click(function(){
    $('.div2').css({width:'400px'}).parent().css({width:'400px'});
});
于 2013-08-20T22:05:20.243 に答える