maler1988
@maler1988
Web-программист (1С Bitrix)

Как заставить masonry адаптироваться?

На сайте используется галерея с фотографиями разной высоты, по идеи к ней идельно подходит плагин Masonry https://masonry.desandro.com/ , качнул, поставил, не могу заставить адаптироваться. В начале у меня показывает 5 колонок (так же как и в будущей галереи) потом должно становиться 3, 2 и 1 в зависимости от ширины экрана. Скрипт запускаю вот так:
var $container = $('#gallary');
	// Инициализация
	$container.masonry({
		itemSelector: '.item',
		//element width
		columnWidth: '.sizer', //Ширина в процентах
		percentPosition: true,
		isResizeBound: true
	});


вот такие стили:
.container {
	width: 1200px;
	margin: 0 auto;
}

.sizer, .item { width: 20%; }
.item.w2 { width: 50%; }

.item img {
	max-width: 100%;
	height: auto;
}


всё работает, но при уменьшении окна адаптации нет. Подумал что ширина колонок будет перестраиваться основываясь на стилях .sizer который указан в параметрах плагина как columnWidth. Добавил медиа-запрос меняющий ширину sizer:

@media screen and (max-width: 1300px) {
	.sizer, .item { width: 25%; }
}


не помогло, всё наезжает друг на друга при уменьшении окна . Как заставить masonry адаптировать колонки так как мне надо? На сайте плагина есть пару примеров, тут адаптация работает https://tympanus.net/Development/GridLoadingEffect... но к сожалению не разобрался как =(
  • Вопрос задан
  • 834 просмотра
Пригласить эксперта
Ответы на вопрос 2
@Haoss
html-верстальщик
тоже были проблемы, теперь пользуюсь salvattore.com
Ответ написан
thewind
@thewind
php программист, front / backend developer
Повесьте на событие resize для окна перестройку masonry, должен быть метод типа reinit
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 11:14
65000 руб./за проект
19 апр. 2024, в 11:08
5000 руб./за проект
19 апр. 2024, в 10:59
150000 руб./за проект