文档章节

响应式rem针对UC浏览器12号字体可行性解决方案

P
 PINGE
发布于 2015/04/08 17:43
字数 846
阅读 3610
收藏 1

手机UC浏览器12号字体可行性解决方案

今天上班测试手机专题时候发现,UC浏览器去浏览到手机页面12号字体放大到16号字体大小,始终是改变我所写的样式为12号字体大小,但是苹果 saf 浏览器  还有小米自带浏览器或者国产手机都能正常显示12号字体,这个UC变态啊~~

后来web群里有个同仁说美团移动端用的也是12px字体,瞅了眼,其实美团移动用的并非是12px而是rem字体。

那么,什么是rem字体?rem字体何处使用?为此我也查阅了下资料

「rem」是指根元素(root element,html)的字体大小,从遥远的 IE6 到版本帝 Chrome 他们都约好了,根元素默认的 font-size 都是 16px。(所以UC上为什么12号字体会变成16号而不变成18号!

rem解决字体方案

IE9+,Firefox、Chrome、Safari、Opera 的主流版本都支持了,我可以使用 rem。

针对UC浏览器这个变态,我们要秉承 响应式 【内容优先,移动优先】的原则!网页中常用的文字大小单位是 px(Pixels),rem始终是基于根元素(html).

先前我们知道 根元素默认的 font-size 都是 16px,也就是UC浏览器默认根元素也是16,那么我们用rem改变页面根元素大小。

html{font-size:62.5%; /* 10÷16=62.5% */} 我们设置html根元素大小表示为62.5%  其实就是网页的10px,那么我们设置12号字体,body{font-size:1.2rem ; /* 12÷10=1.2 */} 那么12号字体使用就是1.2rem。那么14号字体就是1.4rem,然后UC浏览器测试果真12号字体正常显示了,不过事情还没完。

群里兄弟说的美团移动版用的12号字体我看了下,如图。uc12号字体解决性方案

写的是html{font-size:312.5%} 计算 3.125*16=50 px字体,font-size:312.5% 美团 根字体  50px,那么 12号字体就是 12/50=0.24rem 所以美团页面用的是 0.24rem 字体 表示12px字体。

rem解决手机浏览器12号字体

果然如此里面字体是font-size:0.24rem.

不过我们在想想为什么美团要用50PX字体比例,当初我们用谷歌浏览器 可以用-webkit-text-size-adjust:none; 解除最小字体限制早就不管用了。这里又要说谷歌 (我次奥!全是大变态~ `(*∩_∩*)′)。

变态就在于谷歌webkit不支持10px,所有10px会按照12px来计算,1.2rem是14.4px。所以这里我们就需要这样写。

html{

font-size:62.5%; /* 10÷16=62.5% */

}

body{

font-size:12px;

font-size:1.2rem ; /* 12÷10=1.2 */

}

p{

font-size:14px;

font-size:1.4rem;

}

为了兼容不支持 rem 的浏览器,我们需要在 rem 前面写上对应的 px 值,这样不支持的浏览器可以优雅降级。其实不用太纠结是默认的 font-size:100%,还是设置为 font-size:62.5%,如果你引入 了 CSS 预处理工具那么自然可以使用默认值,如果由于其他原因使用 font-size:62.5% 也无可厚非,完全可以在 body 中重置回你需要的默认 font-size。

OK这样就解决了。为了搞这个UC12号字体问题没想到搞出这么多名堂,感谢似水流年给的建议,感谢UED淘宝的响应式参考文献。


本文转载自:http://blog.xmaoseo.com/response-rem-for-uc-browser-12th-pt-feasibility-solution/

共有 人打赏支持
P
粉丝 0
博文 3
码字总数 0
作品 0
深圳
移动端自适应布局&微信小程序rpx

rpx是微信小程序推出的一个新单位,通过rpx可以让我们的页面根据屏幕宽度进行自适应,这一举措解决了一直令前端头疼的屏幕适配问题。 而在rpx出现之前,web页面的自适应布局已经有前人总结了...

小草先森
06/16
0
0
CSS_相对单位rem

rem这是个低调的css单位,近一两年开始崭露头角,有许多同学对rem的评价不一,有的在尝试使用,有的在使用过程中遇到坑就弃用了。但是我对rem综合评价是用来做web app它绝对是最合适的人选之...

喵王不瞌睡
2016/03/18
73
0
真的,移动端尺寸自适应与dpr无关

前言 做移动端自适应时可能很多人都对自适应和dpr之间的关系产生疑问,也有一些人会疑虑比如我的自适应方案没有加dpr会不会出问题,针对这些疑问我说一下我的见解,希望能解除你的担忧。 1. 什么...

changli2018
06/28
0
0
响应式方案调研及前端开发管理思考

网易首页响应式风格实现技术调研 网易首页实现页面(字体)响应式风格的方式是在不同尺寸的视口中使用不同的容器类,如图 1所示。当视口大于等于1420px时,使用大尺寸容器类 (index20171200...

浩瀚动酷
06/27
0
0
rem是如何实现自适应布局的?

摘要:rem是相对于根元素<html>,这样就意味着,我们只需要在根元素确定一个px字号,则可以来算出元素的宽高。本文讲的是如何使用rem实现自适应。 rem这是个低调的css单位,近一两年开始崭露...

临江仙卜算子
06/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

造谣造到t-io老巢了

只发当事人的截图,不发表评论,以免有引导嫌疑 PS: 截图是由不同的人发过来的 本人已经不在此微信群 图3:有造谣的,就有反造谣的 图4是2018-09-23的t-io官方群的一个发言小统计,有助于让...

talent-tan
今天
69
0
heartbeat 资源

drbd+apache+heartbeat : http://blog.51cto.com/11838039/1827901 heartbeat双机热备的架设 : http://blog.51cto.com/11838039/1827560 对heaetbeat的深一步认识 : http://blog.51cto.co......

寰宇01
今天
4
0
Spring 转换 model 为 json 时增加属性

缘起 目前的项目中有个需求是在附件对象转换成 json 时增加个 url 属性,以前的方式是在返回附件对象或列表时候做一次统一处理,这次想看看 spring 或者 jackson fasterxml 是否自带类似功能...

郁也风
今天
4
0
10大PHP比特币开源项目

如果你是一个Phper,如果你希望学习区块链,那么本文列出的 10个开源的Php比特币项目,将有助于你了解在自己的应用中 如何加入对比特币的支持。 如果你希望快速掌握使用Php对接比特币钱包的方...

汇智网教程
今天
5
0
springclould feign客户端添加全局参数

用springclould feign作为调用服务的客户端,一般来说参数可以写在feignclient的方法参数里 有时需要所有feign请求都统一添加一些参数,例如token用于鉴权等,可以这样做: 添加一个配置类,...

canneljls
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部