本文主要是介绍如何用 lib-flexible 实现移动端H5页面适配,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
最近这几个星期在学到了移动端H5页面适配,以前根本没做过移动端网页,所以把我学到的小知识点写下来,也分享给前端新手们。
做移动端网页和pc端很大不同的便是现在移动端窗口分辨率繁多。
很多时候UI给的设计图只有一份,还是按照iphone6设计的,这就让前端适配其他例如6plus或安卓等其他移动端头疼。
还好,阿里巴巴2015年底公开了其成熟的适配方案,lib-flexible
,至于其可靠性可参考每年天猫活动的移动端页面。
这个方案的用法大概是这样的,HTML 头部引入 lib-flexible
的样式和js库,容器或组件宽高主要使用单位 rem
,字体大小则不变仍然使用单位 px
。
然而我们在实际的开发中ui给出的图一般都是750X1334的,其实iphone6的像素和ui设计的像素是一样大小的,但是我们的开发如果都是按照6的px来设计,那么我们的其它比6小尺寸屏幕的所有设备都会面临width不够的问题。flexible就完美的解决了这个问题。
应用中我们只要设置好他的公共比的像素就ok了,比如说如果ui图的像素是750,那我们需要的就是750/10,我们需要的就是75,我们所有的width的固定px就都可以变换成用rem像素代替实现样式统一例如我们width需要200px那么我们就可以这样写:
width=200rem/75;从而实现样式的兼容(特别注意:因为css不支持样式的计算,我们需要用less活着sass类似的css编译执行就可以得到最终的rem的值了)
另外,我们根据不同dpr可以设置一些不同的样式来实现视网膜屏幕的高清屏幕!
[data-dpr="1"] .selector {
width: 10px;
height: 32px;
font-size: 14px;
}
[data-dpr="2"] .selector {
width: 20px;
height: 64px;
font-size: 28px;
}
我们根据不同的自定义属性data-dpr来设置不同的width和height 从而达到不同dpr屏幕具有不同的属性!(这个位置一般用来处理图片。。)
这篇关于如何用 lib-flexible 实现移动端H5页面适配的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!