Semantic HTML5

Категория: Дизайн

Какво е Semantic HTML5?

Semantic HTML5 се отнася до използването на HTML елементи, които носят значение и описват точното предназначение на съдържанието, вместо само да го оформят визуално. Тези елементи ясно описват тяхната роля както на браузърите и търсачките, така и на разработчиците.

Семантичният HTML помага да се създаде по-добре структурирано, достъпно и SEO-оптимизирано уеб съдържание.

Semantic срещу Non-Semantic HTML

Semantic HTML

  • Елементите имат значение
  • По-добра четливост на кода
  • Подобрена SEO оптимизация
  • По-добра достъпност
  • По-лесно поддържане
  • Пример: <header>, <nav>, <article>

Non-Semantic HTML

  • Елементите нямат значение
  • По-трудна четливост на кода
  • По-слаба SEO оптимизация
  • По-лоша достъпност
  • По-трудно поддържане
  • Пример: <div>, <span>

Основни Semantic HTML5 елементи

<header>

Представлява заглавна част на документ или раздел. Обикновено съдържа заглавия, лого и навигация.

<nav>

Дефинира секция с навигационни връзки. Използва се за основното меню на сайта.

<main>

Означава основното съдържание на документа. Трябва да бъде уникално за страницата.

<article>

Представлява независимо, самозадоволяващо се съдържание като статия, блог пост или новина.

<section>

Дефинира тематична група от съдържание, обикновено с заглавие.

<aside>

Представлява съдържание, което е косвено свързано с основното съдържание (странична лента).

<footer>

Представлява долен колонтитул за документ или раздел. Съдържа информация за автора, copyright и др.

<figure> и <figcaption>

Използват се за групиране на изображения, диаграми или код с техния заглавен текст.

<time>

Представлява времева дата или час. Може да включва атрибут datetime за машиночетим формат.

<mark>

Представлява текст, маркиран или подчертан за референтни или означителни цели.

Структура на Semantic HTML5 документ

Типична структура на Semantic HTML5 страница

  • <header> - Заглавна част
  • <nav> - Навигация
  • <main> - Основно съдържание
  • <main> - Основно съдържание
  • <section> - Секция
  • <article> - Статия
  • <aside> - Странична лента
  • <footer> - Долен колонтитул

Предимства от използването на Semantic HTML5

  • Подобрена SEO: Търсачките разбират по-добре структурата и съдържанието на вашия сайт
  • По-добра достъпност: Помощните технологии (екранни четци) могат по-лесно да навигират и разбират съдържанието
  • По-лесно поддържане: Кодът е по-четлив и по-лесен за разбиране от други разработчици
  • По-добра съвместимост: Семантичните елементи са стандартизирани и работят добре във всички модерни браузъри
  • По-добра структура: Уебсайтът има ясна, логична структура, която е лесна за разбиране
  • Бъдещо-устойчивост: Семантичният код е по-устойчив на промени в технологиите

Често срещани грешки и добри практики

ГрешкаДобра практикаОбяснение
Използване на <div> за всичкоИзползване на подходящи семантични елементиСемантичните елементи дават значение на съдържанието
Множество <header> и <footer> в <body>Един <header> и <footer> в <body>, но могат в други семантични елементи<header> и <footer> могат да се използват и в <article> и <section>
Объркване на <section> и <article><article> за независимо съдържание, <section> за тематични групи<article> трябва да има смисъл сам по себе си
Използване на <section> вместо <div> за стилизиране<section> само когато има семантично значение<div> е за групиране без семантика, <section> има значение
Пропускане на <main> елементаВинаги използвайте <main> за основното съдържание<main> помага на помощните технологии да идентифицират основното съдържание

Semantic HTML5

Създаване на по-добре структурирано, достъпно и SEO-оптимизирано уеб съдържание