HTML/Глобальный атрибут xml:lang
Синтаксис
(X)HTML
<[элемент] xml:lang="[значение]" lang="[значение]"> ... </[элемент]>
Описание
Глобальный атрибут / параметр xml:lang
(от англ. «language» ‒ «язык») указывает в XHTML документах базовый язык содержимого элемента и текстовых значений атрибутов элемента.
Примечание
Для облегчения перехода от XHTML допускается использование данного атрибута в HTML5 только при условии, что он будет использован совместно с глобальным атрибутом «lang
» и будет иметь такое же значение, как и атрибут «lang
» (без учёта регистра символов). При этом значение атрибута «xml:lang
» будет иметь приоритет.
Поддержка браузерами
Chrome
Поддерж.
Firefox
Поддерж.
Opera
Поддерж.
Maxthon
Поддерж.
IExplorer
Поддерж.
Safari
Поддерж.
iOS
Поддерж.
Android
Поддерж.
Спецификация
Верс. | Раздел | |
---|---|---|
HTML | ||
2.0 | ||
3.2 | ||
4.01 | ||
5.0 | 3.2.5.3 The lang and xml:lang attributes | Перевод |
5.1 | 3.2.5.3. The lang and xml:lang attributes | |
XHTML | ||
1.0 | C.7. The lang and xml:lang Attributes DTD: Transitional
Strict
Frameset | Перевод |
1.![]() | Extensible HyperText Markup Language |
Значения
В качестве значения указывается код (человеческого) языка.
Пример использования
Листинг кода
<!DOCTYPE html>
<head>
<meta charset=»utf-8″>
<title>Глобальный параметр xml:lang</title>
</head>
<body>
<h2>Пример с «xml:lang»</h2>
<p>Он сказал мне: <span lang=»en» xml:lang=»en»>»Do you speak English?»</span></p>
<p>На что я ему ответил: <span lang=»en» xml:lang=»en»>»Yes, I speak English!»</span></p>
</body>
</html>
Глобальный параметр xml:lang
lang | Yocton
Глобальный атрибут lang
(от англ. «language» ‒ «язык») позволяет задать язык элемента и для нередактируемых элементов, и для редактируемых элементов, которые заполняются пользователем.
<html>
устанавливает язык для всего текста на странице. Авторам рекомендуется указывать атрибут lang
в элементе html, указав приоритетный язык документа, что помогает инструментам синтеза речи и инструментам перевода. В качестве задаваемого значения должно выступать значение допустимое документом BCP 47.Синтаксис
<element lang="значение">
Например,
<div lang="ru">Этот тект на русском языке</div>
Значения атрибута
Если значением атрибута является пустая строка lang = ""
, то язык устанавливается на неизвестный, а если значение атрибута недопустимо в соответствии с BCP47, он считается недействительным.
Полный синтаксис BCP47 достаточно сложен, чтобы указывать специфические языковые диалекты, но в большинстве случаях это не требуется.
Так предусмотрено указание через дефис (-) подверсии языка (версия языка: en-us, zh-gan; набор символов для написания: sr-Latn ‒ сербский-латиница).
Имеется три наиболее распространенных вида субтега:
Языковой субтег Обязательный. Все языковые тэги должны начинаться с субтэга основного языка. 2-или-3-символьный код, который определяет базовый язык, обычно записываемый строчными буквами. Например, код языка для английского — en , а код для Бадеши — bdz .
Субтеги письменности Необязательный. Субтеги письменности должны быть использованы в качестве части языкового тэга только тогда, когда необходимо передать какую-то отличительную информацию через тэг. Обычно это случаи, когда один язык использует различные типы письма или когда контент был записан с помощью нетипичной для данного языка письменности (например, русский текст, написанный латиницей, будет иметь такой тег: ru-Latn). Субтеги письменности всегда состоят из четырёх букв, и должны идти после любых субтегов языка или диалекта и до всех других субтегов. Этот субтег определяет систему записи, используемую для языка, и всегда имеет длину 4 символа, причем первая буква заглавная.
fr-Brail
а ja-Kana
— японский, написанный с алфавитом катаканы. Если язык написан весьма типичным способом, например, английский в латинском алфавите, нет необходимости использовать этот субтег.Субтеги региона Необязательный. Этот субтег определяет диалект базового языка из определенного места и представляет собой либо 2 прописные буквы , соответствующие коду страны, либо 3 числа, соответствующие области, не относящейся к стране. Субтэги региона связывают выбранный вами субтэг языка с определённым регионом мира. Субтэги региона должны идти после всех субтэгов языка и письменности. Как и субтэги письменности, субтэги региона следует использовать только, если они вносят информацию, необходимую, чобы отличить этот языковой тэг от другого; если нет — отбрасывайте его. Например,
en-GB
может быть полезным отличием при проверке правописания, но субтэг региона в ja-JP
вряд ли полезен, если только вы намеренно не подчёркиваете, что это не японский, используемый в других частях мира.
es-ES
означает испанский, на котором говорят в Испании, тогда, как es-419
означает испанский, распространённый в Латинской Америке Субтег письменности предшествует региону, если присутствуют оба, например, ru-Cyrl-BY
является русским, написанным на кириллице, как говорят в Беларуси.Даже если атрибут lang
установлен, он нен учитывется, если установлен атрибут xml:lang
, т.к. он имеет больший приоритет.
Для CSS псевдо-класса :lang
:lang(es)
соответствует и lang="es-ES"
, и lang="es-419"
, а вот значение :lang(xyzzy)
не будет соответствовать lang="xyzzy-Zorp!"
.Коды распространенных языков
Язык | Код |
---|---|
Абхазский | ab |
Азербайджанский | az |
Аймарский | ay |
Албанский | sq |
Английский | en |
Американский английский | en-us |
Арабский | ar |
Армянский | hy |
Ассамский | as |
Африкаанс | af |
Башкирский | ba |
Белорусский | be |
Бенгальский | bn |
Болгарский | bg |
Бретонский | br |
Валлийский | cy |
Венгерский | hu |
Вьетнамский | vi |
Галисийский | gl |
Голландский | nl |
Греческий | el |
Грузинский | ka |
Гуарани | gn |
Датский | da |
Зулу | zu |
Иврит | iw |
Идиш | ji |
Индонезийский | |
Интерлингва (искусственный язык) | ia |
Ирландский | ga |
Исландский | is |
Испанский | es |
Итальянский | it |
Казахский | kk |
Камбоджийский | km |
Каталанский | ca |
Кашмирский | ks |
Кечуа | qu |
Киргизский | ky |
Китайский | zh |
Корейский | ko |
Корсиканский | co |
Курдский | ku |
Лаосский | lo |
Латвийский, латышский | lv |
Латынь | la |
Литовский | lt |
Малагасийский | mg |
Малайский | ms |
Мальтийский | mt |
Маори | mi |
Македонский | mk |
Молдавский | mo |
Монгольский | mn |
Науру | na |
Немецкий | de |
Непальский | ne |
Норвежский | no |
Пенджаби | pa |
Персидский | fa |
Польский | pl |
Португальский | pt |
Пуштунский | ps |
Ретороманский | rm |
Румынский | ro |
Русский | ru |
Самоанский | sm |
Санскрит | sa |
Сербский | sr |
Словацкий | sk |
Словенский | sl |
Сомали | so |
Суахили | sw |
Суданский | su |
Тагальский | tl |
Таджикский | tg |
Тайский | th |
Тамильский | ta |
Татарский | tt |
Тибетский | bo |
Тонга | to |
Турецкий | tr |
Туркменский | tk |
Узбекский | uz |
Украинский | uk |
Урду | ur |
Фиджи | fj |
Финский | fi |
Французский | fr |
Фризский | fy |
Хауса | ha |
Хинди | hi |
Хорватский | hr |
Чешский | cs |
Шведский | sv |
Эсперанто (искусственный язык) | eo |
Эстонский | et |
Яванский | jw |
Японский | ja |
Пример
<p lang="ru" >Евклид (др.-греч. <span lang="el">Εὐκλείδης </span>) — древнегреческий математик, автор первого из дошедших до нас теоретических трактатов по математике.</p>
Совместимость браузеров
Настольные браузеры
Базовая поддержка | да | да | да | да | да | да |
---|
Мобильные браузеры
Базовая поддержка | да | да | да | да | да | да | да |
---|
См. также:
- WHATWG HTML Living Standard
- HTML5
lang — HTML: язык гипертекстовой разметки
Глобальный атрибут lang
помогает определить язык элемента: язык, на котором написаны нередактируемые элементы, или язык, на котором редактируемые элементы должны быть написаны пользователем. Атрибут содержит один «языковой тег» в формате, определенном в Теги для идентификации языков (BCP47) .
Значение по умолчанию для lang
— unknown
, поэтому рекомендуется всегда указывать для этого атрибута соответствующее значение.
Исходный код этого интерактивного примера хранится в репозитории GitHub. Если вы хотите внести свой вклад в проект интерактивных примеров, клонируйте https://github.com/mdn/interactive-examples и отправьте нам запрос на включение.
Если значением атрибута является пустая строка ( lang=""
), язык устанавливается равным unknown ; если языковой тег недействителен в соответствии с BCP47, он устанавливается на недействительным .
Синтаксис языкового тега
Полный синтаксис BCP47 является достаточно подробным, чтобы помечать очень специфические языковые диалекты, но в большинстве случаев использование намного проще.
Языковой тег состоит из разделенных дефисом языковых вложенных тегов , где каждый вложенный тег указывает на определенное свойство языка. 3 наиболее распространенных вложенных тега:
- Языковой вложенный тег
- Обязательно. Двух- или трехсимвольный код, определяющий базовый язык, обычно пишется строчными буквами. Например, код языка для английского — 9.0004 en , а код Бадеши —
bdz
. - Вложенный тег сценария
- Дополнительно. Этот вложенный тег определяет систему письма, используемую для языка, и всегда имеет длину 4 символа, причем первая буква заглавная. Например, французский шрифт Брайля — это
fr-Brai
, аja-Kana
— это японский алфавит катакана. Если язык написан очень типичным способом, например, английский латинским алфавитом, нет необходимости использовать этот подтег. - Вложенный тег региона
- Дополнительно. Этот вложенный тег определяет диалект базового языка из определенного места и представляет собой либо 2 буквы в ALLCAPS, соответствующие коду страны, либо 3 цифры, соответствующие области за пределами страны.
Например,
es-ES
соответствует испанскому языку, на котором говорят в Испании, аes-013
— испанскому языку, на котором говорят в Центральной Америке. «Международный испанский» будет простоes
.
Вложенный тег script предшествует вложенному тегу региона, если оба присутствуют — ru-Cyrl-BY
— это русский язык, написанный кириллицей, как говорят в Беларуси.
Чтобы найти правильные коды вложенных тегов для языка, попробуйте Поиск языковых вложенных тегов.
Даже если установлен атрибут lang , он может не учитываться, так как атрибут xml:lang имеет приоритет.
Для псевдокласса CSS :lang
два недопустимых имени языка различны, если их имена различны. Итак, в то время как :lang(es)
соответствует обоим lang="es-ES"
и lang="es-419"
, :lang(xyzzy)
будет соответствовать , а не , lang="xyzzy-Zorp!"
.
Технические характеристики
Спецификация | Статус | Комментарий |
---|---|---|
HTML Living Standard Определение «язык» в этой спецификации. | Уровень жизни | Нет изменений по сравнению с последним моментальным снимком, HTML 5.1 |
HTML 5.1 Определение языка в этой спецификации. | Рекомендация | Снимок HTML Living Standard, без изменений по сравнению с HTML5 |
HTML5 Определение языка в этой спецификации. | Рекомендация | Моментальный снимок HTML Living Standard, определено поведение с xml:lang и алгоритм определения языка. Это также настоящий глобальный атрибут. |
Спецификация HTML 4.01 Определение языка в этой спецификации. ![]() | Рекомендация | Поддерживается для всех элементов, кроме , и . |
Совместимость с браузером
Таблица совместимости на этой странице создана на основе структурированных данных.Если вы хотите внести свой вклад в данные,посетите https:
Рабочий стол | Мобильный | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | Веб-просмотр Android | Chrome для Android | Firefox для Android | Opera для Android | Safari для iOS | Samsung Internet | |
язык | ChromeПолная поддержкаДа | КрайПолная поддержка12 | FirefoxПолная поддержкаДа | ИЭПолная поддержкаДа | ОпераПолная поддержкаДа | СафариПолная поддержкаДа | WebView AndroidПолная поддержкаДа | Chrome AndroidПолная поддержкаДа | Firefox AndroidПолная поддержкаДа | Opera AndroidПолная поддержкаДа | Safari iOSПолная поддержкаДа | Samsung Интернет AndroidПолная поддержкаДа |
Легенда
- Полная поддержка
- Полная поддержка
См.

- Все глобальные атрибуты.
Язык содержимого
Заголовок HTTP
Для чего используется атрибут HTML Lang?
Для чего используется атрибут HTML Lang?
Для чего используется атрибут HTML Lang?
share-outline Курс Javascript — освоение основАвтор Мринал БхаттачарьяБесплатнозвезда 4.8Зачислено:1000Курс Javascript-Освоение основМринал БхаттачарьяБесплатноНачать обучениеДля чего используется атрибут HTML Lang?
Атрибут языка HTML указывает язык содержимого документа,веб-страницы или элемента.Некоторые примеры языков:en для английского,fr для французского,ko для корейского,fil для филиппинского и т.д.Атрибут улучшает поисковую оптимизацию и цифровую доступность контента.
В приведенном выше примере показаны две веб-страницы.Значение lang для первого будет «en»,относящееся к английскому языку.Значение lang для второго будет «fil»,относящееся к филиппинскому,основному языку,используемому здесь.
Синтаксис
Значения атрибутов
Атрибут lang HTML принимает однозначный код языка ISO,который относится к языку содержимого.
Примечание:
- Первые два символа в значении атрибута определяют язык по умолчанию.За ним часто следуют два символа(необязательно),представляющие код страны.
- В HTML 4.1 атрибут lang можно использовать с
,
,,,
,,иэлементов,тогда как в HTML5 действует как глобальный элемент,который можно использовать вместе с любым элементом HTML.
Пример
HTML
Примечание.Следующий код CSS используется только для стилизации.
CSS
Вывод
Как атрибут HTML Lang способствует доступности?
Определяя язык данного текста,атрибут lang помогает программам чтения с экрана изменять языковые профили для обеспечения правильного акцента и произношения.
Добавление атрибута lang улучшает соответствие Руководству по доступности веб-контента(WCAG),согласованным стандартам цифровой доступности.
Если значение атрибута не указано,язык считается неизвестным,а если языковой тег имеет значение,недопустимое в соответствии с BCP47,он устанавливается как недопустимый.
Распространенные ошибки,которых следует избегать при использовании атрибута lang
Реализация атрибута lang проста,но необходима.Важно избегать основных ошибок для правильного функционирования атрибута.
Правильное использование должно быть:
Используйте стандартный код языка вместо предполагаемых значений.
Например:английский,на котором говорят в Соединенном Королевстве,имеет номер,а не.
Атрибуты языка должны быть согласованы.Если веб-сайты объявляют языки как с HTML,так и с XML,атрибут HTML lang должен быть идентичен атрибуту XML:lang.Например:
Для веб-сайтов с несколькими языками атрибут lang должен быть наиболее часто используемым языком на странице.Если все языки имеют одинаковую частоту,атрибут lang должен быть первым языком,который появляется на странице.Язык каждого элемента должен быть указан отдельно,чтобы переопределить значение по умолчанию.
Может ли атрибут HTML Lang улучшить поисковую оптимизацию?
Атрибут HTML langраспознает язык текстового содержимого в Интернете.Эта информация используется поисковыми системами для возврата результатов на конкретном языке,что улучшаетпоисковую оптимизацию.