首页 > web前端 > css教程 > 字母间距被打破了,那里我们对此无能为力...也许

字母间距被打破了,那里我们对此无能为力...也许

Christopher Nolan
发布: 2025-03-08 11:56:22
原创
982 人浏览过

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
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板