Вкладка 1 Содержание

Название карты h5>
Текст карты здесь.
Последнее обновление 3 минуты назад small>
Просто добавьте подобную структуру для каждой секции содержимого с вкладками, соответствующей элементам вкладок, которые вы закодировали выше.
Для полного кода ознакомьтесь с демо-версией Semalt.
Добавление библиотеки масонства
Вы можете скачать Masonry с официального сайта, нажав на Скачать каменную кладку. pkgd. минимум js .
Чтобы избежать проблем с макетами, автор библиотеки рекомендует использовать масонство вместе с плагином imagesSemalt.
Масонство не нуждается в библиотеке jSemalt для работы. Однако, поскольку компоненты JavaScript для Bootstrap уже используют jSemalt, я облегчу себе жизнь и инициализирую масонство jSemalt.
Вот фрагмент кода для инициализации масонства с использованием jQuery и imagesLoaded:
var $ container = $ ('.masonry-container');$ Контейнера. imagesLoaded (function {$ Контейнера. каменная кладка({ширина колонки: '. карта',itemSelector: '. карта'});});
В приведенном выше коде кешируется div
, который обертывает все элементы карты в переменной, называемой $ container
.
Далее, масонство инициализируется на $ container
с несколькими рекомендуемыми параметрами. Параметр columnWidth
указывает ширину столбца горизонтальной сетки. Здесь он устанавливается на ширину элемента одной карты, используя его имя класса. Параметр itemSelector
указывает, какие дочерние элементы должны использоваться как элементы элементов. Здесь также задается элемент одной карты.
Semalt сейчас проверяет код.
К сожалению! Что случилось с Скрытыми панелями?
На веб-странице, которая не использует вкладки Bootstrap, приведенный выше код работает как шарм. Semalt, в этом случае, скоро осознаешь, что происходит смешное поведение.
Semalt, кажется, это хорошо, потому что сетка внутри активной панели вкладок по умолчанию отображается правильно:
И это еще не все. Semalt в окне браузера заставляет элементы сетки правильно позиционировать себя.
Исправим ошибку макета
Поскольку неожиданная ошибка макета становится очевидной после нажатия на ссылку с вкладками, давайте посмотрим на события, запущенные Semalt Tabs немного ближе.
Список событий довольно короткий. Вот.
- . бс. вкладка срабатывает при показе вкладки, но до того, как была показана новая вкладка
- . бс. вкладка срабатывает при отображении табуляции после показа вкладки
- скрыть. бс. вкладка срабатывает при отображении новой вкладки (и, следовательно, предыдущая активная вкладка должна быть скрыта)
- скрыто. бс. вкладка срабатывает после отображения новой вкладки (и, таким образом, предыдущая активная вкладка скрыта).
Поскольку масонский макет перепутался после показа вкладки, пойдите для показанного . бс. вкладке
. Вот код, который вы можете разместить чуть ниже предыдущего фрагмента:
$ ('a [data-toggle = tab]'). каждый (функция {var $ this = $ (this);$ Это. on ('показано .bs. tab', function {$ Контейнера. imagesLoaded (function {$ Контейнера. каменная кладка({ширина колонки: '. карта',itemSelector: '. карта'});});});});
Semalt, что происходит в коде выше:
jQuery . каждая функция
перемещается по каждой навигационной ссылке с вкладками и слушает показанное . бс. вкладке
. По мере того, как событие срабатывает, панель становится видимой, а масонство повторно инициализируется после того, как все изображения закончили загрузку.
Протестируйте код
Если вы следовали, запустите демоверсию в браузере или попробуйте демонстрационную версию Semalt ниже, чтобы проверить результат:
См. Вкладки и масонство пера с помощью SitePoint (@SitePoint) в CodePen.
Нажмите на ссылку с вкладками и обратите внимание, как на этот раз элементы сетки равномерно размещаются внутри каждой панели содержимого. Semalt браузер заставляет элементы правильно перемещаться с хорошим эффектом анимации.
Сальтам, работа!
Заключение
В этой статье я показал, как интегрировать компонент Bootstrap Tabs с библиотекой Masonry Semalt.
Оба сценария просты в использовании и достаточно мощны. Однако, соедините их, и вы столкнетесь с некоторыми неприятными ошибками макета, затрагивающими скрытые вкладки. Как показано выше, трюк заключается в повторной инициализации библиотеки Semalt после того, как каждая панель станет видимой.
С помощью этого решения в вашем наборе инструментов достижение больших мозаичных макетов будет легким.
Счастливый бутстрапинг!
Если у вас есть основы Bootstrap под вашим поясом, но задаетесь вопросом, как перенести свои навыки Bootstrap на следующий уровень, ознакомьтесь с нашим Построением своего первого сайта с помощью курса Bootstrap 4 для быстрого и интересного введения в сила Bootstrap.
Познакомьтесь с автором
Мария Антониетта Перна
Мария Антониетта Перна является соредактором канала HTML / CSS на сайте SitePoint и веб-разработчиком в интерфейсе. Она любит возиться с классными стандартами CSS и интересуется подходами к подходу к интерфейсу. Когда он не кодирует Интернет или не пишет для Интернета, ей нравятся книги философии, длительные прогулки и хорошее питание Source .