0Pricing
CSS Academy · Урок

Блочные, строчные и строчно-блочные элементы

Разберитесь в различиях между режимами отображения block, inline и inline-block.

«Блочные, строчные и строчно-блочные элементы» — бесплатный урок CSS Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения CSS Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс CSS Academy содержит 4 уроков всего.

Свойство display

Свойство display — одно из важнейших свойств CSS. Оно определяет, как элемент участвует в потоке раскладки: создаёт ли он блочный блок, строчный блок или промежуточный вариант.

Блочные элементы

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

Блочные элементы по умолчанию: div, p, h1-h6, section, article.

<div>I'm a block element — full width, centered.</div>

Строчные элементы

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

Строчные элементы по умолчанию: span, a, strong, em, img.

<p>This is <span>an inline span</span> inside a paragraph.</p>

Строчно-блочные элементы

display: inline-block — гибридный вариант. Элементы располагаются в строке, без принудительного переноса, но поддерживают ширину, высоту и все свойства блочной модели, как блочные элементы.

<a class="btn" href="#">Click Me</a>

Строчно-блочные элементы для навигации

До появления флексбокса inline-block использовался для горизонтальных панелей навигации. Недостаток этого подхода в том, что пробелы в исходном коде HTML создают небольшие промежутки между элементами.

<ul><li>Home</li><li>About</li><li>Contact</li></ul>

Удаление промежутка между строчно-блочными элементами

Промежуток между строчно-блочными элементами можно удалить, задав font-size: 0 для родителя и восстановив размер шрифта у дочерних элементов либо удалив пробелы из HTML.

<ul><li>One</li><li>Two</li><li>Three</li></ul>

Замена строчно-блочных элементов флексбоксом

В современном CSS предпочтительный способ создавать горизонтальные раскладки без проблем с пробелами — задать родителю display: flex. inline-block по-прежнему полезен для задания размеров отдельных элементов.

Изменение display

Тип display любого элемента можно изменить с помощью CSS. Это часто используют, чтобы придать ссылкам форму кнопок или расположить элементы списка горизонтально.

<a class="button" href="#">Button</a>
<ul><li>Item 1</li><li>Item 2</li></ul>

Табличные значения display

CSS предоставляет значения display: table, display: table-row, display: table-cell и т. д., позволяющие применить табличную раскладку к элементам, не являющимся таблицами. Сегодня это требуется редко, но бывает полезно для вертикального выравнивания в устаревших сценариях.

Корень потока: display: flow-root

display: flow-root создаёт новый контекст форматирования блоков без побочных эффектов overflow: hidden. Он очищает обтекание и не позволяет схлопыванию внешних отступов выходить за пределы контейнера.

<div class="clearfix">Contains floated children without collapsing.</div>

Анонимные блоки

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

Быстрая проверка

Какое значение display позволяет задать width, сохраняя элемент в строчном потоке?

Итоги

Блочные элементы занимают всю ширину и начинаются с новой строки. Строчные элементы располагаются вместе с текстом и игнорируют ширину и высоту. Строчно-блочные элементы объединяют оба свойства: располагаются в строке, но принимают ширину и высоту. В современных раскладках вместо сеток из inline-block предпочтительны флексбокс и грид.

Часто задаваемые вопросы

Урок «Блочные, строчные и строчно-блочные элементы» бесплатный?

Да — полный текст урока «Блочные, строчные и строчно-блочные элементы» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс CSS Academy, подпишись на CoddyKit PRO. Курс CSS Academy содержит 4 уроков всего.

Чему я научусь в уроке «Блочные, строчные и строчно-блочные элементы»?

Разберитесь в различиях между режимами отображения block, inline и inline-block. Ты практикуешь CSS Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать CSS Academy?

Предыдущий опыт не требуется. CSS Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Блочные, строчные и строчно-блочные элементы»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке CSS Academy?

Да. Каждый урок CSS Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Блочные, строчные и строчно-блочные элементы
  2. Видимость и display: none
  3. Переполнение: прокрутка, обрезка и автоматический режим
  4. Сброс CSS и Normalize
← Назад к CSS Academy