4

我尝试添加自定义字体并且遇到了很多麻烦:(这是我的 test.html:

<!DOCTYPE html>
<html>
<head>
    <style type="text/css">
        @font-face {
        font-family: 'OpenSans';
        src: url('OpenSans.eot');
        src: url('OpenSans.eot?#iefix') format('embedded-opentype'),
            url('OpenSans.woff') format('woff'),
            url('OpenSans.ttf') format('truetype');
        font-weight: normal;
        font-style: normal;
    }
    body {
        font-size: 14px;
        font-family: 'OpenSans';
    }
    </style>
</head>
<body>
    <span>Lorem Ipsum is simply dummy text of the printing and typesetting industry<span>
</body>
</html>

结果我有(Windows XP SP3 ClearType 禁用):

22

我不知道为什么我的歌剧不想从本地目录中读取这种字体。Safari 和 Chrome 没有启用字体平滑(我如何理解它取决于操作系统,如果不更改操作系统设置我无法修复它)。

2 问题:

1)为什么opera不理解本地路径(如果它部署在http服务器上它会起作用)?

2) 如何为 chrome 和 safari 启用字体平滑?Firefox 没有问题,也许其他浏览器也可以(css 属性 font-smooth 没有帮助)

4

1 回答 1

2

我无法解释 Opera 问题,但 cleartype 问题似乎直截了当。IE 和 Firefox 忽略了您对禁用 cleartype 的系统偏好,而 chrome 和 safari 正在按照您的要求执行并尊重它。

这是我阅读问题的方式。您(用户)已明确告知系统不要使用 cleartype。MS 决定忽略 IE 中的选择,这给您的印象是 IE 的渲染效果比其他浏览器更棒。Mozilla 对那些认为 IE 字体看起来更好的 CT 禁用用户进行了很多垃圾操作,因此他们屈服于压力并忽略了您的选择。苹果很高兴在 Windows 上看起来比在 Mac 上更糟糕,所以他们什么都不做。Chrome 决定走上制高点,尊重用户的选择。或者,我可以弥补所有这些。

原因并不重要,关键是当你禁用 CT 时,它应该被禁用。您实际上要问的是如何使网站忽略用户的系统偏好,而简单的答案是-您不能,也不应该。就像网络浏览器大战中的许多事情一样,一些浏览器正在做正确的事情,而有些浏览器则没有,您对此无能为力。

于 2012-04-12T08:21:54.093 回答