【问题标题】:Please help that I can @font-face for only web not mobile请帮助我可以@font-face 仅用于网络而不是移动
【发布时间】:2014-03-14 14:05:25
【问题描述】:

我一直将@font-face 用于网页而非移动设备。

下面的代码是工作!更新ie10之前...

font.css -> 有媒体查询。 iefont.css -> 没有媒体查询。

我发现 ie10 不支持条件注释。 (还有ie11 ..) 并且在媒体查询中也不支持@font-face ...

在我的情况下,我必须使用 @font-face 仅网络而不是移动设备。 所以我正在寻找各种方式..

例如..

if(/@cc_on!@/false){document.documentElement.className+='ie10';}

if (Function('/@cc_on return document.documentMode===10@/')() && window.innerWidth >= 980) { var link = document.createElement('link'); link.rel = '样式表'; 链接.href = 'css/fonts.min.css'; document.getElementsByTagName('head')[0].appendChild(link); }

-> 这些代码有效,但...只有 ie10,它无法读取 @font-face 但它只能读取 css。

等等...(就像css)

我以为我可以通过使用 css 来解决它!但是...也许它永远不会通过使用 css 来解决..

有人解决吗?你怎么能解决它?

请帮帮我..

【问题讨论】:

    标签: conditional font-face internet-explorer-10 internet-explorer-11


    【解决方案1】:

    您可以使用条件 cmets 定位 ie 移动设备...下面的示例是如何定位除 ie 移动设备之外的所有内容:

    
    <![if !IEMobile]> 
    <style> put your @font-face here </style>
    <![endif]>
    

    如果你还是要定位 ie10,你可以使用条件编译来定位,这几乎和条件 cmets 完全一样。你可以在这里看到一个工作演示:http://dev.bowdenweb.com/ua/browsers/ie/ie10-detection-via-cc.html

    【讨论】:

    • 首先,谢谢您的回答!!但是,据我所知,条件注释不再起作用了。如果它起作用,在我的情况下,我只能在 Web 浏览器(mac、window pc 等)中使用 font-face。我不需要为移动页面使用字体(例如 iphone、galaxy 等)。
    • 然后我必须将 css 与 html 分开。我不必针对 ie10 网络浏览器(PC),我的意思是我必须针对 ie10 和更高版本(ex.ie11)。
    • 因为,新的更高版本(PC 浏览器)放弃了条件评论并且不支持媒体查询中的字体。如果您有任何有关此问题的信息,请与我分享。谢谢!
    • 所以使用条件编译来定位ie10+
    • 对不起,我将条件注释与条件编译混淆了,谢谢你的大提示!我会尝试通过使用它来解决这个问题。但是..我不太了解javascript...
    猜你喜欢
    • 1970-01-01
    • 2018-05-27
    • 1970-01-01
    • 2017-07-25
    • 1970-01-01
    • 2012-02-16
    • 2011-06-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多