在复制纸张交互的Web应用程序的CSS上使用cm/mm是一个好习惯吗?

Rui*_*iro 27 html css w3c

我正在构建一个与文档交互以便以后打印的Web应用程序.在某些方面类似于Google Docs.我正在考虑在我的文档页面的CSS上使用cm/mm,因为它将帮助我生成文档.例:

// A4 size
.page {
   width: 210mm;
   height: 297mm;
   margin: 2cm 5cm; 
}
Run Code Online (Sandbox Code Playgroud)
<div class="page">
  ...
</div>
Run Code Online (Sandbox Code Playgroud)

遵循这种方法的主要问题是什么?

Dan*_*ett 29

W3C在CSS单元的主题上有很好的帖子.特别是:

cm:不建议用于屏幕/建议打印

所谓的绝对单位(cm,mm,in,pt和pc)在CSS中的含义与其他地方相同.以这些中的任何一个表示的长度将精确地显示该大小(在硬件和软件的精度内).建议不要在屏幕上使用它们,因为屏幕尺寸变化很大.大屏幕可能是60厘米(24英寸),一个小的便携式屏幕可能只有8厘米.你不要从同一距离看他们.

如果您需要确保打印的字体确实是一定的大小,那么您可以使用pt(或cm或in)设置字体大小的唯一位置是打印样式表.但即使使用默认字体大小通常更好.

  • 那篇文章非常好,我已经读过了.但我的问题是我将使用cm/mm不仅用于打印(例如@media打印),而且用于整个应用程序.但由于我希望屏幕和打印完全相同,我怀疑cm/mm不是最好的方法. (7认同)
  • 那么你对OP的页面宽度和高度有什么建议?我们知道 dinA4 页面的高度为 297 毫米。将其转换为像素,因为“不推荐使用厘米”似乎很奇怪。 (2认同)
  • Rui 说他正在创建类似于 Google docs(一个打印预览应用程序,如果你喜欢)的东西。因此,他可能需要*在浏览器*中查看正确的页面尺寸。例如,您可以看到还有多少空间可以输入。除了在这里使用厘米尺寸之外,我真的想不出其他方法。 (2认同)