Атрибут lang тега <header>
Описание
Атрибут lang определяет язык содержимого внутри тега <header>. Это помогает браузерам, скринридерам и поисковым системам правильно интерпретировать текст.
<header lang="en">
<h1>Welcome to our website</h1>
<p>International content</p>
</header>
<header lang="ar" dir="rtl">
<h1>مرحبا بكم</h1>
<p>محتوى باللغة العربية</p>
</header>
Форматы значений:
| Формат | Пример | Описание |
|---|---|---|
| Двухбуквенный код | lang="fr" |
Французский язык (ISO 639-1) |
| Код с регионом | lang="pt-BR" |
Бразильский португальский |
| Языковой подтег | lang="zh-Hans" |
Китайский (упрощенный) |
Динамическое изменение:
<header id="multiLangHeader" lang="en">
<h1>Language switcher</h1>
</header>
<button onclick="switchLang('es')">Español</button>
<button onclick="switchLang('de')">Deutsch</button>
<script>
function switchLang(lang) {
const header = document.getElementById('multiLangHeader');
header.lang = lang;
header.querySelector('h1').textContent =
lang === 'es' ? 'Bienvenido' :
lang === 'de' ? 'Willkommen' : 'Welcome';
}
</script>
Рекомендации по использованию:
- Сочетайте с атрибутом
dirдля RTL-языков - Указывайте основной язык в теге
<html> - Для многоязычных страниц помечайте языковые секции
- Используйте правильные коды языков (ISO 639)
- Помогает скринридерам с произношением
Пример с CSS для разных языков:
<style>
:lang(ja) { font-family: "MS Gothic", sans-serif; }
:lang(he) { font-family: "David", serif; direction: rtl; }
:lang(fr) { font-style: italic; }
</style>
<header lang="ja">
<h1>ようこそ</h1>
</header>
<header lang="he" dir="rtl">
<h1>ברוך הבא</h1>
</header>
SEO и доступность:
- Влияет на определение языка поисковыми системами
- Помогает браузерам предложить перевод
- Важен для скринридеров (произношение)
- Учитывается в инструментах доступности
- Не заменяет hreflang для многоязычных сайтов
Примечание: Правильное использование атрибута lang особенно важно для многоязычных сайтов и контента на редких языках. Всегда проверяйте коды языков в официальных реестрах ISO и используйте уточнения для региональных вариантов (например, en-US vs en-GB).