Html Mac FF 3.5上输入字段的字体大小差异?

Html Mac FF 3.5上输入字段的字体大小差异?,html,css,firefox,rendering,font-size,Html,Css,Firefox,Rendering,Font Size,在测试我的网站时,我注意到Mac上FF 3.5的字段字体大小比windows或任何其他浏览器上FF 3.5的字段字体大小都大 有没有一种方法可以设计这个样式或修复它?我尝试设置输入{font size:XXpx;}无效 我想每个操作系统中使用的单空格字体是不一样的。如果我记得清楚的话,MacOSX上的摩纳哥和WindowsXP上的Courier都是全新的 用户习惯于他们使用的操作系统上使用的单空格字体,他们不一定喜欢另一种字体(或者关心顺便说一句)。您是否需要在整个操作系统中使用统一的样式并严格

在测试我的网站时,我注意到Mac上FF 3.5的字段字体大小比windows或任何其他浏览器上FF 3.5的字段字体大小都大


有没有一种方法可以设计这个样式或修复它?我尝试设置输入{font size:XXpx;}无效

我想每个操作系统中使用的单空格字体是不一样的。如果我记得清楚的话,MacOSX上的摩纳哥和WindowsXP上的Courier都是全新的

用户习惯于他们使用的操作系统上使用的单空格字体,他们不一定喜欢另一种字体(或者关心顺便说一句)。您是否需要在整个操作系统中使用统一的样式并严格执行它?
仅供参考,您是唯一一个看到您提到的浏览器之间差异的人,因为您在许多浏览器上测试您的站点(这是一件好事!)。
绝大多数用户在一个操作系统上只使用一个浏览器访问您的站点,他们不会发现差异,而注意到差异的1%用户也不会在意,除非它的大小是某个地方的两倍或影响显示信息的可读性

要设置这些文本的样式,您可以使用字体系列(请参阅下面使用Firebug或Web Developer工具栏(Ctrl-Shift-F)声明的字体,我认为这是很好的选择)和
AFAIK字体拉伸在任何地方都没有实现


浏览器对字体的支持仍然需要很多改进,你不能像在Photoshop中那样对它们进行微调。

Felipe是对的:每个操作系统/浏览器组合在字体大小和其他元素方面都有不同的起点

在做任何事情之前,尝试对您的网站应用CSS重置,然后从那里开始构建。也许有帮助。

尝试强制将字体设置为arial,因为它包含在所有操作系统中,看起来很适合。

字体大小差异的原因 Mac操作系统和Windows操作系统之间字体大小的差异不一定是字体不同的结果,因为当使用相同的字体和大小时也会出现这种情况。相反,原因是历史(见下图):Windows以96 DPI呈现文本,MacOS使用72 DPI。有时,您甚至可能会看到不同的DPI值,例如,当您在Windows显示属性中选择大字体时(这会增加DPI)

困惑与物理学 关于这一点有很多困惑。当然,一个像素就是一个像素,那么一个屏幕怎么可能在MacOS上每英寸有72个点,而在Windows上每英寸有96个点呢?嗯,它不能。这里的英寸不是真正的英寸。它们是合乎逻辑的英寸。72 DPI意味着:当前屏幕上的72个像素(并且每个屏幕不同!)我们认为它好像是一英寸。这绝不等于纸上的一英寸,即物理世界中的2.54厘米

回到网页和你的问题 这一切与你的问题有什么关系?因为我假设你用点来表示你的尺寸。一个点被定义为1/72英寸(一英寸内有72个点)。既然您知道屏幕上的英寸不是实际的英寸,并且每个操作系统在每个逻辑英寸中放置了不同的默认点,那么您也知道点(或
mm
中的
pc
)在每个系统中是不同的

走向(不完美的)解决方案 但是,你可能会问,如果每件事都是平等的,按比例调整大小,那么相对来说,一切都应该是美好的、漂亮的?不完全是。如果在其他元素中使用图像或像素作为大小,则此操作将不起作用。像素是您唯一可用的绝对逻辑大小(即使这并非精确大小也不足为奇:每个显示器的像素大小不同)。如果指定像素,则会超过操作系统(另一个)叠加的DPI或PPI限制。即:

但是,即使在上述场景中,渲染问题也可能会影响您。本地样式表、可用字体、视口大小调整和抗锯齿可能会增加细微的差异。但这是最接近于挑战依赖操作系统的规则的

一个微妙之处是:一旦开始使用像素,与图像相比,测量字体可能会变得更容易,但你将失去缩放整个设计的可能性,你将不得不到处指定精确的大小。因此,在您的情况下,这是否是一个好主意取决于您(通常的做法是坚持使用点,并将渲染留给浏览器和操作系统,让用户体验他们在系统上的习惯)

Helvetica vs Arial解决方案 在这个线程中,有人建议Helvetica是MacOS上呈现的字体,这是造成差异的原因。可以肯定的是,请在呈现页面中查看此页面。如果使用以下CSS,您的页面在Windows(Arial)上的呈现方式将不同于在MacOS(Helvetica)上的呈现方式:

但是如果您使用以下代码,它在Windows(Arial)和MacOS()上看起来是相同的。只有Linux看起来仍然不同,除非

带有单空格的奇怪小错误可能会增加混乱 如果使用单间距字体,即使指定了字体本身,也可能会在渲染方面产生差异。Firefox中有一个隐藏得很好的bug,但在其他一些浏览器上也有(博客文章解释了解决方案),但并没有引起太多关注

简单的解决方案是始终指定Courier New,即使您不关心字体。正如你提到的Arial和Helvetica,我认为这不是你的问题

最后的想法 为什么这么麻烦,为什么没有一个标准?阅读本文,了解Windows为什么认为将DPI提高30%更好


进一步阅读:这里有一个。

当然,谢谢你的建议!这是我的问题:Mac上的字体比windows上的字体大2倍左右,我使用Autoclear(我在输入字段中有描述该字段或给出示例的文本,并在单击时消失)。有时,所有windows/linux浏览器中的解释或描述都很好,但在windows/linux浏览器上的解释或描述太多
/* 
   different font-size per OS / DPI display 
   setting compared to input box 
*/
input.text {
    width: 120px;
    font-size: 10pt;
}

/* 
   equal font-size per OS / DPI display 
   setting compared to input box 
*/
input.text {
    width: 120px;
    font-size: 12px;   /* typically, pixels are slightly smaller than points */
}
input.text {
    font-family: Helvetica, Arial, sans-serif;
}
input.text {
    font-family: Arial, Helvetica, sans-serif;
}