CSS:全新 text-autospace 混排自動間距

2025/07/15 576 1 網站技術 , 資訊新聞 , CSS

在現代網頁設計中,「中英文混排」已成為極常見的情境。不論是產品說明、技術文件、社群貼文,甚至日常對話裡,我們都會看到中文、英文、數字和標點混合出現。但你是否也注意到,這種「混排」時,中文與英文、數字往往黏在一起、閱讀起來格外彆扭?這是因為 CSS 傳統上並沒有自動處理不同語系之間字距的方法,因此工程師與設計師過去常常需要手動加空格來優化排版。

現在,隨著 CSS 標準的進化,一個專門針對這個問題設計的屬性終於來了──text-autospace。這篇文章會完整介紹這個全新 CSS 屬性,讓你輕鬆打造乾淨美觀的中英混排效果,同時說明目前瀏覽器支援情況,以及最佳實踐建議。

什麼是 text-autospace?

text-autospace 是 CSS Text Module Level 4(屬於 CSS4 以後的現代模組)提出的新屬性,目的是自動判斷並插入不同語系字元之間的合適間距。這對中英文、日文、韓文、數字、標點「混排」的情境特別有幫助,可以大幅提升排版美感與閱讀性。

屬性語法與主要功能

text-autospace: normal | no-autospace | auto | <autospace>;
  • normal:預設行為,會自動為常見混排情境插入空格(例如漢字和英文、數字之間)。
  • no-autospace:關閉自動空格,維持預設黏在一起的樣子。
  • auto:讓瀏覽器自行決定最佳自動間距(不同平台實作可能不同)。
  • <autospace>:可細緻指定要針對哪些情境插入自動間距,如 ideograph-alpha(漢字與英文字母)、ideograph-numeric(漢字與數字)、punctuation(標點)、insert(僅無空格時插入)、replace(取代原有空格)。

範例比較

下方展示一段典型的中英文數字混排內容,分別在有啟用與未啟用 text-autospace 時的效果。

CodePen 範例

⚠️ 注意:需使用測試版 Chrome 140+、最新版 Safari 18.4+ 或支援 text-autospace 的瀏覽器才能看見效果。

【點我前往 CodePen 線上預覽範例】

你可以切換不同瀏覽器比較三種效果。啟用 text-autospace 時,中文字與英文、數字、標點之間都會自動產生合適間距,閱讀上更舒服。


▲ 如果你的瀏覽器都還沒支援,可以看我的範例截圖。

瀏覽器支援現況

截至 2025 年 7 月,text-autospace 已被列入現代瀏覽器的實驗性/正式標準,但各家瀏覽器的支援情形略有不同:

瀏覽器 支援狀態 最低版本 備註
Chrome / Edge 即將支援 140(2025/08) 須用測試版預覽
Safari 正式支援 18.4(2025/03) 包含 macOS / iOS
Firefox 實驗性開發中 尚未公布正式版 正式版未啟用
Android WebView 即將支援 140(2025/08)

實作技巧與最佳實踐

隨著 text-autospace 普及,中英混排網站、產品文件、部落格、新聞媒體的內容可直接享受自動化排版優勢。不過目前屬性仍屬於較新、實驗性質,建議採用漸進增強方式:

  1. 用 @supports 判斷是否支援:
    讓已支援的瀏覽器自動啟用,未支援時仍維持原狀或用 JS 輔助。

    @supports (text-autospace: normal) {
      body {
        text-autospace: normal;
      }
    }
  2. 避免過度手動加空格:
    有了 text-autospace,未來不需每句話都自己插半形空格,節省維護成本,也能防止多餘的空白導致排版跑版。

結語

隨著 text-autospace 加入現代 CSS 標準,中英文混排的排版痛點終於獲得業界級解法。設計師、工程師與內容創作者再也不需要為了「排版美感」手動加空格、調整版面,只要一行 CSS 就能自動處理語系間距,讓中英數混排看起來專業又易讀。

未來建議:

  • 持續關注各大瀏覽器的正式支援進度
  • 多善用 @supports 搭配新屬性
  • 持續優化內容設計,讓網站、產品說明、文章都能呈現最美觀的排版!

如果你還沒用過 text-autospace,現在就打開 CodePen 或你的專案試試看吧!

贊助廣告 ‧ Sponsor advertisements

留言區 / Comments

萌芽論壇