Болтливый section php. Секции для контента в HTML5 — div или section или article? Выполнить перед завершением

Данный материал является вольным переводом статьи:
Ire Aderinokun SECTIONING CONTENT IN HTML5 - DIV OR SECTION OR ARTICLE?

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

Помимо прочего, теги

и
были введены чтобы сделать области с контентом более значимыми, чем просто
. Но в каком случае мы должны использовать эти новые элементы и когда обычный
предпочтительнее?

Обзор элементов

DIV

Элемент

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

Элемент

в основном используется для группировки контента и и позиционирования при помощи CSS. Например, как контейнер для других элементов.

SECTION

Элемент

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

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

Поскольку содержимое тега

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

Subscribe to the Newsletter


ARTICLE

Тег

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

Цель тега

в маркировке контента, например, в разметке блога.


Article Title



Quae similitudo in genere etiam humano apparet. Est, ut dicis, inquam...


DIV или SECTION или ARTICLE?

Так какой из тегов когда нужно использовать?

Если содержимое не является семантически связанным, стоит использовать

. Если семантически связанное содержимое может быть автономным, то используйте тег
. В противном случае используйте
.

Комбинирование элементов

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

Article в article

Элементы article можно вкладывать друг в друга. И хотя они по прежнему являются самодостаточными, предполагается, что содержимое внутреннего

связано с внешним.

Article Title

John Smith

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Another Article

Jane Doe

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.


Article в section

Мы можем так же несколько тегов

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

Latest Blog Posts

Blog Post Title

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Blog Post Title

Lorem ipsum dolor sit amet, consectetur adipiscing elit.


Section в article

Каждый индивидуальный тег

может содержать в себе раздел section. Например, данный пост мог бы быть размечен следующим образом


Sectioning Content in HTML5 - div or section or article?


Overview of the Elements



div


The div element is the most general purpose element.




Всем привет! В этой статье мы рассмотрим, как правильно использовать теги div, section и article в HTML5 .

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

Div

Если вы откроете сайт W3C , то можете найти там рекомендацию, смысл которой заключается в том, что использовать данный тег нужно для семантически несвязанного между собой контента. Очень часто div используют для того, чтобы сгруппировать какой-нибудь контент, который затем нужно спозиционировать или как-то оформить с помощью css .

Section

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


Последние новости


...

Article

Этот элемент также должен обладать общей темой и содержать семантически связанный между собой контент, однако этот самый контент должен быть автономен, т.е. вы можете взять отдельный article , убрать его со страницы, но при этом смысл содержимого внутри него не потеряется. Все на том же примере новостного сайта можно сказать, что каждая отдельная новость будет выделена тегом article , т.к., если изолировать ее со страницы, она не потеряет смысл, но все новости вместе будут обрамлены тегом section , т.к. это отдельный большой блок с общей темой, и он не может быть изолирован. Согласитесь, если мы оставим на странице просто блок с новостями, он будет "не к месту", а если оставим одну конкретную новость, то все будет вполне логично.

Конечно, все зависит от конкретной ситуации, но чаще всего вы можете разметить свою страницу правильно, используя следующее правило: если контент семантически связан между собой и может быть изолирован со страницы без потери смысла, то используйте article . Если не может быть изолирован со страницы без потери смысла, используйте section . В остальных случаях – div .

Итак, на этом все. Надеюсь, что данная тема вам ясна и теперь вы будете размечать ваши интернет-странички грамотно. Спасибо за внимание и удачи!

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

, которым присваивали классы class или идентификаторы id для наглядности разметки (например,