【发布时间】:2018-03-23 03:32:42
【问题描述】:
看看这个 Sassmeister,请让我知道最右边的深蓝色柱是从哪里来的。我不认为这是一个亚像素舍入问题,而是其他问题。
真正让我困惑的是,额外的位显示选择了 12、13 和 14 列,但没有选择 10、15 或 16 列,尽管 12 列意味着它是一个完整的数字。
1200 / 10 = 120
1200 / 12 = 100
1200 / 13 = 92.30769230769231
1200 / 14 = 85.71428571428571
1200 / 15 = 80
1200 / 16 = 75
因此,无论结果是整数还是分数,调试映像的行为都会有些奇怪。我还删除了排水沟,以确保它与那些无关。我认为这不是子像素舍入问题的原因是,在选择不同的列时,这种额外的比特在选择不同的列时变化,最佳可见12列。
https://www.sassmeister.com/gist/39b8136d4dcc6b8acfd269f675c97af5
编辑
额外的位在最新的 Firefox 中不可见,仅在 Chrome 中显示,有人修复了 Chrome 以正确显示调试图像吗?
【问题讨论】:
-
这是常见的亚像素问题。每列都会增加一个潜在的 1px 错误,因此更改列数会改变最终结果的偏离程度。单列永远不会超过 1px,12 列可能会显示最终的 12px 错误。我很高兴 Firefox 终于解决了这个问题!