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 Status Comment
HTML Living Standard
Определение 'lang' в этой спецификации.
Живой стандарт

No change from latest snapshot,HTML 5.1

HTML 5.1
Определение 'lang' в этой спецификации.
Рекомендация Snapshot of HTML Living Standard, no change from HTML5
HTML5
Определение 'lang' в этой спецификации.
Рекомендация Snapshot of HTML Living Standard, behavior with xml:lang and language determination algorithm defined. It also is a true global attribute.
HTML 4.01 Specification
Определение 'lang' в этой спецификации.
Рекомендация Supported on all elements but <applet>, <base>, <basefont>, <br>, <frame>, <frameset>, <iframe>, <param>, and <script>.

Совместимость с браузерами

Update compatibility data on GitHub
КомпьютерыМобильные
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome для AndroidFirefox для AndroidOpera для AndroidSafari on iOSSamsung Internet
langChrome Полная поддержка ДаEdge Полная поддержка 12Firefox Полная поддержка ДаIE Полная поддержка ДаOpera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка ДаChrome Android Полная поддержка ДаFirefox Android Полная поддержка ДаOpera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка Да

Легенда

Полная поддержка  
Полная поддержка

Смотрите также