美文网首页
移动端自适应方案

移动端自适应方案

作者: 左冬的博客 | 来源:发表于2021-07-14 10:08 被阅读0次

移动端适配的目标是让页面在移动设备上可以合理展示

viewport缩放方案

在对设计稿还原时,不需要去关注移动设备的屏幕尺寸,页面开发好后,在HTML的head标签里加入 <meta name="viewport" content="width={设计稿宽度}, initial-scale={屏幕逻辑像素宽度/设计稿宽度}" >
本质上就是设置好布局视口宽度后再缩放页面,使其恰好能够撑满屏幕

<head>
  <meta charset="utf-8">
  <script>
    const WIDTH = 750
    const mobileAdapter = () => {
      let scale = screen.width/WIDTH
      let content = `width=${WIDTH}, initial-scale=${scale}, maximum-scale=${scale}, minimum-scale=${scale}`
      let meta = document.querySelector('meta[name=viewport]')
      if(!meta) {
        meta = document.createElement('meta')
        meta.setAttribute('name', 'viewport')
        document.head.appendChild(meta)
      } 
      meta.setAttribute('content', content)
    }
    mobileAdapter()
    window.onorientationchange = mobileAdapter
  </script>
</head>

优点是在开发过程中不需要去做额外的计算

动态rem

viewport是页面级(整体)缩放方案,动态rem是既可以保留一部分元素的尺寸,又可以根据屏幕缩放页面大小

对于需要适配屏幕等比缩放的元素可以选用rem作为单位,对于不需要等比缩放的元素依旧使用px作为单位

如何做呢?
使用js设置html的font-size和页面宽度相同,而rem依赖于html的font-size,间接的让rem依赖于页面宽度

image.png image.png

注意:字体还是使用字号,但是宽高使用动态rem(rem可以与其他单位同时存在)

image.png

在scss中rem2px

image.png

vw方案

一种不需要JavaScript的适配方案——vw适配方案

vw是相对单位,1vw表示屏幕宽度的1%。基于此,我们可以把所有需要适配屏幕大小等比缩放的元素都使用vw做为单位。不需要缩放的元素使用px做单位

比如一个标题的font-size是32px,设计图页面尺寸为750px
(32/750)*100% = 4.27%,也就是说这个标题字号占屏幕宽度的4.27%,即可以写font-size: 4.27vw

scss中px2vw

@function px2vw($px) {
  @return $px * 100vw / 750; // 设计图页面尺寸为750px
}
.button {
  width: px2vw(120); // 设计图尺寸按钮宽度120px
  font-size: px2vw(28);
  line-height: px2vw(48);
  border: 1px solid #000;
  text-align: center;
}

相关文章

  • 可伸缩布局flexible

    gitHub地址: GitHub - amfe/lib-flexible: 可伸缩布局方案 移动端自适应方案,相关...

  • 移动端rem自适应方案

    移动端rem自适应方案传送门https://segmentfault.com/a/1190000012225828

  • flexible

    移动端自适应方案 flexible github: https://github.com/amfe/lib-fle...

  • 记一次前端技术分享(移动端相关概念讲解)

    移动端开发中的相关概念讲解 1、移动端自适配方案 移动端如何根据不同手机尺寸进行页面的适配 rem 自适应和 vw...

  • 移动端自适应解决方案

    移动端自适应解决方案 谈到移动端自适应这个话题,如果要真正做好,那应该说是前端开发中的一个比较难以掌握的知识点了。...

  • 移动端自适应方案

    问题来源 传统web开发我们一般只需要用像素去描述dom的宽高,但考虑到移动端屏幕的尺寸千奇百怪,我们希望找到一种...

  • 移动端自适应方案

    自适应需要从以下几个方面入手:布局、字体、retina带来的问题 一、布局: 1. 用%做单位老方案,兼容性高在制...

  • 移动端自适应方案

    一、基础原理 1.基准值 (1)选择一种尺寸作为设计和开发的基准。(2)定义适配规则,自动适配其他屏幕下的尺寸。 ...

  • 移动端自适应方案

    绑定浏览器缩放和加载事件,动态修正跟字体大小

  • 移动端自适应方案

    移动端适配的目标是让页面在移动设备上可以合理展示 viewport缩放方案 在对设计稿还原时,不需要去关注移动设备...

网友评论

      本文标题:移动端自适应方案

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