为什么有些浏览器引擎不让我有 100.1px?

kok*_*abi 1 css google-chrome microsoft-edge

为什么某些浏览器引擎不能精确计算分数像素?这些最终值(.094、.188、.297 等)是根据什么逻辑计算的?有相关文件吗?

在Chrome 100.0.4896.127(官方版本)(64 位)中测试

<html>
  <body>
    <div style="width:100.1px">Hi</div>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Ami*_*mir 5

浏览器不尊重小px数值,因此预计会在不同的浏览器上看到不同的行为。Chrome 和 Edge 使用相似的渲染引擎,这就是为什么你说它们的结果相似(如果 Edge 或 chrome 对渲染引擎进行了自定义,它们也可能有所不同)。

我认为实际发生的情况是它们将值四舍五入到最接近的真实像素1pxCSS 中的 不会转换为屏幕上的 1 个像素(了解更多)。

这里还有另一个相关问题。