我应该使用pt还是px?

在CSS中ptpx什么区别? 我应该使用哪一个,为什么?

这里有一个非常详细的解释

http://kyleschaeffer.com/development/css-font-size-em-vs-px-vs-pt-vs/

它的jist(来源)

像素是固定大小的单位,用于屏幕媒体(即在电脑屏幕上阅读)。 像素代表“像素”,如你所知,一个像素是在你的屏幕上的一个小“正方形”。 传统上, 在印刷媒体中使用(任何要在纸上印刷的东西等)。 一点等于1/72英寸。 点很像像素,因为它们是固定大小的单位,不能缩放。

看看这个CSS-Tricks的优秀文章:

  • px – em – % – pt – 关键字

从文章采取:


PT

可以声明字体大小的最后一个度量单位是点值(pt)。 点值仅用于打印CSS! 一个点是用于实际纸上印刷排版的测量单位。 72pts =一英寸。 一英寸=一个现实生活中的英寸就像一个统治者。 在屏幕上不是一寸,根据分辨率完全是任意的。

就像像素在字体大小的监视器上的死点精确度一样,点的大小在纸上是非常准确的。 为了在打印页面时获得最佳的跨浏览器和跨平台的结果,请设置打印样式表并调整所有字体的大小。

为了更好的衡量,我们不使用点大小来显示屏幕的原因(除非是荒谬的),是因为跨浏览器的结果是截然不同的:

PX

如果你需要细粒度的控制,像素值(px)中的字体大小是一个很好的select(这是我最喜欢的)。 在电脑屏幕上,它不会比单个像素更准确。 通过以像素为单位调整字体大小,您实际上会告诉浏览器在高度上渲染字母的数量:

Windows,Mac,别名,反锯齿,跨浏览器,无关紧要,14px的字体将是14px高。 但这并不是说不会有一些变化。 在下面的快速testing中,结果比关键字稍微一致,但不完全相同:

由于像素值的性质,它们不会级联。 如果父元素的像素大小为18像素,子像素为16像素,则子像素为16像素。 但是,字体大小设置可以组合使用。 例如,如果父级设置为16px,并且孩子设置为较大,则孩子确实会比父级更大。 一个快速testing显示了我这个:

“较大”的父母的16px碰撞20px,增加了25%。

像素在过去因为可访问性和可用性问题已经变得很糟糕。 在IE 6及以下版本中,以像素为单位设置的字体大小不能由用户resize 。 这意味着我们年轻健康的devise师可以设置12px的types,并在屏幕上阅读它,但是当人们在牙齿上稍微长一些时,就可以读取它们的大小,以便读取它们。 这真的是IE 6的错,不是我们的错,但是我们知道了我们的眼睛,我们必须处理它。

以像素为单位设置字体大小是最准确的(我觉得最令人满意的)方法,但要考虑到仍然在您的网站上使用IE 6的访问者数量以及访问需求。 我们正处在不需要关心这个问题的最前沿。


px ≠像素

所有这些答案似乎是不正确的。 与直觉相反,在CSS中, px 不是像素 。 至less,不是在简单的身体意义上。

从W3C , EM,PX,PT,CM,IN …阅读这篇文章,了解px是如何发明CSS的“神奇”单元。 px的含义因硬件和分辨率而异。 (这篇文章是新鲜的,上次更新2014-10。)

我自己的思考方式: 1 px is the size of a thin line intended by a designer to be barely visible.

引用那篇文章 :

px单位是CSS的魔法单位。 它与当前字体无关,也与绝对单位无关。 px单位被定义为很小但是可见,并且可以显示具有尖锐边缘的水平1px宽的线(没有抗锯齿)。 什么是尖锐的,小的和可见的取决于设备和使用方式:你是否像手机一样靠近你的眼睛,像电脑显示器一样,​​或者像书本一样在中间的某个地方? 因此px没有被定义为恒定的长度,而是取决于设备types和其典型用途。

要想了解一个像素的外观,想象一下从20世纪90年代的CRT电脑显示器:它可以显示的最小点大约是1/100英寸(0.25毫米)或更多一点。 PX单位从屏幕像素得名。

现在有些设备原则上可以显示更小的尖点(尽pipe您可能需要放大镜才能看到它们)。 但是,上个世纪在CSS中使用px的文档仍然看起来是一样的,不pipe是什么设备。 特别是打印机可以显示比1px小得多的细节,但是即使在打印机上,1px的行看起来也和在电脑显示器上看起来非常相似。 设备改变,但PX总是有相同的视觉外观。

那篇文章给出了一些关于使用pt vs px vs em指导来回答这个问题。

pt是1/72英寸,对于在不能正确计算DPI的设备上渲染的任何东西都是无用的量度。 这使得它成为一个合理的select印刷和在屏幕上使用一个可怕的select。

px是一个像素,在大多数情况下它将映射到屏幕像素。

CSS提供了一堆其他的单位,你应该select哪一个取决于你正在设置的大小。

如果您需要resize以匹配图像的大小,或者您想要细边框,则像素是非常好的。

字体大小的百分比非常好,因为如果您一致地使用它们,则会获得与用户偏好成比例的字体大小。

当你想要一个元素根据字体大小自动resize时,Ems是很好的(所以如果字体大一些,段落可能会变宽)

… 等等。

pt是历史上在其中1点具有近似1/72英寸的测量值的“点”中尺寸被一般地“测量”的打印型面中使用的“点”的推导(缩写),并且因此是72点字体大小为1英寸。

px是“像素”的缩写,它是在屏幕或点阵打印机或其它打印机或装置上以点forms呈现的简单的“点”的缩写 – 与具有固定尺寸的老式打字机相比,通过按下色带留下字符的印记,从而留下固定大小的图像。

与点紧密相关的是历史上与select固定印刷字符有关的术语“大写”和“小写”,其中放置在盒子(盒子)中的“collections”字符位于非收集到的字符之上在下面的一个框中,从而“下”的情况。

对于不同的印刷字体和大小,有不同的盒子(盒子),但是每个盒子仍然是“上”和“下”的情况。

另一个术语是“异食癖”,它是字体中一个字符的度量,因此异食癖是1/6英寸或12点度量单位(12/72)。

严格来说,测量是在4.233毫米或0.166英寸的计算机上,而旧点(美国)是1 / 72.27英寸,法国是4.512毫米(0.177英寸)。 因此,我关于测量的“近似”的陈述。

此外,办公室使用的打字机具有“Elite”或“Pica”尺寸,其尺寸为每英寸10和12个字符。

另外,在标准化之前的“点”是基于金属印刷者的“脚”尺寸,一个字符的基本尺寸的大小,并且在大小上有所不同。

请注意,排印“脚”最初来自已故的打印机实际脚。 一个印刷脚包含72点或864点。

至于CSS的使用,我更喜欢使用EM而不是px或pt,从而获得缩放的优势,而不会损失相对的位置和大小。

编辑:只是为了完整性,你可以把EM(em)作为一个字体高度的度量单位,因此1em为12pt字体将是该字体的高度,2em将是该高度的两倍。 请注意,对于12px字体,2em是24像素。 SO 10px通常是标准字体的0.63em,因为“most”浏览器基于16px = 1em作为标准字体大小。

我喜欢px,以便在使用浏览器大小需要stream畅或缩放的网站时,对布局和时间进行精细控制。 百分比是与PITA合作的,pt是用于印刷的。