2010-02-04 4 views
3

Я настраиваю элемент asp: DropDownList с пользовательским CSS. Я установил высоту и стараюсь, чтобы текст появился в середине элемента, а не внизу. Вертикально-выровненный: средний, похоже, не работает, и если я добавлю дно, чтобы подтолкнуть его снизу, в IE есть уродливый разрыв между стрелкой справа от раскрывающегося списка и границей. Это мой CSS в настоящее время:Выравнивание по вертикали для раскрывающегося списка

.dropdowndiv 
{ 
    font-size:10pt; 
    margin-bottom:2px; 
    height:26px; 
    width:220px; 
    border:1px solid #d5d5d5; 
    text-transform:uppercase; 
    vertical-align:middle; 
} 

ответ

1

Попробуйте это:

.dropdowndiv 
{ 
    font-size:10pt; 
    padding-bottom:4px; 
    height:26px; 
    width:220px; 
    border:1px solid #d5d5d5; 
    text-transform:uppercase; 
    vertical-align:middle; 
} 

Я изменил край дна установки 2px для заполняющего-дна 4px.

UPDATE:

Посмотрел штраф на шахте, но вы можете добавить отступы в любую сторону, чтобы получить его так, как вы хотите.

В противном случае вы можете захотеть взглянуть на отображение тегов - Ли Dumond предложил это на своем блоге в ответ на аналогичную проблему я испытывал в то время:

http://leedumond.com/blog/fixing-asp-net-server-control-rendering-issues-with-tag-mapping/

+2

Это помещает текст в нужное положение, но, как я уже упоминал в первоначальном вопросе, он создает неприглядный разрыв между границей и стрелкой. – alpheus

0

Добавление высоту строки 26px должен выровнять текст по центру.

+1

Спасибо, но у меня прямо сейчас высота: 26px; line-height: 26px; но он по-прежнему выравнивается внизу – alpheus

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