2011-10-27 16 views
5

ベストフィドルを示す:http://jsfiddle.net/Jnttm/CSSで親下の水平サブメニューを中心に

は、どのように私はサブメニューが親メニュー項目の下中央に得ることができますか?子要素が親よりも広いので、私が見つけた中心的なトリックの多くは適用されません。

これは純粋なCSSで可能ですか、またはJavaScriptに頼らなければなりませんか?
JSが必要な場合は誰でもこれを行うのに便利なJQueryコードを持っていますか?

答えて

6

は、あなたがこのようなあなたのsubmenuにデフォルトwidthを定義する必要があることがある:

.sub-menu { 
    display: none; 
    position: absolute; 
    top: 20px; 
    left: 0; 
    white-space: nowrap; 
    text-align:center; 
    left:50%; 
    margin-left:-150px; 
    width:300px; 
} 
.active .sub-menu { 
    display:block; 
} 

チェックこのhttp://jsfiddle.net/sandeep/Jnttm/1/

+1

私与える人downvote私が間違っているところを教えてください – sandeep

+0

誰がdownvotedを確認していませんが、これは私が求めているものです。それはコンテンツよりも広いので、サブメニューに背景があったとしても機能しませんでしたが、私の場合は機能します。 (これで私はそれを実装しましたが、サブ項目の数はきれいには見えませんでしたが、それは疑問ではありませんでした:p) – Davy8

0

これは、サブメニューを中心に説明する: ul > ul.sub-menu { position: absolute; left: 50%; transform: translateX(-50%) }

関連する問題