Страницы

Поиск по вопросам

воскресенье, 12 мая 2019 г.

Как отцентрировать изображения Owl Carousel?

Есть карусель с изображениями различного размера. Как их отцентрировать внутри карусели? У меня не получается...
UPD. Отцентрировать и по вертикали, и по горизонтали.
http://jsfiddle.net/8bJUc/524/
$(document).ready(function() { $("#owl-demo").owlCarousel({ navigation: true, pagination: true, lazyLoad: true }); }); @import url('//cdnjs.cloudflare.com/ajax/libs/owl-carousel/1.3.3/owl.carousel.css'); @import url('//cdnjs.cloudflare.com/ajax/libs/owl-carousel/1.3.3/owl.theme.css'); #owl-demo .owl-item > div { padding: 0px 2px; display: table; } #owl-demo .owl-item > div img { display: block; width: 100%; display: table-cell; vertical-align: middle; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; margin-bottom: 4px; }



Ответ

Owl Carousel создаёт дополнительные блоки внутри вашей вёрстки. Поэтому, чтобы правильно добавить CSS свойства, надо работать вот с такой структурой:


То есть, таблицей делаем .owl-wrapper, а ячейками — .owl-item И на все элементы карусель навешивает атрибут style. Например, у блока с классом .owl-wrapper там прописывается display: block;. Поэтому в своих стилях приходится добавить !important Чтобы сработало вертикальное центрирование по ячейкам таблицы, нужно перебить им свойство float Ну а для горизонтального центрирования достаточно text-align: center;
Приятно, что в этом решении высота карусели не скачет, когда самая высокая картинка уезжает за пределы экрана. Проверьте результат:
http://jsfiddle.net/glebkema/yqfwzkL0/
$(document).ready(function() { $("#owl-demo").owlCarousel({ navigation: true, pagination: true, lazyLoad: true }); }); @import url('//cdnjs.cloudflare.com/ajax/libs/owl-carousel/1.3.3/owl.carousel.css'); @import url('//cdnjs.cloudflare.com/ajax/libs/owl-carousel/1.3.3/owl.theme.css'); #owl-demo .owl-wrapper { display: table !important; margin-bottom: 4px; padding: 0px 2px; } #owl-demo .owl-item { display: table-cell; float: none; vertical-align: middle; } #owl-demo .owl-item > div { text-align: center; } #owl-demo .owl-item img { -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }

Комментариев нет:

Отправить комментарий