css - Chrome 会混淆使用 SVG 格式的网络字体样式的文本(有时)

标签 css google-chrome svg webfonts

演示: http://jsbin.com/onixik/2 (内容如下)

如果您在 Windows 上的 Chrome 中查看该演示,它可能看起来正常,也可能不正常。 “好的”是指它不起眼,只是一些文本。如果不行,则部分文本覆盖其他文本;这很明显。

如果 Chrome 让它看起来不错,请尝试随机调整窗口大小几次。奇怪的是,一旦它开始出错,就很难(也许不可能)让浏览器再次开始正确显示它。 (编辑——与我一起工作的一些人和我一样看到了这个问题,但他们的浏览器随后开始工作,就像我的浏览器最终一样;也许你们中很少有人会看到它。)

这是“不正常”时的样子: enter image description here

(字体是 Signika;它是 Google、FontSquirrel 和 Adob​​e 提供的免费字体。我将其托管在我自己的服务器上,因为 Google 不会提供 SVG,如果提供的话我不知道如何做到这一点。您将无法在 Firefox 中看到任何内容,因为我没有提供正确的 CORS header ,而且 Firefox 很挑剔。)

我知道如何解决这个问题:在 SVG 文件之前提供 WOFF 文件。然而,我目前首先提供 SVG 文件,因为我在各种博客(以及此处的问题)上一遍又一遍地阅读 Chrome 渲染 SVG 的效果优于 WOFF。在这种情况下,这显然不会发生 :-) 有没有人看到这个并找到另一种解决方法?

HTML:

  <div style='position: relative'>
    <div class=wf style='font-size: 135%'>
      Hello This is a test of some formatting issues
      <span style='margin-top: -3px; font-size: 120%'>*</span>
      The problem is strange.
    </div>
  </div>

CSS:

  @font-face {
    font-family: 'Signika';
    src: url('http://gutfullofbeer.net/fonts/Signika-Semibold-webfont.eot#') format('embedded opentype'),
      url('http://gutfullofbeer.net/fonts/Signika-Semibold-webfont.svg') format('svg'),
      url('http://gutfullofbeer.net/fonts/Signika-Semibold-webfont.woff') format('woff'),
      url('http://gutfullofbeer.net/fonts/Signika-Semibold-webfont.ttf') format('truetype');
  }

.wf {
  font-family: "Signika";
  font-weight: normal;
  padding: 2em;
  max-width: 12em;
}

最佳答案

Chrome 似乎在字体和文本方面存在问题。我也有这个问题,只有我的文字变形了,而且是付费字体。不知道为什么会这样,但我最终通过 google-fonts 尝试了一种不同的字体,它适用于所有 4 种浏览器。

尝试在 google fonts 上找到与您想要的字体相匹配的字体,然后改用它。它使用起来更容易,而且您不必将所有这些不同的格式加载到您的服务器中,它只是从标题中的标记中提取谷歌站点。无需 CSS。

关于css - Chrome 会混淆使用 SVG 格式的网络字体样式的文本(有时),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15010029/

相关文章:

ios - 如何在iOS objective-c 中打开链接时启动Chrome浏览器

javascript - 如何为 Web 和移动设备制作 SVG 响应式进度条?

javascript - 在 Samsung Galaxy S 和 S II 上固定位置

html - 我如何确定我的所有用户都拥有这个字体系列?

javascript - 为什么 Javascript 输出在 Google Chrome 中被阻止?

ios - 为什么 Chrome for iOS 以不同方式处理 cookie?

html - 使用 svg html 元素的剪辑路径不起作用

javascript - 如何将两个 SVG 的顶部并排对齐?

CSS3 : Hiding the parent div when the child div is visible

css - css中使用选择器过滤掉某些元素