Атрибут lang тега <dt>
Описание
Атрибут lang указывает язык содержимого элемента <dt> (термина в списке определений). Это важно для:
- Правильного отображения текста (шрифты, кавычки)
- Корректной работы синтеза речи в скринридерах
- Автоматического перевода контента
- Проверки орфографии в редактируемых элементах
Наследование: Если не указан, язык наследуется от родительского элемента
<dl> или <html>.
Пример использования:
<dl>
<dt lang="en">JavaScript</dt>
<dd>Язык программирования для веб-страниц</dd>
<dt lang="la">Lorem ipsum</dt>
<dd>Текст-заполнитель в дизайне</dd>
</dl>
Форматы значений:
| Формат | Пример | Описание |
|---|---|---|
| Двухбуквенный код | lang="ru" |
ISO 639-1 (русский язык) |
| Код с регионом | lang="pt-BR" |
Португальский (Бразилия) |
| Код сценария | lang="zh-Hant" |
Китайский традиционный |
Практическое применение:
<dl>
<dt lang="en">Web Accessibility</dt>
<dd>Доступность веб-контента для людей с ограничениями</dd>
<dt lang="fr">Bonjour</dt>
<dd>Французское приветствие</dd>
</dl>
Использование с CSS:
<style>
/* Разные шрифты для разных языков */
dt[lang="zh"] { font-family: "Noto Sans CJK SC", sans-serif; }
dt[lang="ar"] { font-family: "Traditional Arabic", serif; }
/* Стили для иностранных терминов */
dt[lang]:not([lang="ru"]) {
font-style: italic;
color: #6c757d;
}
</style>
<dl>
<dt lang="ru">DOM</dt>
<dd>Объектная модель документа</dd>
<dt lang="en">API</dt>
<dd>Интерфейс программирования</dd>
</dl>
Динамическое изменение:
<dl>
<dt id="term-lang">Computer</dt>
<dd>Электронное устройство</dd>
</dl>
<button onclick="changeLang('ru')">Русский</button>
<button onclick="changeLang('en')">English</button>
<script>
function changeLang(lang) {
const term = document.getElementById('term-lang');
term.lang = lang;
term.textContent = lang === 'ru' ? 'Компьютер' : 'Computer';
}
</script>
Рекомендации по использованию:
- Всегда указывайте основной язык документа в
<html lang="..."> - Используйте для терминов на иностранных языках
- Для сложных случаев используйте BCP 47 теги
- Проверяйте коды языков в IANA Language Subtag Registry
- Сочетайте с
dirдля RTL-языков
Пример с микроформатами:
<dl itemscope itemtype="https://schema.org/DefinedTerm">
<dt itemprop="name" lang="en">HTML</dt>
<dd itemprop="description">Язык гипертекстовой разметки</dd>
</dl>
Примечание: Правильное указание языка терминов особенно важно для многоязычных словарей и технической документации. Это улучшает доступность контента и помогает автоматическим системам перевода.