2012-01-03 4 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?

живой пример:http://jsfiddle.net/gQM68/ с вашими ответы

+0

Самый простой способ:

  • ааа
  • erenon

    ответ

    8

    текст в соответствие с относительно его высоты линии, чтобы либо вы увеличивали высоту линии, а затем применяли вертикальное выравнивание.

    или

    используя обивка-топ

    вы можете проверить эту ссылку для справки

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

    или

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

    +0

    Я знаю это, но это не работает :( –

    +0

    спасибо за редактирование, теперь хорошо :) –

    0

    vertical-align property относится только к инлайн-уровня и table-cell элементы. Вы можете обойти это ограничение с помощью элемента span внутри элемента li и установки vertical-align на 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

    вы можете использовать vertical-align с 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

    спасибо, но почему сейчас нет списка? http://jsfiddle.net/gQM68/1/ –

    +0

    должен прочитать это https://developer.mozilla.org/en/CSS/vertical-align#Values_(for_inline_elements) – diEcho

    Смежные вопросы