1

ページの読み込み時に非表示になり、jQuery を介して 100% 幅に伸びる div があります。アニメーションは素晴らしいですが、コンテンツはコンテナー (ストレッチ div 内にある) がフルセット幅に達するまで流動的に調整されます。

以前はコンテンツがシフトせず、コードを何度も編集した後、何がその動作を変更したのかわかりません! コンテンツが移動しないようにするにはどうすればよいですか。サイズ変更 div が移動なしで許可する限り表示しますか? 具体的な問題は次のとおりです。

-#show_contact アンカーは、同じ行に入る余地ができるまで 2 つの姉妹の下にドロップします -#collections div の margin:0 auto は、#show_contact の短い訪問の影響を受けます

ありがとう!

PS-これは以前のように見えたものです/今のようにしたいものです:http://jsfiddle.net/ZP86m/

HTML:

<div id="slider">
    <div id="trigger">
        <img class="arrow_small" src="images/left_small.png" alt="slide menu out" />
    </div>
    <div class="trans" id="overlay"></div>
    <div id="content">
        <div id="main_nav">
            <div id="nav_links">
                <div class="nav_link"><h3><a class="showlink" id="show_campaigns" title="Campaigns">CAMPAIGNS</a></h3></div>
                <div class="nav_link"><h3><a class="showlink" id="show_collections" title="Collections">COLLECTIONS</a></h3></div>
                <div class="nav_link"><h3><a class="showlink" id="show_contact" title="Contact">CONTACT</a></h3></div>
        </div>
            <div id="nav_container">
                <div class="nav" id="campaigns">
                    <p>CAMPAIGNS!</p>
                </div>
                <div class="nav current" id="collections">
                    <p>COLLECTIONS!</p>
                </div>
                <div class="nav" id="contact">
                    <p>CONTACT!</p>
                </div>
            </div>
       </div>
    </div>
</div>

CSS:

    #slider {
    width:100%;
    height:100%;
    top:0;
    right:0;
    float:right;
    position:absolute;
}
#overlay {
    width:100%;
    height:100%;
    position:absolute;
}
#content {
    width:100%;
    height:100%;
    position:relative;
    z-index:1;
}
#main_nav {
    width:684px;
    height:100%;
    margin:0 auto;
    padding:0px 30px 0px 30px;
}
#nav_links {
    width:100%;
    height:40px;
}
.nav_link {
    width:33%;
    float:left;
    margin:20px 0px 0px 0px;
    position:relative;
    text-align:center;
}
.nav{
    width:208px;
    height:100%;
    padding:20px 10px 20px 10px;
    margin:0 auto;
    text-align:center;
}

Javascript:

// Slide out menu
$('#slider')[0].style.width = '30px';
$(function() {
    $('#trigger').toggle(function (){
        $('#slider').animate({'width':'100%'}, 1500);
        $('.arrow_small').attr('src','images/right_small.png');
    }, function() {
        $('#slider').animate({'width':'30px'}, 1500);
        $('.arrow_small').attr('src','images/left_small.png');
    });
});
4

1 に答える 1

0

main_nav のパディングは、スライダーのアニメーションの幅と一致する必要がありました

于 2011-04-29T06:53:48.263 に答える