Skip to main content

Tedshd's Dev note

Category: RTL

網頁處理 RTL(Right To Left) 右到左的文字排版

# 前言 在 web 的世界中有一個需要處理的是文字排版的呈現 因為從電腦到整個計算機科學的領域都是在拉丁語系為主宗的國家發展的 所以在介面的文字排版上自然以從左到右為主 但是在這世界上的文字排版有從左到右, 上到下, 右到左等呈現方式 所以需要依照需求或不同語系的文字上有相對應的處理, 尤其是在多語系的情況下 上到下的排版大多是書面用的排版, 相對在資訊領域比較少呈現, 且因為上到下的排版方式也大多是亞洲地區的國家, 在標準化的話語權不高 但也漸漸在 web 領域中有開始支援上到下的排版(writing-mode) 且在資訊領域也大多是用左到右的呈現, 所以影響相對小 額外補充一下大部分的方塊文字像是中文、日文、韓文等其實左到右、右到左、上到下都可以書寫與呈現 但在部份語系像是 阿拉伯文 烏爾都文 庫德文 波斯文 希伯來文 上述文字排版就固定都是從右到左 除了希伯來文以外都是從阿拉伯文字延伸的, 就像是英文、德文、法文都是拉丁文延伸出來一樣 至於為何在世界各地的文字排版會有差異其實主要是起源於早期該文字書寫的方式與被書寫在什麼材質上面為主 右到左主要起源於早期是文字是刻在石板上面, 左手拿鑿子, 右手拿錘子, 這樣從右到左是相對順手的 中文早期大多從上到下從右到左的排列主要起源於以前是在竹片上捲成冊的(竹簡) 在單片竹片上面書寫自然是上到下, 那捲成冊之後在閱讀時為了方便持握, 會是左手拿著竹簡, 右手打開來看內容, 自然就變成了右到左來閱讀 不過現在大多也因為資訊科學的發展後在電子載體上就沿用左到右的排版(前面提到電腦乃至資訊科學都是在拉丁語系的國家發展出來的) 不過在亞洲地區的國家部分書面印刷還是有保留上到下右到左的排版 不過有點扯遠了 # 實作 RTL(Right To Left) 的方式 這次主要是要處理 RTL 的問題 但其實在實作上也很好解 HTML tag 有個屬性是 dir 只要設定是 rtl 或是 ltr 就可以了 那麼要在什麼情況下設定這個東西? 大致上會在兩種情況設定 ## 1. 多語系且有右到左語系 網站是多語系的網站且有右到左語系提供切換呈現 ...