В этой статье я собираюсь познакомить вас с компонентом карты Bootstrap и рассказать о его многочисленных функциях и способах использования.К концу этого учебного пособия вы сможете использовать карты Bootstrap в своих веб-проектах для создания великолепных макетов и организации содержимого страницы.
Bootstrap — это самая популярная среда HTML, CSS и JavaScript для быстрого создания адаптивных веб-макетов, ориентированных на мобильные устройства.
Использование Bootstrap предлагает разработчикам множество преимуществ, включая следующие:
вы можете легко и быстро создать адаптивный макет, имея лишь некоторые знания HTML и CSS
библиотека была построена, чтобы быть мобильным первым из ядра
он совместим со всеми современными браузерами и т. д.
он использует Flexbox для своей системы сетки
он предоставляет множество функций и компонентов.
Последний выпуск Bootstrap предлагает множество новых современных функций, таких как поддержка Flexbox и новый компонент карты , который заменяет панели, эскизы и углубления из предыдущих версий библиотеки.
Что такое компонент карты Bootstrap?
Bootstrap представляет новый компонент пользовательского интерфейса для создания карт, который предоставляет гибкий и стильный контейнер для отображения контента. Карты поставляются с минимальным оформлением, но вы можете легко расширить их с помощью дополнительных параметров оформления.
Этот компонент построен поверх Flexbox, и вы можете использовать служебные классы Bootstrap spacing для полей и отступов.
Карты могут удобно размещать различные типы контента, такие как заголовок, субтитры, основная копия, изображения и т. Д., А также дополнительные разделы верхнего и нижнего колонтитула. Вы также можете включать различные разделы (блоки карт) для создания различных типов карт в зависимости от вашего использования.
Включение Bootstrap в ваш проект
Вы можете очень легко начать использовать Bootstrap на своем веб-сайте, либо включив его из CDN, либо загрузив его с getbootstrap.com .
Ради введения нового компонента карты Bootstrap вы создадите простую HTML-страницу со стилем Bootstrap, чтобы продемонстрировать основные элементы компонента карты. Создайте файл index.html папке вашего проекта, затем добавьте следующее содержимое из начального шаблона docs :
<!doctype html><htmllang="en"><head><!-- Required meta tags --><metacharset="utf-8"><metaname="viewport"content="width=device-width, initial-scale=1, shrink-to-fit=no"><!-- Bootstrap CSS --><linkrel="stylesheet"href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm"crossorigin="anonymous"><title>Bootstrap Card Example</title></head><body><divclass="container"></div><!-- Optional JavaScript --><!-- jQuery first, then Popper.js, then Bootstrap JS --><scriptsrc="https://code.jquery.com/jquery-3.2.1.slim.min.js"integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"crossorigin="anonymous"></script><scriptsrc="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"crossorigin="anonymous"></script><scriptsrc="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"crossorigin="anonymous"></script></body></html>
Мы включили файлы Bootstrap и их зависимости (jQuery и popper.js) из разных CDN, а затем создали контейнерное подразделение.
Минимальный стиль для карточек
Чтобы создать базовую карту, нам нужно —
используйте .card с тегом div для создания внешнего контейнера
добавьте .card-body к внутреннему тегу div чтобы создать тело карты
используйте .card-title и card-subtitle с тегами заголовков для добавления заголовка и субтитров
используйте класс card-text с тегами <p> для добавления текстового содержимого
используйте класс card-img-top с <img> чтобы добавить изображение в верхнюю часть карты.
Это базовые элементы, которые составляют полную, но базовую раскладку карты, как мы можем видеть из следующего примера:
<divclass="card"><imgclass="card-img-top"src="https://source.unsplash.com/daily"alt="Card image top"><divclass="card-body"><h3class="card-title">Card title</h3><h4class="card-subtitle">Card subtitle</h4><pclass="card-text">This is a simple Card example</p></div></div>
Это скриншот результата:
Как видно, карта занимает всю ширину своего контейнера div .
Просто переключая класс card-body классом card-img-overlay , мы можем использовать изображение как наложение:
Мы также можем использовать класс .card-img-bottom с <img> чтобы добавить изображение внизу карты:
<divclass="card"><divclass="card-header"> This is a header </div><imgclass="card-img-top"src="https://source.unsplash.com/daily"alt="Card image top"><divclass="card-body"><pclass="card-text">A Card with a top and bottom images</p></div><imgclass="card-img-bottom"src="https://source.unsplash.com/daily"alt="Card image top"><divclass="card-footer"> This is a footer </div></div>
Управление шириной и высотой компонентов платы Bootstrap
По умолчанию карты принимают всю доступную ширину в своем родительском контейнере, но вы можете использовать классы width и max-width чтобы контролировать размеры карты. Итак, давайте изменим предыдущий пример, уменьшив ширину карты:
<divclass="card"style="width:20rem;"><imgclass="card-img-top"src="https://source.unsplash.com/daily"alt="Card image top"><divclass="card-body"><h3class="card-title">Card title</h3><h4class="card-subtitle">Card subtitle</h4><pclass="card-text">This is a simple Card example</p></div></div>
Как правило, высота карты корректируется так, чтобы она соответствовала по высоте содержимому карты, но мы также можем контролировать ее, используя собственный CSS (например, style=" height: 10rem;" ) или утилиты определения размера Bootstrap (например, <div class="card h-200"> ).
Обратите внимание, что последняя версия Bootstrap переключилась на единицы rem вместо px, поскольку rem является масштабируемой единицей измерения, поэтому она лучше работает с пользовательскими настройками, что делает текст гораздо более доступным . В результате все элементы на странице будут масштабироваться с размером экрана. (Подробнее о новых возможностях Bootstrap вы можете узнать из статьи SitePoint « Bootstrap: Super Smart Features, чтобы победить вас »).
Другим вариантом управления шириной компонента карты Bootstrap является использование сетки Bootstrap (строки и столбцы):
<divclass="row"><divclass="col-sm-3"><divclass="card"><imgclass="card-img-top"src="https://source.unsplash.com/daily"alt="Card image top"><divclass="card-body"><h3class="card-title">Card title</h3><h4class="card-subtitle">Card subtitle</h4><pclass="card-text">This is a simple Card example</p></div></div></div></div>
Верхний и нижний колонтитул карты начальной загрузки
Компонент карты Bootstrap может дополнительно иметь верхний и нижний колонтитулы, добавляя заголовки ( <h*> ) и теги div с .card-header и .card-footer соответственно.
Продолжая наш пример, давайте добавим верхний и нижний колонтитулы к нашему компоненту карты Bootstrap:
<divclass="row"><divclass="col-sm-3"><divclass="card"><divclass="card-header"> This is a header </div><imgclass="card-img-top"src="https://source.unsplash.com/daily"alt="Card image top"><divclass="card-body"><h3class="card-title">Card title</h3><h4class="card-subtitle">Card subtitle</h4><pclass="card-text">This is a simple Card example</p></div><divclass="card-footer"> This is a footer </div></div></div></div>
Это скриншот результата:
Добавление навигации
Еще одна приятная особенность компонента карты Bootstrap — возможность добавления расширенных шаблонов навигации в раздел заголовка, таких как вкладки и навигационные таблетки.
Итак, давайте изменим наш простой пример, добавив элемент навигации с вкладками в раздел заголовка карты с помощью .nav-tabs и .card-header-tabs в <ul> :
Таким же образом мы можем добавить навигационные таблетки, просто заменив .nav-tabs на nav-pills и .card-header-tabs на card-header-pill в <ul> списка <ul> :
Мы можем быстро добавлять ссылки внутри карточек, используя тег <a> с .card-link :
<divclass="card"><divclass="card-body"><h3class="card-title">Adding Links</h3><pclass="card-text">These are simple links</p><ahref="#"class="card-link">Link 1</a><ahref="#"class="card-link">Link 2</a></div><divclass="card-footer"> This is a footer </div></div>
Выравнивание и преобразование текста в компонентах карты начальной загрузки
Мы можем использовать различные классы Bootstrap ( текстовые утилиты ) для выравнивания текста в компоненте карты, например .text-left (выравнивание текста по левому .text-right ), .text-right (выравнивание текста по правому .text-center ), .text-center (центральный текст), .text-justify (выравнивание текста) и .text-nowrap (предотвращение переноса текста).
Мы также можем применить преобразование текста с помощью .text-lowercase (преобразовать текст в нижний регистр), .text-uppercase (преобразовать текст в верхний регистр) и .text-capitalize (преобразовать первую букву каждого слова в верхний регистр).
Настройка цвета компонентов карты Bootstrap, цвета переднего плана и границ
Цвет фона и переднего плана компонента карты Bootstrap можно полностью настроить с помощью служебных программ Bootstrap для текста и цвета фона — text-primary, text-white, bg-primary и так далее.
Используя утилиты границ Bootstrap (например, border-primary ), мы можем быстро установить цвет границы карты.
Демонстрация CodePen ниже показывает все виды карт, которые мы можем создать с помощью Bootstrap. Не стесняйтесь экспериментировать с этим самостоятельно:
Создание расширенных макетов с помощью компонента Bootstrap Card
Карта представляет собой современный компонент пользовательского интерфейса, который используется на многих веб-сайтах для отображения элементов смешанного и различного типа контента (например, текста и изображений и т. Д.) В виде единого / сгруппированного объекта, но чаще всего в виде набора похожих элементов с разной или одинаковой ширины и высоты. Популярным макетом, где можно использовать карты, является макет Masonry , также называемый Pinterest-подобным макетом
Карты можно использовать для создания макетов для альбомов изображений, сообщений в блогах, продуктов электронной коммерции и т. Д. Крупные компании, такие как Google и Facebook, используют карты для своих различных веб-платформ.
Обычно, если мы хотим создавать сложные макеты на основе карточек, нам нужно иметь глубокие знания CSS и HTML. Однако, благодаря последним возможностям Bootstrap, мы можем быстро создавать такие макеты, оборачивая наш набор карт в div с некоторыми специальными классами, такими как .card-group , .card-deck и .card-columns .
Группировка / Вложенные карты
Группы используются для отображения нескольких компонентов карты Bootstrap в виде отдельных и прикрепленных элементов с одинаковым размером, то есть карты имеют одинаковую ширину и высоту. Это достигается с помощью display: flex; свойство.
Мы можем создать группу карточек, используя .card-group с div оберткой, которая содержит дочерние карточки.
Давайте добавим следующий код для создания группы из трех карт:
<divclass="card-group"><divclass="card text-white"><imgclass="card-img-top"src="https://source.unsplash.com/featured/"alt="Card image top"><divclass="card-img-overlay"><h3class="card-title">Card title</h3><h4class="card-subtitle">Card subtitle</h4><pclass="card-text">This is a simple Card example</p></div></div><divclass="card text-white"><imgclass="card-img-top"src="https://source.unsplash.com/featured/"alt="Card image top"><divclass="card-img-overlay"><h3class="card-title">Card title</h3><h4class="card-subtitle">Card subtitle</h4><pclass="card-text">This is a simple Card example</p></div></div><divclass="card text-white"><imgclass="card-img-top"src="https://source.unsplash.com/featured/"alt="Card image top"><divclass="card-img-overlay"><h3class="card-title">Card title</h3><h4class="card-subtitle">Card subtitle</h4><pclass="card-text">This is a simple Card example</p></div></div></div>
Это скриншот результата:
Как видно, три карточки прикреплены и имеют одинаковую ширину и высоту.
Карточные колоды
Колоды предоставляют вам макет, подобный предыдущему (то есть одинаковую ширину и высоту для каждой карты), но с тем отличием, что карты не прикреплены друг к другу.
Мы можем просто добавить .card-deck в родительский элемент div для создания колоды карт:
Как мы видим, карты имеют одинаковый размер с некоторым запасом между ними.
Столбцы карты
Так же, как группы и колоды, столбцы карт могут использоваться для раскладывания набора карт в стиле масонства. Мы можем добиться этого популярного стиля макета, просто обернув наши карты в div и добавив .card-columns . Это все, что нам нужно сделать, и Bootstrap позаботится обо всем остальном, не используя плагин JavaScript / jQuery.
Bootstrap использует CSS-столбцы для создания макета в стиле масонства, в котором карты добавляются сверху вниз и слева направо. Однако, если нам нужно другое поведение, основанное на каком-либо алгоритме, нам придется прибегнуть к библиотеке JavaScript или к плагину jQuery, например Masonry .
Вот демонстрация макета Masonry с использованием карт Bootstrap в действии:
Вывод
Компонент карты Bootstrap является мощным дополнением к платформе Bootstrap, которая позволяет разработчикам создавать веб-страницы в современном стиле, не углубляясь в то, как работает CSS. Вы можете добавить макеты карточек для представления галерей изображений, виджетов панели мониторинга, отображения сообщений в блоге или продуктов для веб-сайта электронной коммерции, просто добавив несколько классов CSS.
Благодаря новым функциям и компонентам Bootstrap продолжает оставаться мощной платформой CSS, доступной для всех, особенно для разработчиков, которым необходимо создавать собственные адаптивные макеты в современном стиле, но у которых недостаточно времени и бюджета или глубокие знания CSS. необходимо произвести пользовательский код.
Если у вас есть основы Bootstrap за поясом, но вы не знаете, как поднять свои навыки Bootstrap на следующий уровень, ознакомьтесь с нашим курсом «Создайте свой первый сайт с Bootstrap 4», чтобы быстро и весело познакомиться с мощью Bootstrap.