«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как освоить блочную модель CSS для создания идеальных макетов веб-сайтов (+ примеры Codepen)

Как освоить блочную модель CSS для создания идеальных макетов веб-сайтов (+ примеры Codepen)

Опубликовано 9 ноября 2024 г.
Просматривать:814

How to Master the CSS Box Model for Perfect Website Layouts (  Codepen examples)

Эй, замечательные люди! Добро пожаловать обратно в мой блог. ? Сегодня мы углубимся в блочную модель CSS, проясним, как определяется размер каждого элемента и как вы можете использовать эти знания для создания точного, современного и чистого дизайна (реальные примеры в конце этой статьи).

Введение в блочную модель

Блочная модель CSS лежит в основе веб-дизайна и определяет, как каждый HTML-элемент занимает пространство на веб-странице.

Подробная разбивка компонентов блочной модели

  1. Содержимое : это фактическое содержимое поля, в котором находится текст, изображения и другие элементы. Его размер определяется свойствами ширины и высоты.

  2. Отступы : это пространство вокруг контента внутри границы. Отступы прозрачны, если не указано иное.

  3. Граница : обтекает отступы и содержимое. Ему можно задать ширину, стиль (например, сплошной, пунктирный) и цвет.

  4. Маржа : это пространство за пределами границы. Он также прозрачен и влияет на расстояние между элементами

Блочная модель в действии:

.example {
    width: 200px; /* Content width */
    height: 100px;
    padding: 10px; /* Adds 20px to both width and height */
    border: 5px solid #000; /* Adds 10px to both width and height */
    margin: 20px; /* Does not contribute to the element's dimensions but affects layout */
}

  • Расчет общей ширины : 200 пикселей (содержимое), 20 пикселей (отступы), 10 пикселей (граница) = 230 пикселей

  • Расчет общей высоты : 100 пикселей 20 пикселей 10 пикселей = 130 пикселей

Распространенные заблуждения

  • Ширина/высота влияет только на контент : многие полагают, что настройка ширины или высоты определяет общий размер, но это только область содержимого.

  • Размер поля : Без изменения размера поля: border-box, добавление отступов или границ увеличивает элемент за пределы заданной ширины/высоты.

Визуализация блочной модели: Представьте, что у вас есть бокс указанных выше размеров. Вот визуальная разбивка:

.box {
    background-color: #f0f0f0;
    width: 300px;
    height: 150px;
    padding: 20px;
    border: 10px solid #000;
    margin: 30px;
}
  • Область контента : 300x150 пикселей (серая область)

  • Отступы : добавляет 20 пикселей вокруг, увеличивая размер до 340x190 пикселей.

  • Граница : окружает отступы, создавая окончательный размер поля 360x210 пикселей

  • Маржа : создает пространство вокруг границы, но не учитывается напрямую в размерах элемента.

Продвинутые методы блочного моделирования

Свойство Box-Sizing : Использование box-sizing: border-box включает отступы и границы в указанную ширину/высоту, оптимизируя дизайн:

* { box-sizing: border-box;}

Это объявление будет применяться ко всем элементам, что сделает расчет размера более интуитивным.

  • Процентные значения : при использовании с отступами или полями проценты рассчитываются относительно ширины содержащего элемента.

  • Автоматические поля : Настройка поля: автоматически центрирует элементы по горизонтали (или по вертикали, если используется флексбокс).

Модель и макет блока

  • Поплавки : элементы с плавающей запятой могут привести к непредвиденному поведению, когда поля схлопываются или перекрываются.

  • Flexbox и Grid : эти современные методы макетирования по-разному обрабатывают поля. Например, поля не схлопываются в гибких контейнерах или ячейках сетки, как это происходит с элементами уровня блока.

  • Перекрывающиеся элементы : понимание z-индекса и позиционирования помогает управлять глубиной при перекрытии элементов.

Советы по эффективному использованию блочной модели

  • Создавайте единообразный дизайн: используйте единообразные размеры блоков во всем проекте, чтобы избежать ошибок при расчете размеров.

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

  • Отладка : если элемент выглядит больше или меньше ожидаемого, проверьте настройки отступов, границ и полей.

  • Использование контура : в отличие от границ, контуры не влияют на размеры элемента, что может быть полезно в определенных проектах пользовательского интерфейса.

Реальное применение

1.Адаптивный макет карты. Проверьте код на Codepen.

Объяснение:

  • Box-Sizing : Установка размера окна: border-box; гарантирует, что отступы не увеличивают общую ширину и высоту, что упрощает адаптивный дизайн.

  • Макет карты : класс .card определяет контейнер с фиксированной шириной, закругленными углами и тенью для глубины.

  • Изображение карты: действует как заполнитель для изображения с размерами, заданными по высоте.

  • Содержимое карты : здесь отступы используются для отделения содержимого от границы. Здесь вы видите блочную модель в действии; отступы увеличивают кликабельную область внутри карточки, но не увеличивают заявленную ширину карточки.

  • Маржа : используется незаметно в .card-title и .card-text для разделения элементов внутри карточки.

  • Кнопка: оформлена в виде типичного призыва к действию, с эффектами наведения, демонстрирующими переходы CSS.

2.Простой список сообщений в блоге. Проверьте код на Codepen.

Дайте мне знать, если вам нужно какое-либо объяснение этого примера! Буду рад помочь вам в комментариях!

Заключение

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


? Здравствуйте, я Элефтерия, менеджер сообщества, разработчик, оратор и создатель контента.

? Если вам понравилась эта статья, поделитесь ею.

? Все ссылки | X | LinkedIn

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/eleftheriabatsou/how-to-master-the-css-box-model-for-perfect-website-layouts-codepen-examples-4opk?1 Если есть какие-либо нарушения , пожалуйста, свяжитесь с Study_golang @163.comdelete
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3