Блочные и строчные элементы css. Блочные и строчные элементы. Блочные элементы и блочные контейнеры

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

По аналогии с блочными элементами перечислю их характерные особенности.

  • Внутрь строчных элементов допустимо помещать текст или другие строчные элементы. Вставлять блочные элементы внутрь строчных запрещено.
  • Эффект схлопывания отступов не действует.
  • Свойства, связанные с размерами (width , height ) не применимы.
  • Ширина равна содержимому плюс значения отступов, полей и границ.
  • Несколько строчных элементов идущих подряд располагаются на одной строке и переносятся на другую строку при необходимости.
  • Можно выравнивать по вертикали с помощью свойства vertical-align .

Строчные элементы удобно использовать для изменения вида и стиля текста, в частности, отдельных символов и слов. Для этой цели обычно применяется универсальный тег , который самостоятельно никак не модифицирует содержимое, но легко объединяется со стилями через классы или идентификаторы. За счёт чего с помощью этого тега можно легко управлять видом и положением отдельных фрагментов текста или рисунков.

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

,

И подобные широко распространённые теги. Тем не менее, блочные и строчные элементы удачно дополняют друг друга, поскольку позволяют на всех уровнях менять вид составляющих веб-страниц. В примере 3.16 показано использование тега для выделения отдельных слов.

Пример 3.16. Применение тега

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

Лягте животом на пол. Соедините стопы вместе, согнув ноги в коленях и развернув их в стороны. Руки за головой. Тяните голову руками вверх и вперед до полного сокращения мышц живота. Задержитесь на две секунды. Выполните восемь повторений.

Результат примера показан ниже (рис. 3.25).

Рис. 3.25. Текст, оформленный с помощью стилей

В данном примере тег и стили используются для выделения различными способами фрагментов текста. В частности, выделение происходит за счёт фонового цвета, рамки вокруг текста и сменой его цвета. Обратите внимание, что в результате переноса текста рамка вокруг него также перенеслась на другую строку. Во многих случаях это выглядит не очень красиво, поэтому можно запретить перенос текста через white-space : nowrap .

Для текста, который не обрамлён строчным тегом вроде создаётся анонимный строчный элемент. Для примера выше схема элементов будет следующей (рис. 3.26).

Рис. 3.26. Анонимные строчные элементы

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

Преобразование в строчный элемент

Строчные элементы можно превращать в блочные с помощью свойства display и его значения block . Также возможно и обратное действие через значение inline (пример 3.17).

Пример 3.17. Свойство display

XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx

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

Примечание

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

Результат примера приведен на рис. 3.27.

Рис. 3.27. Замена блочного элемента на строчный

В данном примере блочный тег

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

В виде строчного элемента. В принципе, аналогичным решением будет использовать вместо

Тег .

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


В HTML большинство элементов можно разделить на две группы: блочные (blok ) и строчные (inline ).

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

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

К строчным элементам относятся теги: ,
, , , , , , , ....

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

На другую строку строчный элемент или часть его содержимого переходит только в конце строки или когда что-то принудительно заставляет их перейти на новую строку.

Строчные элементы, естественно, могут располагаться внутри блочных.

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

К блочным элементам относятся теги:

,
,

...

,
,
    ,

    ,

    ,
      ....

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

      Один или несколько блоков также могут располагаться внутри другого (родительского ) блочного элемента.

      В CSS блоки создаются на основе элементов HTML и имеют следующую структуру.

      Любой блок имеет форму прямоугольника.

      Блочный элемент имеет границу и содержимое: это может быть текстовая информация, фотографии, логотип фирмы и т.п., называемое контентом (англ. content - содержание ).

      Границе блока при помощи свойства border можно придать необходимое оформление: задать толщину, цвет и стиль линий. По умолчанию граница невидима.

      Между содержимым и границей существуют внутренние расстояния - поля (свойство padding ). Ими необязательно пользоваться. То есть если их явно не установить при помощи свойства padding , то граница будет вплотную примыкать к содержимому блока, либо отстоять от него на каком-то минимальном расстоянии. С другой стороны, поля могут иметь совершенно конкретные размеры, которые указывает разработчик.

      Вокруг блока - за его границей существуют пустые, ничем не занятые области, называемые отступами (свойство margin ). Отступы - это расстояния от границы блока, до ближайших элементов, или, если их нет, то до краев окна браузера. Отступы также, как и поля по умолчанию отсутствуют, либо имеют минимальную ширину, автоматически определяемую браузером.

      Также для блока можно задать фиксированную ширину (свойство width ) и высоту (свойство height ), но лишь для его содержимого. Отступы, граница и поля туда не входят. По умолчанию как высота, так и ширина блока подстраиваются под размеры пространства, занимаемого контентом.

      Фрагмент кода:

      Строчные элементы расположены на одной строке. Они заключены в блочный элемент - абзац! Перенос текста происходит автоматически - в конце строки.

      Следующий блок - абзац, начинается с новой строки.


      Два абзаца расположены.


      Внутри блока - тега div !


      Отдельные фрагменты текста заключены в тег span. И для них задано стилевое оформление!

      Результат:

      Строчные элементы расположены на одной строке. Они заключены в блочный элемент - абзац! Перенос текста происходит автоматически - в конце строки.

      Следующий блок - абзац, начинается с новой строки.

      Два абзаца расположены.

      Внутри блока - тега div !

      Отдельные фрагменты текста заключены в тег span. И для них задано стилевое оформление!

      В HTML существует два типа элементов - блочные (block elements) и строчные (inline elements). Ниже вы узнаете особенности этих элементов и разницу между ними, а также способы управлять ими через правила CSS.

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

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

      Примеры блочных элементов:

      ,

      ,

        ,
          ,

          и т. д.

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

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

          Примеры строчных элементов: , , , , и т. д.


          Примечание: в HTML5 порядок вложения тегов такой роли не играет. Элементы уже не просто делятся на блочные и строчные, а группируются по смыслу и назначению, представляя собой категории контента .

          CSS-свойство display: меняем тип элемента

          При помощи крайне полезного свойства display в CSS можно заставить блочный элемент выглядеть как строчный и наоборот. Чтобы блочный элемент вел себя как inline-элемент (т. е. не переводился на новую строку), для него необходимо записать правило:

          Display: inline;

          Если же необходимо отобразить строчный элемент как block-элемент (чтобы до и после элемента происходил перенос строки), запишите следующее:

          Display: block;

          Действие {display:inline} и {display:block}


          Также можно сделать «гибрид» - блочный элемент с поведением, как у строчного. В этом случае всё содержимое таких блочных элементов будет отображаться, как обычно, но при этом блоки будут вести себя как строчные элементы, выстраиваясь в одной строке друг за другом и переносясь на новую строку лишь при необходимости. Схлопывание margin в таких случаях перестает действовать. Для превращения элемента в блочно-строчный запишите:

          Display: inline-block;

          Действие {display:inline-block}


          Далее в учебнике: свойство CSS border . Вы узнаете, как добавлять границы для элементов веб-страницы и какие настройки к ним можно применить, используя каскадные таблицы стилей.

          В этой главе:

          Синтаксис элемента

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

          Все элементы в HTML следуют одному формату:

          • Элемент начинается с открывающего тега.
          • Элемент заканчивается закрывающим тегом.
          • Содержимым элемента является все, что находится между открывающим и закрывающим тегами.
          • Некоторые элементы не имеют содержимого (пустые элементы).
          • Большинство элементов могут содержать атрибуты

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

          Пустые элементы

          В HTML есть несколько элементов, которые не имеют закрывающего тега, например или
          . Такие элементы называются пустыми , потому что они не содержат в себе никакого содержимого и не имеют закрывающего тега.

          Вложенные элементы

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

          Следующий пример состоит из трех элементов, два из которых вложенные:

          Мой первый абзац

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

          Это очень

          интересно

          Очевидно вы уже заметили, что элементы заголовков

          -
          и абзацев

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

          Пример: Блочные и встроенные элементы

          • Попробуй сам »

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

          занимает всю ширину родительского элемента и ограничен сверху и снизу пустыми строками

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

          Начинается с новой строки, а встроенный элемент





          Блочный элемент (h2) занимает всю ширину родительского элемента
          и ограничен сверху и снизу пустыми строками

          Блочный элемент (p) начинается с новой строки,
          а встроенный элемент (em)
          не начинается с новой строки, а остается в составе абзаца


          Обратите внимание как выглядит текст, который мы пометили как курсивный (еm). Он не начинается с новой строки, а остается в составе абзаца. Это происходит потому, что элемент является встроенным или строчным. Встроенные элементы не начинаются с новой строки, а находятся в составе блочных. Встроенным элементам достаточно лишь той ширины, которую физически занимают все элементы, находящиеся в них.

          Разница между блочными и строчными элементами следующая:

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

          Примеры блочных элементов:

          • -

          Примеры строчных элементов:

          Общие элементы
          и

          Элемент

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

          Итак, тег

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

          Элемент — это общий встроенный элемент, который используется для встроенных элементов, которые не вводят переводов строк. Элемент может содержать только текст и другие встроенные элементы (вы не можете поместить туда блочные элементы: заголовки, списки, элементы группировки контента и т. д.).
          Так как элемент строчный , то есть не требует для себя всей ширины окна браузера, то ему достаточно лишь той ширины, которую физически занимают все элементы, находящиеся в нем. Поэтому элемент часто используется для форматирования отдельных слов внутри абзаца.



          
      Top