美文网首页
H5+CSS3移动端适配技术

H5+CSS3移动端适配技术

作者: 7b7d23d16ab5 | 来源:发表于2020-01-13 19:10 被阅读0次

    前言

    近期因工作需求,做了一个Vue APP,过程中遇到了曾今经常听说,但从未真正接触过的移动端适配问题,中间遇到了很多挫折,经过了5天吧,这个小app经过来回重写样式好几遍,终于找到了门道,应该算是正路吧,我身边也没有真正做h5 app的伙伴,靠着自己百度、揣摩,外加朋友的帮助,学会了适配的方案。

    适配方案

    • 1、需要使用的单位(最好不要用别的单位,不然会遇到麻烦):
    [1] css3 单位
    vw、vh、vmin、vmax
    [2] 百分比单位
    %
    

    解释
    vw:屏幕可视宽度百分比
    vh:屏幕可视高度百分比
    vmin:屏幕可视宽度和高度中较小的那个,用这个单位,可以让字体在移动设备无论横屏还是竖屏都保持大小不变
    vmax:屏幕可视宽度和高度中较大的那个,用处同上vmin
    %:相对于父级元素的百分比尺寸

    • 2、移动设备可视宽高的理解
      上面的尺寸一定要自己考虑好当前元素所处环境后,再精心挑选,否则会发生适配效果不佳的问题;
      要想通过H5+CSS3完美适配很多机型,最重要的就是理解可视宽高
      如果打包成全屏应用,如apk全屏效果,那么可视高度vh就是整个设备的屏幕高度
      如果直接在微信内嵌浏览器中浏览,那么可视高度会被浏览器的顶部栏位占用一部分,那可视高度就是下方剩余的高度
      如果实在浏览器app中浏览,那么顶部栏位挡掉一部分后,也是下方剩余的部分为可视高度,不用去理会浏览器下方的tab工具栏,因为浏览器似乎是忽略了底部的工具栏,画面提供滚动,可以发现能够手指下滑继续滚动到下方,而在开发时,几乎是忽略这种用浏览器访问的方式的,不必在意这个滚动才能看到下方遮挡的部分的问题,我们只需要考虑全屏和微信浏览器的效果即可

    由于设备的高度会在不同的情况下受到影响,所以我们主要使用vw去控制各个元素的尺寸,因为设备的可视宽度正常情况下是不会有什么东东占用的,我没遇到过,所以设备的宽度就是可视宽度,那么宽度不变,我们使用vw去控制元素尺寸的时候,也就不会受到任何影响了,无论在什么情况下,都能保证元素的位置和尺寸不变了

    而我们在适当的情况下需要使用%,因为vw、vh等都是设备的整个屏幕的可视宽高百分比,而有时候我们要的百分比是相对父级元素的,所以不要随便乱用,要想好再用

    下面展示下把web app打包成apk全屏应用和在浏览器中浏览的效果

    全屏效果
    微信图片_20200113184929.jpg
    微信浏览器中的效果
    微信图片_20200113184937.jpg

    最后说明

    px 转 rem,还有写各种屏幕的不同样式的方案是过去的方案,当前主流使用CSS3的新特性单位,才最佳

    相关文章

      网友评论

          本文标题:H5+CSS3移动端适配技术

          本文链接:https://www.haomeiwen.com/subject/qkjnactx.html