我目前正在建设从PSD网站。 大多数字体有-25一封信跟踪( <- AV->
我猜是字母间距的符号?)。
我将如何获得CSS同样的效果? 我知道属性是letter-spacing: X
,但它并不需要百分比和-25px或分将是一个巨大的数字!
我目前正在建设从PSD网站。 大多数字体有-25一封信跟踪( <- AV->
我猜是字母间距的符号?)。
我将如何获得CSS同样的效果? 我知道属性是letter-spacing: X
,但它并不需要百分比和-25px或分将是一个巨大的数字!
您可以使用em
尺寸,而不是px
,因此相对于字体大小间距大小(因此Photoshop中的25%是某处大约.25em
)。
在Photoshop字母间距被称为信跟踪和具体文本中的每个字母之间的空间。 问题是,Photoshop的信跟踪不转换1:CSS 1到字母间距。
这是很容易计算,虽然从Photoshop到CSS的转换。
em
公式 X / 1000 = Y
X is the value of the letter-tracking in Photoshop
Y is the value in "em" to use in CSS
请看下面的例子:Photoshop有200一封信跟踪值..
200 / 1000 = 0.2
其结果是在CSS 0.2em。
px
公式如果您更喜欢使用“PX”值的计算公式为
X * S / 1000 = P
X is equal to the letter-tracking value in Photoshop
S is the font-size in pixels
P is the resulted value in "px" to use in CSS
考虑下面的例子:Photoshop有200信跟踪值和为10的字体大小值。
200 * 10 / 1000 = 2
其结果是在CSS 2px的 。
在这样的背景下,无量纲数通常意味着一个印刷单元是一小部分em
单元。 它通常被称为仅仅是“单位”。 此单元的值取决于字体,它被表示为UPM(每em单位)值。 常见的UPM值是1000,但微软字体有2048,以及发生其他值了。 (这个问题在文章的一些细节描述中石1000套的UPM值? )
假设为1000的UPM值,-25将映射到-0.025em。 设置letter-spacing: -0.025em
往往有一个相当小的影响:一个稍长的文本行变为约一个“我”更短。 你使用CSS的影响不应该被预期是一样的PhotoShop; PhotoShop中的渲染机制从这些浏览器的不同。
如果你的问题是简单地与单位换算,您可以使用em
而不是px
虽然em
允许十进制数字,它不会改变渲染精度。 0.5px
或同等精度不会显示在浏览器-它会变成0或1像素。 很简单,因为屏幕不能显示半个像素,充其量可以aproximate与抗锯齿。
对于较小的字体的抗锯齿可能会比间隔看起来更糟。 另一种选择是找到一个网页字体,有你想用默认的间距。 这样,你会得到类似的结果你想要什么,但可能意味着改变字体。
CSS的间距根本就没有像Photoshop那样准确。 原因之一是Photoshop中呈现的印刷也 - 你不得不忍受像素精度屏/像素分辨率。 虽然理论上这将有可能变成对缩放等我不知道,实际上工作方式任何实现更精确的字间距。
如果正确的字母间距是真的对你很重要,你可以尝试使用SIFR渲染字体比浏览器能够更准确地间距 - 他们也许能使用改变抗锯齿。 显然,这只会意义,如果字母间距是一个大问题。