2012-02-15 3 views
3

Я использую Masonry script для размещения ящиков на website.jQuery Каменная кладка - проблема с размещением жидкостей

Он выглядит хорошо для меня в большинстве браузеров, за исключением случаев, когда я изменяю размер окна браузера или переворачиваю свой телефон на боку и обратно.

Без масонства у меня гибкий макет, который отлично работает. Под жидкостью я подразумеваю, что коробки занимают всю ширину при меньших размерах экрана.

С масонством это все еще работает нормально, когда вы впервые заходите на сайт, но если вы либо измените размер окна браузера, либо переверните свой телефон на бок, макет все в порядке. Обновление снова сортируется.

Не уверен, есть ли способ исправить это, или если я должен использовать другой скрипт, или даже если лучше всего отключить скрипт для меньших экранов?

Надеюсь, кто-то может помочь!

Спасибо.

+0

Мой текущий подход: добавьте обработчик на 'window.resize', который вызывает' masonry ('destroy') ', если экран становится слишком маленьким. CSS заботится обо всем остальном. –

ответ

3

В меру моего воспоминания, масонство захватывает размеры элемента, когда оно называется, а затем выполняет кладку. Он ожидает, что эти измерения будут статичными, а именно, как он может вычислить масоновский макет.

Сочетание этого с жидким макетом - это немного рецепт катастрофы, на мой взгляд. Однако это невозможно.

В случае изменения размера просто вызовите кладку() на контейнер снова.

+0

Спасибо, Грег! Это работает. –

+2

Возможно, вы захотите использовать https://github.com/louisremi/jquery-smartresize, чтобы дросселировать, как часто вызывается функция изменения размера. Я считаю, что изотоп имеет это встроенное, но вам нужно добавить его в кладку. – Galaxy

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