用CSS获得真正的英寸是否可能?

时间:2014-01-06 17:43:59

标签: javascript html css html5

是否可以将一个元素(例如div)绘制为以英寸为单位的宽度,并且该元素实际上有可能是该宽度(以英寸为单位),特别是在移动到其他设备时?

或者就是答案,简单地说,不,你最终会得到像1in = 96px那样的比例

编辑:尝试在元素上使用CSS英寸,然后将元素放在元素上,看看我的困境

编辑:在2014年,我是否真的必须让我的用户在屏幕上竖起标尺以获得我需要的比例?

编辑重新开启:

我正在创建一个应用程序,其中一个元素必须(根据应用程序的要求)在不同设备上的固定宽度(英寸) - 仅限于平板电脑和台式机(屏幕不低于1024 x 768)。我已经看到答案表明您需要让您的用户进行物理测量并校准此区域,以便为您提供可与px一起使用的比率。这真的是唯一的方法吗?让您的用户在屏幕上显示标尺?

编辑:为什么我需要这样做,有人问过?我正在购买一个确实存在于物理世界并对其进行虚拟化的产品 - 该产品需要人工交互,并且缩放尺寸不起作用,它必须在设备之间保持固定的宽度。

3 个答案:

答案 0 :(得分:4)

是的,这是可能的 - 接受像in,cm和mm这样的测量。从长度到像素数的转换由系统处理。但是,W3C doesn't recommend可以在屏幕上使用,因为有问题的机器必须支持转换。

  

请注意,如果锚单位是像素单位,则物理单位可能与其物理测量值不匹配。或者,如果锚单元是物理单元,则像素单元可能不映射到整数个设备像素。

     

请注意,像素单元和物理单位的定义与以前的CSS版本不同。特别地,在先前版本的CSS中,像素单元和物理单元不是通过固定比率相关的:物理单元总是与其物理测量相关联,而像素单元将变化以最接近地匹配参考像素。 (这种变化是因为过多的现有内容依赖于96dpi的假设,并且打破该假设会破坏内容。)

(资料来源:http://www.w3.org/TR/CSS21/syndata.html#length-units

答案 1 :(得分:2)

在CSS中使用英寸是可能的(字面意思是1in),但并不总是准确的,因为浏览器,操作系统和监视器都必须完美地完成它。准确性总是取决于,但在我的显示器上通常约半英寸。也许我的回答here可能对你有所帮助。 没有100%准确的故障保护方法,但话说回来,那是因为它不是CSS中最有用的东西。处理像素通常也可以正常工作。

答案 2 :(得分:2)

您可以使用但结果仍然取决于操作系统正确读取显示器大小。屏幕像素密度存在问题,难以精确计算。

点击此链接http://www.w3.org/TR/CSS21/syndata.html#length-units