In right-to-left language(like Arabic and Hebrew),bracket reversed

♀尐吖头ヾ 提交于 2020-02-27 22:26:22

问题


Now I have a string like (in ltr)

Hebrew text(3)

and when I use dir="rtl" or direction:rtl to redirect the string it actually goes:

מחיר אחד(3)

(actually i entered Hebrew charactor(3) just now it automaticlly became like above↑)

is there any way to make it like

(3)Hebrew text

(using html or css)


回答1:


You don't need to wrap the bracketed text in a separate span.

Rather, to fix this problem add a RLM control character (‏) after the closing bracket. The RLM character acts as another Hebrew/Arabic character and so the bracket ( which is a weak character) changes its direction and moves to its correct place.

Like so:

<div>מחיר אחד(3)&rlm;</div>

NB: If you set the attribute dir="rtl" on the element - then even the RLM control character is unnecessary.

Like so:

<div dir="rtl">מחיר אחד(3)</div>

CODEPEN (jsFiddle down by me)

This microsoft doc explains the RLM control character along with other similar control characters.




回答2:


(updated: thank you rob for clarifying your comment)

this is a little less invasive solution (result in jsFiddle):

<span lang="he" dir="rtl">מחיר אחד<span>(3)</span></span>

It seems the last parentheses is concidered as punctuation and thus treated differently. This article gave me some clarity:

... Note that unlike align="right", the punctuation will also relocated... See Sample RTL Document

In the sample document the same relocation of the last parentheses also occurs within the subtitle "Bidirectional Override (BDO)".

*checked the jsfiddle solution in latest chrome/ff/safari/ie




回答3:


one of the solutions is to add **&#x200e;** after the bracket

thanks to @freeworlder for the solution on brackets displays wrongly for right to left display style

even you can use other char, follow this link http://www.codetable.net/hex/200e



来源:https://stackoverflow.com/questions/18375417/in-right-to-left-languagelike-arabic-and-hebrew-bracket-reversed

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!