<MyRusakov.ru />

Профессиональная Web-разработка. Дизайн, код и автоматизация

Профессиональная Web-разработка. Дизайн, код и автоматизация

Это очень подробный курс из разряда "всё включено". Разбираются следующие темы: HTML, CSS, SCSS, JavaScript, PHP, SQL, Laravel, Nginx, PostCSS, npm, Vite, Vitest, Composer, PHPUnit, Prettier, Stylelint, ESLint, Pint, Larastan, Git, Agile, Scrum, Docker, Supervisord, Figma, Stitch AI, Confluence, Jira.

Рассчитан и на новичков, и на тех, кто уже знаком с основами, но хочет освоить полный цикл разработки.

Помимо самой теории, Вы увидите пример создания Web-проекта на 20 000 строк кода: от идеи и документации на Confluence через планирование на Jira, fullstack-разработку до деплоя на VPS.

Помимо уроков, курс содержит упражнения для закрепления знаний и финальное тестирование. А ещё Вы получите 5 полноценных Бонусных курсов: «GitLab под ключ», «Вёрстка сайта с нуля 2.0», «JavaScript с Нуля до Гуру 2.0», «PHP и MySQL с Нуля до Гуру 3.0» и «Laravel от А до Я».

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Атрибут lang в HTML: как правильно указать язык страницы и зачем это нужно

Атрибут lang в HTML: как правильно указать язык страницы и зачем это нужно

Поисковый запрос «атрибут lang в HTML» часто задают новички, которые уже умеют создавать базовую страницу, но не до конца понимают, зачем в теге <html> пишут язык. На практике это не «формальность», а важная часть доступности, SEO и корректной работы браузера.

Что такое атрибут lang в HTML

lang — это глобальный HTML-атрибут, который сообщает язык содержимого элемента. Чаще всего его указывают у корневого элемента <html>, потому что так задаётся язык всей страницы.

<!doctype html>
<html lang="ru">
<head>
  <meta charset="UTF-8">
  <title>Мой сайт</title>
</head>
<body>
  <h1>Привет, мир!</h1>
</body>
</html>

В примере значение ru означает, что основной язык страницы — русский. Для английского используют en, для немецкого — de, для французского — fr.

Зачем нужен lang: 4 практические причины

  • Доступность. Скринридеры корректно выбирают произношение текста. Без lang русская страница может читаться английским синтезатором.
  • SEO. Поисковые системы лучше понимают язык контента и аудиторию страницы.
  • Автоперевод. Браузеры и сервисы перевода точнее определяют исходный язык.
  • Типографика и проверка орфографии. Некоторые инструменты используют язык страницы для подсказок и правил обработки текста.

Если вы хотите не просто знать отдельные теги, а уверенно собрать полноценную страницу с правильной структурой, адаптивностью и аккуратной вёрсткой, посмотрите практический курс «Вёрстка сайта с нуля 2.0» — он хорошо дополняет такие базовые темы HTML.

Как правильно выбрать значение lang

Значение атрибута обычно состоит из языкового кода по стандарту BCP 47. В большинстве случаев достаточно короткого кода языка:

<html lang="ru">  <!-- русский -->
<html lang="en">  <!-- английский -->
<html lang="uk">  <!-- украинский -->
<html lang="es">  <!-- испанский -->

Иногда полезно указать регион. Например, английский для США и английский для Великобритании отличаются лексикой и форматами:

<html lang="en-US">
<html lang="en-GB">
<html lang="pt-BR">

Для русскоязычного сайта чаще всего пишут просто ru. Вариант ru-RU не является ошибкой, но обычно избыточен, если нет причины уточнять регион.

Многоязычные фрагменты на странице

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

<p>
  Термин <span lang="en">responsive design</span>
  переводится как адаптивный дизайн.
</p>

<blockquote lang="en">
  The details are not the details. They make the design.
</blockquote>

Правило простое: у <html> задаём основной язык страницы, а у отдельных элементов — язык исключений.

lang, charset и hreflang: в чём разница

Новички часто путают три похожие, но разные вещи:

  • lang — язык содержимого HTML-элемента;
  • charset — кодировка документа, обычно UTF-8;
  • hreflang — подсказка поисковикам о языковых версиях страницы.

Минимальный корректный пример для обычной русскоязычной страницы выглядит так:

<!doctype html>
<html lang="ru">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Каталог товаров</title>
</head>
<body>
  <h1>Каталог товаров</h1>
</body>
</html>

А если у сайта есть русская и английская версии, в head можно добавить ссылки с hreflang:

<link rel="alternate" hreflang="ru" href="https://example.com/ru/">
<link rel="alternate" hreflang="en" href="https://example.com/en/">

Но это не заменяет атрибут lang. На каждой HTML-странице всё равно стоит указывать язык в <html>.

Атрибут dir для направления текста

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

<html lang="ar" dir="rtl">
...
</html>

Если на странице есть отдельный фрагмент на таком языке, направление можно задать локально:

<p lang="ar" dir="rtl">مرحبا بالعالم</p>

Типичные ошибки новичков

  • Не указывать lang вообще. Страница будет работать, но хуже с точки зрения доступности и качества разметки.
  • Писать неправильный код. Например, rus вместо ru или eng вместо en.
  • Ставить один язык для смешанного контента. Если большой блок на другом языке, укажите lang на этом блоке.
  • Путать lang и charset. UTF-8 отвечает за кодировку символов, а не за язык страницы.

Проверочный чек-лист

  • В теге <html> есть основной язык страницы: lang="ru", lang="en" и т.д.
  • Код языка написан по стандарту, без выдуманных сокращений.
  • Иноязычные цитаты и большие фрагменты размечены отдельным lang.
  • Для языков справа налево при необходимости указан dir="rtl".
  • В head присутствует meta charset="UTF-8".

Итог

Атрибут lang в HTML — маленькая деталь, которая влияет на доступность, SEO и корректную обработку страницы разными инструментами. Для большинства русскоязычных сайтов достаточно начать документ с <html lang="ru">, а для фрагментов на других языках указывать lang локально. Это простая привычка, которая сразу делает вашу HTML-разметку профессиональнее.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (https://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: https://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: https://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

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

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

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