以毫米为单位检索元素的尺寸(或非像素单位)?

4

我正在学习使用JavaScript操作浏览器的DOM,并且正在构建一个“系统”,该系统使用毫米而不是像素作为单位。 我知道如何以毫米为单位设置元素的大小,这与

element.style.width = "32mm"; for example.

然而,我在以px以外的其他单位检索尺寸时遇到了困难。有没有办法做到这一点?

SIDENOTE:是否没有定义CSS全局默认单位系统的方法?一旦定义要使用的单位,就可以为元素使用纯值,这将非常方便。

1个回答

7

有没有一种方法可以定义CSS的全局默认单位系统?

没有。

然而,我无法以除px以外的任何其他单位检索测量值。有办法吗?

没有。

CSS中的“像素”实际上是英寸的1/96, 0.26毫米。因此,您可以通过将像素大小乘以0.26来获得毫米大小。

请注意,这是像素的“参考”大小。来自链接的内容:

参考像素是具有96dpi像素密度和读者距离为手臂长度的设备上一个像素的视觉角度。对于28英寸的名义臂长,因此视觉角度约为0.0213度。在手臂长度处阅读时,1px大约相当于0.26毫米(1/96英寸)。

显示器的像素密度各不相同,但通常将CSS像素映射为英寸的1/96。

这个答案对原问题的回答(当我回答时没有意识到这是一个重复问题,我应该意识到)有一个非常直接的方法:在mm中定义一个元素,然后获取其以像素为单位的大小,你就知道在该设备和方向上的转换。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接