Я работаю над веб-приложением, которое работает с многоязычным текстом.Он может иметь сочетание языков LTR, таких как английский и RTL, таких как арабский.
Ниже приведен мой код
Дело 1
<div style="direction: rtl;"><div ><span >
<span>تتتتتتتتت يصيصيصيي </span>
<span>1234 5678</span>
</span></div></div>
Ожидаемый результат
1234 5678 تتتتتتتتت يصيصيصيي
Фактический вывод
تتتتتتتتت يصيصيصيي 1234 5678
дело2
<div style="direction: rtl;"><div ><span >
<span>تتتتتتتتت يصيصيصيي </span>
<span>abc</span>
<span>1234 5678</span>
</span></div></div>
Ожидаемый вывод
1234 5678 abc تتتتتتتتت يصيصيصيي
Фактический вывод
abc 1234 5678 تتتتتتتتت يصيصيصيي
Чтобы исправить проблему, я добавил тег dir = "auto", чтобы охватить число "Он правильно отображается. Я не понимаю, почему это работает и будет ли оно работать во всех случаях.
case 1
<div style="direction: rtl;"><div ><span >
<span>تتتتتتتتت يصيصيصيي </span>
<span dir="auto">1234 5678</span>
</span></div></div>
Case 2
<div style="direction: rtl;"><div ><span >
<span>تتتتتتتتت يصيصيصيي </span>
<span>abc</span>
<span dir="auto">1234 5678</span>
</span></div></div>
Теперь мой вопрос: поскольку число имеет слабую направленность, как решение этой проблемы решается добавлением автоматического тега? Я не буду знать диапазон, соответствующий числу во время выполнения. Могу ли я добавить dir = "auto" ко всем диапазонам?
Как правильно решить эту проблему. Внутренний текст span может быть на любом языке (не обязательно на английском).