2012-01-03 16 views
4
<ul> 
    <li class="more">aaa</li> 
    <li class="moretwo">aaa</li> 
    <li class="more">aaa</li> 
</ul> 

.more { 
    background-color: red; 
    height: 50px; 
    vertical-align:middle; 
} 

.moretwo { 
    background-color: green; 
    height: 50px; 
    vertical-align:sub; 
} 

この例では、垂直配置が機能しないのはなぜですか? できますか?はいの場合、どうすればいいですか?UL LIの垂直整列?

LIVE例:あなたとhttp://jsfiddle.net/gQM68/vertical-align propertyのみインラインレベルとtable-cell要素に適用

+0

最も簡単な方法は次のとおりです。

  • AAA
  • erenon

    答えて

    8

    vertical-alignを使用することができます線の高さを基準にして、線の高さを上げてから垂直線を適用するかのいずれかを選択します。

    または

    パディングトップ

    を使用して、あなたが参考のために、このリンクをチェックすることができますが

    http://jsfiddle.net/gQM68/2/

    または

    http://www.w3schools.com/cssref/pr_pos_vertical-align.asp

    +0

    除いて私のために私を動作しますが、このdoesntのは:(編集のための –

    +0

    おかげで作業し、今良いです:) –

    0

    答えます。この制限を回避するには、li要素内のspan要素を使用し、をspanに設定します。

    <li><span class="more">aaa</span></li> 
    
    +0

    これもうまくいきません:http://jsfiddle.net/gQM68/ –

    0

    あなたはspanでテキストを囲む、それが動作するはずの下のようなそのスタイルを設定した場合:

    <ul> 
        <li class="more"><span>aaa</span></li> 
        ... 
    </ul> 
    
    li span { 
        display: inline-block; 
        vertical-align: middle; 
    } 
    
    .more { 
        ... 
    } 
    
    .moretwo { 
        ... 
    } 
    
    +0

    ありがとうございますが、これは動作しません:http://jsfiddle.net/gQM68/ –

    +0

    私のための作品(FF3)。どのブラウザを使用していますか? –

    +0

    私は今FF 5.0を持っています –

    5

    テキストを合わせているdisplay:table-cell

    .more { 
        background-color: red; 
        height: 50px; 
        display:table-cell; 
        vertical-align:middle; 
    } 
    
    .moretwo { 
        background-color: green; 
        height: 50px; 
        display:table-cell; 
        vertical-align:sub; 
    } 
    
    +0

    有用なリンク:http://phrogz.net/css/vertical-align/index.html – diEcho

    +0

    ありがとう、なぜ今isntリストですか? http://jsfiddle.net/gQM68/1/ –

    +0

    この記事を読む必要がありますhttps://developer.mozilla.org/en/CSS/vertical-align#Values_(for_inline_elements) – diEcho