0

我正在使用 Google Fonts 加载两种字体。由于它们在 ie9 以下的任何内容中看起来都非常可怕,我想忽略它们。这是我的想法:

<!DOCTYPE html>
<!--[if lte IE 8 ]> <html class="ie8" lang="en-US"> <![endif]-->
<!--[if !IE]><!--><html lang="en-US"><!--<![endif]-->

然后在我的CSS中我可以使用这样的东西:

h1{
font: normal 33px/50px 'Open Sans', 'Helvetica Neue', Arial, 'Liberation Sans', FreeSans, sans-serif;

}

.ie8 h1{
font: normal 33px/50px 'Helvetica Neue', Arial, 'Liberation Sans', FreeSans, sans-serif;

}

这可以解决尝试使用 Open Sans 的问题。加载实际的样式表怎么样。这样的事情会好吗?

<!--[if !(lte IE 8) ]>
<link href="http://fonts.googleapis.com/css?family=Kite+One|Open+Sans:400italic,400,700" rel="stylesheet" type="text/css">
<![endif]-->

这将阻止 ie8 及以下版本甚至加载 css 并防止浪费下载 - 对吗?这是正确的语法吗?

有人推荐更好的方法吗?我尝试单独加载所有字体,但它们在 ie8 和 7 中仍然无法正常工作,所以这不是一个选项。

4

1 回答 1

0

你必须使用这样的东西来排除 IE8 及更低版本:

<!--[if gt IE 8]>
    <link href="http://fonts.googleapis.com/css?family=Kite+One|Open+Sans:400italic,400,700" rel="stylesheet" type="text/css">
<![endif]-->

<!--[if !IE]> -->
    <link href="http://fonts.googleapis.com/css?family=Kite+One|Open+Sans:400italic,400,700" rel="stylesheet" type="text/css">
<!-- <![endif]-->

第一个仅加载 IE9 及更高版本的字体。第二个为所有非 IE 浏览器加载它。

或者,您可以使用 JavaScript 加载字体。

于 2013-01-09T21:59:59.403 回答