2013-12-02 3 views
2

Следующие вертикально центрирует внутренний DIVКнопка вертикально центров содержания, но ДИВ не

HTML

<button class="outer"> 
    <div class="inner"> 
     Hello<br>World 
    </div> 
</button> 

CSS

.outer { 
    position: absolute; 
    top: 25%; 
    left: 25%; 
    bottom: 25%; 
    right: 25%; 
    padding: 0; 
    background: none; 
    border: none; 
    outline: dashed 1px black; 
    font-family: sans-serif; 
    font-size: 16px; 
    text-align: center; 
} 

.inner { 
    background: #ccc; 
} 

JSFiddle

button

Но если я использую div вместо button для внешнего элемента,

div

По семантическим причинам, я хочу div не button.

Какие стили CSS необходимо добавить к классу .outer для создания такого же стиля вертикального выравнивания, что и у кнопки?

Мне нужно это для работы в Chrome и FF.

+0

Я хотел бы видеть, что вы сделали, если вы не возражаете, в скрипку может быть – Ani

ответ

0

Это то, что вам нужно: Ссылка: http://jsfiddle.net/WP8um/2/

ИЛИ Если вы не хотите наценку на внешнем DIV вы можете использовать сверху, слева, снизу, справа свойства. http://jsfiddle.net/WP8um/3/

CSS

.outer { 
display: inline; 
margin:25%; 
background: none; 
outline: dashed 1px black; 
border: none; 
padding: 0; 
width: 200px; 
height:200px; 
} 


.inner { 
background: #ccc; 
text-align:center; 
margin: 50% 0; 
} 
+0

размер внешнего элемента является фиксированным на 200px по 200px. В моем примере размер внешнего элемента основан на размере его родителя. –

+0

Вы можете использовать процент, основанный на размере родителя. Каков размер родителя? – Ani

+0

В этом случае родителем является 'body'. Сравните JSFiddle с моим, и вы увидите, что размеры отличаются (в зависимости от размера окна). –

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