Задать вопрос

Как выровнять изображение в блоке по центру?

Здравствуйте.Есть блок 160*160, в котором находится широкоформатное изображение 160*250.
<div id="minibox">
		<img src="img/1.jpg" class="box">
	</div>


.box {
	height:100%;
}

#minibox {
	overflow:hidden;
	width:160px;
	height:160px;
}


Это изображение выравнивается по левой стороне minibox, и скрываются оставшиеся 90px. Мне нужно, чтобы изображение выравнивалось по центру т.е. слева и справа пряталось по 45px, и в блоке я видел центр изображения. Я не знаю что делать... Подскажите, как быть?

P.S. параметры изображения (160*250) я дал для примера. На деле, у меня много широкоформатных изображений, имеющие разные параметры...
  • Вопрос задан
  • 4107 просмотров
Подписаться 5 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
shcherbanich
@shcherbanich
Программист
#minibox{text-align:center}
Ответ написан
iiil
@iiil
Инженер и вэб-дизайнер, рисую.
Сделайте изображение фоном, самое простое решение.

Я бы предложил все же Вам поправить шаблон движка. Если настаиваете на применении именно img, то на сервере или на клиенте меняйте margin-left каждого изображения. Вот пример для клиента на js (+jq)
codepen.io/iiil/pen/EGFns
Ответ написан
@kirigosh Автор вопроса
#minibox {
	overflow:hidden;
	width:160px;
	background: url(../img/1.jpg);
	height:160px;
	background-size: cover;
	background-position:center;
}

да у меня получилось, но код пишется для движка и мне нужно именно img в html, а не background в css
Ответ написан
@ultrbi4
Есть еще одно решение, но в ниже 9 ie не работает

.box {
	display:block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

#minibox {
	position: relative; 
	overflow:hidden;
	width:160px;
	height:160px;
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы