首頁 > web前端 > css教學 > 字母間距被打破了,那裡我們對此無能為力...也許

字母間距被打破了,那裡我們對此無能為力...也許

Christopher Nolan
發布: 2025-03-08 11:56:22
原創
978 人瀏覽過

Letter Spacing is Broken and There's Nothing We Can Do About It... Maybe

>本文探討了CSS工作組(CSSWG)中有關letter-spacing屬性的有趣討論。 一位高級Mozilla開發人員強調了瀏覽器如何渲染該物業與其實際CSS規範之間的長期差異。這個看似簡單的屬性揭示了令人驚訝的複雜性。

>

核心問題源於瀏覽器如何處理字符之間的間距。儘管人類直觀地理解字母間距,但計算機需要定義的策略。是否應該在每個字母周圍,之後,之後或平均分配空間? 從左到右(LTR)和左至右(RTL)語言之間是否有區別? 所選的策略顯著影響文本測量和線路斷裂。

當前,瀏覽器實現偏離CSS規範。規格打算在字符之間發生間距,但是瀏覽器通常在每個字符的 end 處添加空間。這種不一致存在於不同的渲染引擎,例如壁虎(Firefox),眨眼(Chrome等)和Webkit(Safari)。 > CSS規範定義as:“指定印刷字符單元之間的其他間距。” 但是,通用的瀏覽器實現在每個字符的末尾增加了額外的空間,從而導致不對稱間距,尤其是在中心文本或RTL語言中引人注目。 在RTL語言中,差異在文本的開頭造成了差距。

為什麼這種差異? 改變既定的瀏覽器行為可能會因文本測量和線路斷開而改變的廣泛網站破裂。 網站可能已經通過解決方法來彌補了當前行為,從而使變化具有破壞性。

> letter-spacing正在考慮兩種潛在的解決方案:

>

選項1:返工空間分佈:可以修改規範以在每個字符之前和之後進行授權的平等空間分佈。這將產生對稱間距,但仍具有佈局變化的風險。

選項2:開發人員控制位置:

>引入一個新屬性(例如,),允許開發人員指定在何處應用間距(>,

>,

letter-spacing-justifybeforeafterleftrightbetweenaround)。這提供了靈活性,保持向後兼容性,同時為新項目提供了改進的間距控制。

考慮到CSSWG致力於解決此問題的承諾,維持現狀的第三種選擇不太可能。 最可能的結果似乎是選項2,為開發人員提供了對行為的更大控制。 實施更準確和一致的旅程正在進行中,突出了Web版式的複雜性。

以上是字母間距被打破了,那裡我們對此無能為力...也許的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板