• 前端 不同屏幕宽度 自适应布局 解决方案


    CSS响应式布局(自适应布局)

    响应式布局:一套前端代码
    自适应布局:多套前端代码

    目的都是使一个网站能够兼容多个不同的终端

    响应式布局常见实现方式

    • 使用CSS中的媒体查询
    • % rem flex布局

    设置meta标签

    首先,我们需要设置meta标签来告诉浏览器,让视口(网页的可视区域)的宽度=设备的宽度,并禁止用户对页面的缩放,如下所示:

    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">
    
    • 1

    其中:

    • viewport: 视口,表示网页的可视区域
    • width:控制viewport的大小,可以指定一个具体的值,例如600,也可以是由关键字组成的特殊值,例如device-width表示设备的宽度
    • initial-scale: 表示初始缩放比例,也就是页面第一次加载时的缩放比例
    • maximum-scale: 表示允许用户缩放的最大比例,范围[0,10]
    • minimum-scale: 表示允许用户缩放到最小比例,范围[0,10]
    • user-scalable:表示用户是否可以手动缩放,值yse no

    CSS媒体查询(主要在移动端)

    CSS媒体查询可以根据指定的条件,针对不同的媒体类型定义不同的CSS样式,让使用不同设备的用户都能得到最佳的体验。

    @media screen and (max-width: 320px){
    	body{
    		background: pink;
    	}
    }
    
    @media screen and (min-width:321px) and (max-width:375px){
    	body{
    		background: red;
    	}
    }
    
    @media screen and (min-width:376px){
    	body{
    		background: green;
    	}
    }
    
    //min-device-width 设备宽度
    //min-width 浏览器宽度
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    @media常用参数

    属性名称作用
    widht浏览器可视宽度
    height浏览器可视高度
    device-width设备屏幕的宽度
    device-height设备屏幕的高度

    @media的使用方式

    //1
    >
    
    //3
    '' rel='stylesheet' media="(min-width:300px) and (max-width:399px)">
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    字体不要使用绝对大小(px),而使用相对大小(em,rem,%)

    flex弹性盒子

    概念

    flex为FlexiableBox的简称,即弹性盒子,用来进行弹性布局,可以配合rem处理尺寸的适配问题。

    优点:

    • 用来为盒装模型提供最大的灵活性,任何一个容器都可以指定为flex布局
    • 更加符合响应式设计的特点

    rem

    概念

    指相对于根元素(html元素)的字体的大小(根字体默认为16px)

    与em区别

    em是相对于父级元素的字体的大小

  • 相关阅读:
    CC3链分析与复现
    Java学习笔记5.4.2 Map接口 - TreeMap类
    DC电源模块的短期过载能力
    某某会员小程序后端性能优化
    1044 Shopping in Mars
    【数据结构-字符串 三】【字符串转换】字符串解码
    Go:关于goroutine及ants的思考
    ROS 消息订阅 状态同步 action 行为通讯方式
    glibc2.35-通过tls_dtor_list劫持exit执行流程
    【SLAM】4李群&李代数
  • 原文地址:https://blog.csdn.net/qq_33437985/article/details/125959080