我正在使用JQM构建移动应用程序,我需要使用Font-face声明自己的字体.
我将Font CSS文件Fonts.CSS作为我的index.HTML中第一个加载的CSS文件包含在内,并声明了如下字体:
@Font-face { Font-family:"MyFont"; Font-weight:normal; Font-style:normal; src:url("Fonts/MyFont.woff"); src:url("Fonts/MyFont.eot?") format("eot"), url("Fonts/MyFont.woff") format("woff"), url("Fonts/MyFont.ttf") format("truetype"), url("Fonts/MyFont.svg#MyFont") format("svg");}
我的两个测试设备是带有AndroID 4.2.1的Google Nexus 7和带有AndroID 4.0.4的Motorola Razr.
在谷歌Nexus上,它适用于移动Chrome和PhoneGap.但在摩托罗拉Razr上,它仅适用于移动Chrome. AndroID浏览器和Phonegap股票都不使用MyFont.
是否有任何解决方法可以让我的Font在AndroID 4.0.x上运行?
解决方法:
有趣.我有相反的经历.
我有一个运行4.2.1(CM 10.1)的galaxy Nexus,在升级之前加载字体非常好,但是自更新以来已经开始变得非常奇怪(仅在原生WebKit中,而不是Chrome,它仍然有效) .
我意识到这不是字体问题,而是CSS特性被搞砸了(使用bootstrap作为基础,然后用我自己的CSS替换).如果包含引导程序,即使内联样式也不显示,如果删除了引导程序,一切正常.很奇怪.
至于你的问题的反面,有几个想法:
>为什么第一个带有.woff的src?我已经看到它与.eot的IE向后兼容模式,但使用.woff的浏览器应该能够从第二个src使用它.也许尝试删除第一个src? (这应该不是问题,因为WebKit应该用第二个src覆盖)
>你是如何加载字体文件的?从本地存储?从Web服务器?我知道在firefox中,如果带有字体文件的服务器与具有该类型的文件不同,则在没有Allow Origin标头的情况下不会加载.
>您是否需要在其他非webkit浏览器中加载相同的字体定义?如果没有,请考虑删除除.woff之外的所有文件.
>你确定问题是字体吗?尝试将字体声明设置为非默认系统字体(例如“serif”).看看是否正在应用字体声明,或者可能是你的Font-face正常,但是CSS在某种程度上没有将字体应用于该类型? (就像过去一周的情况一样)
没有其他信息,有点难以理解.你的@ Font-face声明,除了第一个src的怪异是.woff之外,似乎应该可以正常工作.我的猜测是问题在于其他地方,而不是代码片段.
编辑:
我追踪了我的问题—在AndroID 4.2.1上,CSS选项文本呈现:与Chrome和以前的AndroID版本的行为完全不同.如果您使用此选项,请查看更改或删除它是否为您解决了问题.这是我唯一能想到的东西,我认为AndroID 4.0与AndroID 4.2 webkit的渲染方式有所不同.
总结以上是内存溢出为你收集整理的android 4.0.x上的font-face不起作用全部内容,希望文章能够帮你解决android 4.0.x上的font-face不起作用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)