Атрибут translate тега <bdo>


Описание

Атрибут translate для тега <bdo> определяет, должен ли текст с измененным направлением переводиться автоматическими системами перевода. Это особенно важно для:

  • Имен собственных и терминов, которые должны оставаться в оригинале
  • Текстов, где направление письма критически важно
  • Контента, который уже является переводом

Пример использования:

<!-- Имя не должно переводиться --> <bdo dir="rtl" lang="ar" translate="no"> محمد </bdo> <!-- Термин можно переводить --> <bdo dir="rtl" lang="he" translate="yes"> מחשב </bdo>

Значения атрибута:

Значение Описание Рекомендуемый случай
yes Разрешает перевод (по умолчанию) Обычный текст на RTL-языках
no Запрещает перевод Имена, названия, термины, коды

Критические сценарии:

<!-- 1. Имена людей --> <bdo dir="rtl" lang="he" translate="no">דוד</bdo> <!-- 2. Названия мест --> <bdo dir="rtl" lang="ar" translate="no">القاهرة</bdo> <!-- 3. Технические термины --> <bdo dir="ltr" lang="en" translate="no">blockchain</bdo>

Особенности работы:

  • Работает в сочетании с атрибутами dir и lang
  • Поддерживается большинством современных браузеров
  • Не влияет на ручной перевод человеком
  • Особенно важен для RTL-языков (арабский, иврит)

Ограничение: Google Translate может игнорировать этот атрибут в некоторых случаях. Для важного контента дублируйте информацию в data- атрибутах.

Рекомендации:

  • Всегда указывайте translate="no" для имен и названий
  • Для терминов добавляйте пояснение в title или aria-label
  • Сочетайте с правильным lang для точного определения языка
  • Тестируйте поведение в разных системах перевода