2015-05-07 5 views
0

Я, имеющие следующий код:Как горизонтально центрировать <select> элемент

<div> 
    <select>...</select> 
    <p>foo</p> 
</div> 

Что такое чистый способ центрирования моего выпадающего списка <select> но держать <p> выровнен по левому краю?

+0

Вы можете разместить картину того, что вы хотите? –

+0

Другой способ - использовать 'text-align: center' http://jsbin.com/vaqenusaxa/1/edit?html,css,output –

ответ

1

<select> является встроенным элементом уровня, чтобы центрировать его можно установить элемент контейнера для text-align:center.

Применяя правило выше, текст, который внутри <p> также будет центрирован, поскольку он наследует его от родителя, вы можете сбросить его с помощью text-align:left. Сам по себе <p> по-прежнему оставлен на месте, потому что это элемент уровня блока.

select, p { 
 
    border: 1px solid red; 
 
} 
 
div { 
 
    text-align: center; 
 
} 
 
p { 
 
    text-align: left; 
 
}
<div> 
 
    <select>...</select> 
 
    <p>foo</p> 
 
</div>

Или, вы можете изменить <select> от встроенного в блок-го уровня display:block или table и т.д., а затем отцентрировать его margin:auto на себя.

select, p { 
 
    border: 1px solid red; 
 
} 
 
select { 
 
    display: block; 
 
    margin: auto; 
 
}
<div> 
 
    <select>...</select> 
 
    <p>foo</p> 
 
</div>

0

Попробуйте

select{ 
position: relative; 
display: inline-block; 
left: 50%; 
transform: translateX(-50%); 
-webkit-transform: translateX(-50%); 
} 

DEMO HERE

0

Это довольно просто сделать. Сделайте выбор блока отображения и присвойте ему автоматические поля.

Demo

div select { 
    display: block; 
    margin: auto; 
} 
Смежные вопросы