Атрибут lang тега <colgroup>
Описание
Атрибут lang для тега <colgroup> указывает язык содержимого всех ячеек в группе столбцов таблицы. Этот атрибут помогает браузерам и вспомогательным технологиям правильно интерпретировать и отображать текстовое содержимое.
<table border="1">
<colgroup lang="en"></colgroup>
<colgroup lang="fr"></colgroup>
<tr>
<td>English text</td>
<td>Texte en français</td>
</tr>
</table>
Форматы значений:
| Формат | Пример | Описание |
|---|---|---|
| Код языка | lang="en" |
Двухбуквенный код (ISO 639-1) |
| Код языка с регионом | lang="en-US" |
Язык + регион (ISO 3166) |
| Специальные значения | lang="zxx" |
Для контента без лингвистического содержания |
Рекомендации по использованию:
- Используйте для многоязычных таблиц
- Сочетайте с атрибутом
dirдля RTL-языков - Для точности указывайте регион (en-GB vs en-US)
- Проверяйте коды языков на соответствие стандартам
- Наследуется всеми ячейками в группе столбцов
Пример с разными языками:
<table>
<colgroup lang="de"></colgroup>
<colgroup lang="ar" dir="rtl"></colgroup>
<tr>
<td>Deutscher Text</td>
<td>نص عربي</td>
</tr>
</table>
Особенности работы:
- Влияет на выбор шрифта и перенос слов
- Меняет автоматическое исправление орфографии
- Используется скринридерами для выбора голоса
- Может влиять на отображение кавычек и дат
- Переопределяется атрибутом
langв ячейках
Пример с CSS:
<style>
:lang(ja) { font-family: "MS Gothic", sans-serif; }
:lang(ar) { font-size: 1.1em; }
</style>
<table>
<colgroup lang="ja"></colgroup>
<colgroup lang="ar"></colgroup>
<tr>
<td>日本語</td>
<td>العربية</td>
</tr>
</table>
Важные замечания:
- Не изменяет фактическое содержимое - только его интерпретацию
- Для чисел и дат используйте соответствующие форматы
- Проверяйте поддержку языков в целевых браузерах
- Не заменяет атрибут
dirдля RTL-языков - Для SEO указывайте основной язык в теге
<html>
Пример с микроданными:
<table itemscope itemtype="https://schema.org/Product">
<colgroup lang="en"></colgroup>
<tr>
<td itemprop="name">Product Name</td>
</tr>
</table>
Примечание: Хотя атрибут lang можно использовать с элементом <colgroup>, для сложных многоязычных таблиц часто лучше указывать язык на уровне отдельных ячеек или строк, особенно если в одном столбце содержится текст на разных языках.