Атрибут dir тега <pre>
Описание
Атрибут dir для тега <pre> определяет направление текста в блоке предварительно форматированного текста. Этот атрибут особенно полезен для языков с письмом справа налево (RTL), таких как арабский или иврит.
<pre dir="rtl">
זהו טקסט בעברית
בפורמט מוכן מראש
</pre>
<pre dir="ltr">
This is English text
in pre-formatted block
</pre>
Допустимые значения:
| Значение | Описание |
|---|---|
ltr |
Слева направо (по умолчанию для большинства языков) |
rtl |
Справа налево (для арабского, иврита и др.) |
auto |
Автоматическое определение направления (на основе содержимого) |
Особенности работы:
- Сохраняет пробелы и переносы строк, но меняет направление текста
- Не влияет на выравнивание текста (для выравнивания используйте CSS)
- Может комбинироваться с атрибутом
langдля лучшей семантики
Пример с автоматическим определением:
<pre dir="auto">
Hello - مرحبا
Text mixing English and Arabic
</pre>
Рекомендации:
- Используйте явное указание направления для моноязычного контента
- Для смешанного контента используйте
dir="auto" - Комбинируйте с CSS-свойством
unicode-bidi: embedдля сложных случаев - Для кода на RTL-языках сохраняйте
dir="ltr"если важен порядок символов
Пример с CSS стилизацией:
<style>
.arabic-text {
font-family: 'Traditional Arabic', Arial, sans-serif;
font-size: 1.2em;
padding: 10px;
background-color: #f5f5f5;
}
</style>
<pre dir="rtl" class="arabic-text">
النص العربي مع الحفاظ على التنسيق
</pre>
Важные замечания:
- Тег
<pre>сохраняет пробелы независимо от направления - Для кода на RTL-языках может потребоваться дополнительная настройка
- Проверяйте отображение в разных браузерах
Примечание: Хотя атрибут dir полезен для RTL-языков, для сложных сценариев смешанного направления текста рассмотрите использование CSS-свойств direction и unicode-bidi с более тонким контролем.