Атрибут lang тега <th>
Описание
Атрибут lang в теге <th> указывает язык содержимого заголовочной ячейки таблицы. Это важно для корректного отображения текста, проверки орфографии и синтеза речи.
<table border="1">
<tr>
<th lang="ru">Заголовок на русском</th>
<th lang="en">English header</th>
</tr>
<tr>
<td>Данные</td>
<td>Data</td>
</tr>
</table>
Форматы значений:
| Тип значения | Пример | Описание |
|---|---|---|
| Код языка (2 символа) | lang="ru" |
Основной код языка по ISO 639-1 |
| Код языка с регионом | lang="pt-BR" |
Язык + регион (бразильский португальский) |
| Специальные значения | lang="zxx" |
Для контента без лингвистического содержания |
Особенности работы:
- Влияет на проверку орфографии (при
spellcheck="true") - Используется скринридерами для правильного произношения
- Может влиять на типографику (кавычки, переносы слов)
- Наследуется дочерними элементами
Рекомендации:
- Указывайте для многоязычных таблиц
- Используйте правильные коды языков
- Сочетайте с атрибутом
translateпри необходимости - Для смешанного контента указывайте язык ближайшего родителя
Ограничения:
- Не все браузеры полностью поддерживают все аспекты
- Нет автоматического перевода содержимого
- Может конфликтовать с системными настройками языка
- Ограниченная поддержка редких языков
Пример с CSS:
<style>
th:lang(ar) {
font-family: 'Arabic Font', sans-serif;
direction: rtl;
}
th:lang(zh) {
font-family: 'SimSun', serif;
}
</style>
<table border="1">
<tr>
<th lang="ar">عنوان</th>
<th lang="zh">标题</th>
</tr>
</table>
Примечание: Для сложных мультиязычных проектов:
- Используйте языковые файлы для перевода
- Рассмотрите атрибут
translate - Проверяйте отображение в разных языковых версиях браузеров