IE 中的 CSS 自定义字体在刷新时更改

Posted

技术标签:

【中文标题】IE 中的 CSS 自定义字体在刷新时更改【英文标题】:CSS Custom Font in IE changes on refresh 【发布时间】:2011-10-12 14:12:42 【问题描述】:

我有一个自定义字体,我在 CSS 中使用,转换为 EOT、WOFF 和 TTF 以在所有浏览器中工作

它完美地工作,除了,是的,你猜对了,IE。它确实有效,但在我的 IE8 中,当我刷新字体时,高度似乎会发生变化,这会导致所有间距都消失......任何人都可以看到问题或确认它不仅仅是我的浏览器吗?

http://www.uniquegeeks.co.uk/djeurope/

【问题讨论】:

即使你点击刷新???在我的它不断改变字体高度...... 在 IE8 中对我来说看起来不错,即使在刷新时也是如此。尽管如果我减小页面宽度直到出现水平滚动条,lorem 的顶线似乎会被剪掉一点。但这是我看到的唯一问题。 我有这个确切的问题。你解决了吗李? 【参考方案1】:

这对我有用。在<link>

中添加一个id
<link id="main-css" rel="stylesheet" type="text/css" href="/css/styles.css" />

准备好文档,像这样使用纯 javascript 或 jQuery。

 //Script
    document.getElementById('main-css').href=document.getElementById('main-css').href;

 //or Jquery
    $('#main-css')[0].href=$('#main-css')[0].href;

【讨论】:

【参考方案2】:

我和我的同事都在摸索同一个错误。我们的环境在 Facebook 框架中运行。在第一次加载页面时(缓存为空),字体呈现良好,但经过简单的刷新后,字体变成了 Arial 与我们自定义字体的字距调整,或其他东西。该错误也不同于 HTTP 和 HTTPS,在 HTTP 上它可以正常工作。

我们开始搞乱各种博客文章和此线程中描述的修复程序,但我们没有运气。我傻眼了,准备把文字换成图片了。

然后我在 IE 中关闭缓存进行了测试,问题就消失了。所以我们尝试在标头级别关闭缓存。不漂亮。但它奏效了。 no-cache 标头只设置在字体上,它就像一个魅力。

【讨论】:

这里有同样的问题。没有缓存是唯一的选择。 This answer 帮助我解决了类似的问题。

以上是关于IE 中的 CSS 自定义字体在刷新时更改的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 9:好奇的自定义字体行为

有啥软件可以自定义字 也就是自己想写啥就写啥 并把写的字弄成

为啥自定义字体会移动文本(更改垂直对齐方式)? [复制]

C++11 用户自定义字面值

如何在 ListView 和 AlertDialog 中设置自定义字体?

在 Next JS 中,Material UI makeStyles 在刷新时撤消自定义 css