Почему vertical-align:text-top; не работает в CSS
Я хочу выровнять текст в верхней части div. Кажется, что vertical-align: text-top;
должен сделать трюк, но он не работает. Другие вещи, которые я сделал, например, помещая divs в столбцы и отображая пунктирную границу (чтобы я мог видеть, где находится верхняя часть div), все работают нормально.
#header_p {
font-family: Arial;
font-size: 32px;
font-weight: bold;
}
#header_selecttxt {
font-family: Arial;
font-size: 12px;
font-weight: bold;
vertical-align: text-top;
}
#header_div_left {
float: left;
width: 50%;
border: dashed;
vertical-align: top;
}
#header_div_right {
margin-left: 50%;
width: 50%;
border: dashed;
}
9 ответов:
вертикального-атрибут align предназначен только для встроенных элементов. Это не будет иметь никакого влияния на элементы уровня блока, как див. Также text-top только перемещает текст в верхнюю часть текущего размера шрифта. Если вы хотите вертикально выровнять встроенный элемент сверху, просто используйте это.
vertical-align: top;
тег абзаца не устарела. Кроме того, атрибут вертикального выравнивания, примененный к элементу span, может отображаться не так, как это предусмотрено в некоторых браузерах mozilla.
vertical-align
предполагается работать только с элементами, которые отображаются какinline
.<span>
по умолчанию отображается как встроенный, но не все элементы. Элемент блока абзаца,<p>
, по умолчанию отображается как блок. Типы отображения таблицы (например,table-cell
) позволит вам также использовать вертикальное выравнивание.некоторые браузеры могут позволить вам использовать
vertical-align
свойство CSS для таких элементов, как блок абзаца, но они не должны. Текст, обозначенный как абзац, должен быть заполненный с содержанием письменного языка или разметкой неверен и должен использовать один из ряда других вариантов вместо этого.Я надеюсь, что это помогает!
что-то вроде
position:relative; top:-5px;
просто на встроенный элемент сам работает на меня. Придется играть с верхней, чтобы получить его по центру вертикально...
вы можете подать заявку
position: relative;
в div, а затемposition: absolute; top: 0;
к абзацу или промежутку внутри него, содержащему текст.
вы можете использовать контекстные селекторы и перемещать их по вертикали. Тогда это будет работать с тегом p. Возьмите этот фрагмент ниже в качестве примера. Любые теги p в вашем классе будут уважать элемент управления вертикальным выравниванием:
#header_selecttxt { font-family: Arial; font-size: 12px; font-weight: bold; } #header_selecttxt p { vertical-align: text-top; }
вы также можете сохранить вертикальное выравнивание в обеих секциях, чтобы другие встроенные элементы использовали это.
все вышеперечисленное не работает для меня, я только что проверил это и его работу:
вертикальное выравнивание: супер;
<div id="lbk_mng_rdooption" style="float: left;"> <span class="bold" style="vertical-align: super;">View:</span> </div>
Я знаю, что заполнение или маржа будет работать, но это последний выбор, который я предпочитаю.