lang
Глобальный атрибут lang
помогает определить язык элемента: язык, на котором написаны нередактируемые элементы, или язык, на котором пользователем должны быть написаны редактируемые элементы. Атрибут содержит единственный “языковой тег” (language tag
) в формате, определённом в Tags for Identifying Languages (BCP47).
Интерактивный пример
Если значение атрибута — пустая строка (lang=""
), язык устанавливается, как неизвестный. Если тег языка недействителен согласно BCP47, он устанавливается, как недействительный.
Примечание: ## Синтаксис языкового тегаПодробный синтаксис BCP47 достаточно подробен, чтобы отмечать специфичные языковые диалекты, но в большинстве случаев его использование намного проще.Языковой тег состоит из языковых вложенных тегов, разделённых дефисом, где каждый вложенный тег указывает на определённое свойство языка. 3 наиболее распространённых вложенных тега:
- Языковой подтег
-
Обязателен. Двух-или-трёх-символьный код, определяющий базовый язык, обычно записываемый в нижнем регистре. К примеру, код английского языка является
en
, а для Бадеши —bdz
. - Подтег скрипта
-
Необязателен. Данный подтег определяет систему записи, и всегда состоящий из 4 символов с первой заглавной буквой. К примеру, французский язык Брайля — это
fr-Brai
, аja-Kana
— это японский язык, написанный с использованием алфавита Катакана (Katakana). Если язык написан типичным способом, например, английский с латинским алфавитом, нет необходимости использовать данный подтег. - Подтег региона
-
Необязателен. Данный подтег определяет диалект основного языка из определённого места и состоит из двух букв в ALLCAPS, соответствующих коду страны, или трёх цифр, соответствующих региону, который не относится к стране. К примеру,
es-ES
— это испанский язык, на котором разговаривают в Испании, аes-013
означает испанский язык, на котором разговаривают в Центральной Америке. “Международный испанский” было бы простоes
.Подтег скрипта предшествует подтегу региона, если присутствуют оба тега —ru-Cyrl-BY
— это русский язык, написанный кириллицей, на котором разговаривают в Беларуси.Чтобы найти правильный подтег кода языка, используйте the Language Subtag Lookup.
Даже если указан атрибут lang, то он может не учитываться, поскольку атрибут **xml:lang **имеет приоритет над lang.
Для псевдокласса CSS :lang
, два недопустимых названия языка будут разными, если их имена различны. Хотя, :lang(es)
соответствует обоим lang="es-ES"
и lang="es-419"
, но :lang(xyzzy)
не соответствует lang="xyzzy-Zorp!"
.
Спецификации
Specification |
---|
HTML Standard # attr-lang |
Совместимость с браузерами
BCD tables only load in the browser