У меня есть div, где я пытаюсь центрировать выравнивание текста и изображения как вертикального, так и горизонтального.
Так что для горизонтальных я дал text-align: center;
для вертикального утра не хватает, потому что размер изображения и фактическое изображение немного отличаются друг от друга, это формат png, чтобы вы могли видеть прозрачность. В изображении есть дополнительное пространство, чтобы оно отображалось сверху.
Как сделать текст и изображение одинаковым, а также выравнивать по центру. Любая идея была бы полезной
Вот css Отредактировано после того, как задан вопрос
.click
{
width:50%;
height:50%;
background-color:red;
text-align:center;
position:absolute;
}
JSfiddle Эффект абсолютной позиции? Потому что в моем локальном я не могу выровнять его, как в скриптовых ответах
Просто обработайте div как ячейку таблицы, установив display: table-cell;
стоимость. Затем вы можете использовать vertical-align: middle;
для выравнивания содержимого.
ОБНОВЛЕНИЕ: для абсолютного позиционирования оберните div в внешний div и примените там положение.
<div class="wrapper">
<div class="click">
Thumbs up <img src="http://i.stack.imgur.com/nC5s4.png">
</div>
</div>
.wrapper {
position: absolute;
top: 100px;
left: 100px;
}
.click
{
width:50%;
height:50px;
background-color:red;
text-align:center;
display: table-cell;
vertical-align: middle;
}
img {
vertical-align: middle;
}
Дайте текст и изображение отдельно вертикально-выровненным: средний стиль
Что-то вроде этого:
<div class="click">
<span class="valign">Thumbs up</span>
<img src="http://i.stack.imgur.com/nC5s4.png" class="valign"/>
</div>
А потом:
.valign {
vertical-align:middle;
}
Тест здесь: JSFiddle
Или альтернативой было бы установить контейнер div
display: table-cell;
vertical-align: middle;
И изображение
vertical-align: middle;
Используйте display:table-cell
для div и vertical-align:middle
для контента. Скрипт здесь: http://jsfiddle.net/xqDu7/10/
.click
{
position:absolute;
left:50%;
top:50%;
width:220px;
height:40px;
background-color:red;
text-align:center;
margin-top: -20px;
margin-left: -110px;
}