Атрибут translate тега <audio>
Описание
Атрибут translate указывает, следует ли переводить текстовые атрибуты и содержимое элемента <audio> при автоматическом переводе страницы (например, в Google Translate).
<audio controls translate="no">
<source src="interview.mp3" type="audio/mpeg">
<track kind="subtitles" src="subtitles_en.vtt" srclang="en" label="English">
</audio>
Значения атрибута:
| Значение | Поведение | Рекомендуется для |
|---|---|---|
yes |
Разрешает перевод (по умолчанию) | Описательных текстов |
no |
Запрещает перевод | Технических названий, имен собственных |
Что влияет на перевод:
- Текст в атрибутах (title, aria-label)
- Субтитры (если не указан язык оригинала)
- Текст внутри тега (для браузеров без поддержки audio)
Практические примеры:
1. Запрет перевода технических элементов:<audio controls translate="no">
<source src="sound_effect.mp3" type="audio/mpeg">
Sound Effect ID: SE-2048
</audio>
<audio controls title="Инструкция по использованию" translate="yes">
<source src="tutorial.mp3" type="audio/mpeg">
Ваш браузер не поддерживает аудио элемент.
</audio>
Особенности работы:
- Не влияет на само аудио (только на текстовые атрибуты)
- Для субтитров учитывается атрибут
srclang - Не все инструменты перевода учитывают этот атрибут
- Наследуется от родительских элементов
Ограничения: Поддержка атрибута translate зависит от используемого сервиса перевода. Google Translate учитывает его, но другие инструменты могут игнорировать.
Лучшие практики:
- Используйте
translate="no"для:- Идентификаторов треков
- Технических названий файлов
- Имен собственных (артистов, альбомов)
- Сочетайте с
langдля точного указания языка контента - Тестируйте с реальными инструментами перевода
JavaScript управление:
const audio = document.querySelector('audio');
// Запретить перевод
audio.translate = 'no';
// Проверить текущее значение
console.log('Перевод разрешен:', audio.translate === 'yes');
Совет: Для многоязычных сайтов лучше реализовать собственный механизм перевода, чем полагаться на автоматические инструменты.
Примечание: Атрибут translate появился в HTML5 Living Standard и поддерживается большинством современных браузеров.