pc页面在移动端浏览时部分字体放大,与pc字体大小不一致(Font Boosting)

最近做一个页面时,需要pc的页面在移动端浏览时保持pc的样式缩小。但是发现部分文字被放大了。看上去特别诡异。如下图

pc页面在移动端浏览时部分字体放大,与pc字体大小不一致(Font Boosting)

绿框是PC端查看时的正常样式,
红框是移动端看的字体放大的诡异样式

是什么原因呢?

后来接触到了一个概念,终于了解了问题的本来面目。这个概念叫做 “Font Boosting”(文字爆炸) 
Font Boosting被称为字体提升,也被称为Text Autosizer,Font Inflation.是 Webkit 给移动端浏览器提供的一个特性:当我们在手机上浏览网页时,很可能因为原始页面宽度较大,在手机屏幕上缩小后就看不清其中的文字了。而 Font Boosting 特性在这时会自动将其中的文字字体变大,保证在即不需要左右滑动屏幕,也不需要双击放大屏幕内容的前提下,也可以让人们方便的阅读页面中的文本。 具体大家可以去百度了解一下。

 

如何解决?

Font Boosting 仅在未限定尺寸的文本流中有效,给元素指定宽高,就可以避免 Font Boosting 被触发

  • 可通过指定max-height来避免触发。比如 .class {max-height:100%;}
  • .class{text-size-adjust:none;}
  • 指定initial-scale = 1
  • *{-webkit-text-size-adjust: none;}  // 我用的此方法,全局禁止 Webkit内核浏览器的文字大小调整功能

 

转载于:http://www.freetechs.cn/archives/128

 

pc页面在移动端浏览时部分字体放大,与pc字体大小不一致(Font Boosting)

上一篇:.NET(c#) 移动APP开发平台之Smobiler开发


下一篇:Azure App Service-多语言/高可用/自动缩放的Web托管服务(1)