В момента HTML документите се структурират главно посредством елементи div. След това форматирането и позиционирането на тези контейнери обикновено се извършва чрез CSS. За софтуер като Screenreader това е безполезно, тъй като те не могат да разпознаят какво представляват определени съдържания. Това трябва да се промени с новите елементи за структуриране.
Двата най-важни нови елемента са раздел и статия, които са фокус на този урок.
Означаване на статии
Чрез article елемента могат да се маркират текстове (форумни публикации, статии във вестници и други) като статии. Следващият пример показва дефиницията на типична статия.
<article> <h1>Създаване на уеб приложения (Част 09): jQuery mobile (1)</h1> <p>jQuery е безспорно едно от най-известните JavaScript рамки. В "класически" уебсайтове jQuery вече се използва хиляди пъти...</p> ... </article>
Благодарение на article елемента може да структурирате съдържанието си по семантичен начин.
Как може да изглежда нещо от това може да се види много хубаво чрез един блог.
<article>
<header>
<h1>Създаване на уеб приложения (Част 09): jQuery mobile (1)</h1>
<p>Публикувано на: <time pubdate="pubdate">24.05.2014</time></p>
</header>
<p>jQuery е безспорно едно от най-известните JavaScript рамки. В "класически" уебсайтове jQuery вече се използва хиляди пъти...</p>
...
<footer>
<p><small>Авторски права от PSD-Tutorials.de</small></p>
</footer>
</article>
В този пример в рамките на article елемента се извършва доста типично разделяне на секциите глава, основа и край. И такова разделяне се среща много често в блоговете.
Създаване на секции
Следва section елемента. Елементът section разделя страницата на различни секции. Това може да бъде секции, глави, табове и т.н. Чрез section може да се разделят логически области като въведение и текущи съобщения.section служи за разделяне на съдържанието според реални логически критерии. Когато стигнем до разликата между section и div, ще говоря отново в края на този урок.
Следващият пример показва типична структура на блог. Все пак, тази структура включва нещо, което всъщност е нужно в много блогове, а именно секция за коментари. Тази секция за коментари се дефинира в рамките на section елемента. Отделните коментари в рамките на секцията article отново са оградени отделно.
<article>
<header>
<h1>Създаване на уеб приложения (Част 09): jQuery mobile (1)</h1>
<p>Публикувано на: <time pubdate="pubdate">24.05.2014</time></p>
</header>
<p>jQuery е безспорно едно от най-известните JavaScript рамки. В "класически" уебсайтове jQuery вече се използва хиляди пъти...</p>
...
<section>
<h2>Коментари</h2>
<article>
<header>
<h3>Коментирал от: ПриятелНаНовините</h3>
<p><time pubdate datetime="2024-10-05T20:10-07:00">Преди един час</time></p>
</header>
<p>Благодаря за урока!</p>
</article>
<article>
<header>
<h3>Коментирал от: Бекър</h3>
<p><time pubdate datetime="2024-10-05T20:10-07:00">Преди два часа</time></p>
</header>
<p>Страхотно! Това ми помага напред.</p>
</article>
</section>
</article>Отново бих искал да отбележа, че ще говоря подробно за елементите, използвани също тук като header, footer и др. Не в този момент, но чрез тези елементи може да се разделят съдържанието в главата и края, следователно позволяват допълнително логическо структуриране на документите.
Друг пример за комбиниране на елементите article и section за по-добро разбиране. Фактически section елементът може да се използва за разделяне на статия на логически секции, които всяка има собствени заглавия.
<article>
<h1>Разработка на приложения</h1>
<p>Тук ще научите как да създадете уеб-приложения.</p>
<section>
<h2>Създаване на уеб приложения (Част 09): jQuery mobile (1)</h2>
<p>jQuery е безспорно едно от най-известните JavaScript рамки.</p>
</section>
<section>
<h2>Създаване на уеб приложения (Част 08): Бързо включване в jQuery</h2>
<p>JavaScript е чудесна нещо за уебсайтовете, тъй като позволява много интересни неща.</p>
</section>
</article>
Също така е възможно в рамките на section елемента да дефинирате article елементи. Типичен пример за това може да бъде секция за коментари, както вече беше показано. Възможно е обаче и разделянето на секцията на тематични области, които се обсъждат в блога.
Също така е валиден следният пример:
<section>
<h1>Разработка на приложения</h1>
<article>
<h2>Създаване на Уеб приложения (Част 09): jQuery mobile (1)</h2>
<p>jQuery определено е един от най-известните JavaScript фреймуърки.</p>
</article>
<article>
<h2>Създаване на Уеб приложения (Част 08): Бърз вход в jQuery</h2>
<p>JavaScript е страхотен инструмент за уебсайтовете, тъй като с него можете да правите различни интересни неща.</p>
</article>
</section>
Също така в елемента section може да се съдържат други section елементи. Гнездените структури са разрешени. Ето един пример:
<section>
<h1>PSD-Tutorials.de</h1>
<section>
<h2>Добре дошли</h2>
<p>Радваме се...</p>
</section>
<section>
<h2>Уроци</h2>
<p>Тук са нашите най-нови уроци...</p>
</section>
<aside>
<p>Контакт</p>
</aside>
</section>
<footer>
<p>(c) 2014 PSD-Tutorials.de</p>
</footer>
Тази секционна вложеност води до следната структура:
1. PSD-Tutorials.de
1.1 Добре дошли
1.2 Уроци
1.3 Контакт
- (c) 2014 PSD-Tutorials.de
Такива структурирания са също възможни.
Разликата между div, article и section
Признаваме, че не е лесно да се разбере разграничението между div, article и section. Фактически, article елементът е дефиниран предимно за структуриране на блог публикации. section елементът е наистина на едно ниво под article. Вътре в section елемента винаги трябва да бъде дефинирано заглавие. Дори когато реално заглавие не е дефинирано, теоретично би трябвало в рамките на съответния елемент да бъде възможно да се посочи заглавие.
Разбира се, div елементите също не са забранени в HTML5, а по-скоро трябва да се използват и в бъдеще. Интересни са например в ситуации, когато трябва да съберете елементи.
Накрая, още веднъж забележката относно оптическите ефекти на досегашните представени елементи. Фактически, за да приложите съответно форматиране, ви е необходим CSS. Обикновеното използване на показаните елементи няма ефект в браузъра. Вие структурирате съдържание само със семантика. Всичко, което има отношение към визията, се контролира чрез стилове.