移动适配-rem

news/2024/7/8 12:52:54 标签: css3, css

rem

认识

优点:

可以适应不同大小的屏幕

使用px或者百分比布局不能实现:

  1. px单位时绝对单位
  2. 百分比布局是宽度自适应,高度固定的

rem使用

rem使用时需要配合:

  • 媒体查询
  • flexible.js(推荐使用⭐)

rem 单位

  • 相对单位
    • 相对于HTML标签的字号计算结果
    • 1 rem = 1 HTML字号大小

媒体查询

作用

能够检测视口宽度,根据不同的视口宽度设置不同的html字号大小

HTML字号取值

不同的视口宽度,设置不同的HTML字体大小,取值为视口宽度的1/10

语法

css">@media (媒体特性) {
    选择器 {
        css属性;
        }
}

例如:

css">@media(width:320px) {
            html {
                font-size: 32px;
            }
        }
        @media(width:375px) {
            html {
                font-size: 37.5px;
            }
        }
        .box {
            width: 2rem;
            height: 2rem;
            background-color: red;
        }

注意:
如果电脑显示的缩放为125%,那么给媒体特性设置宽度时只设置手机型号的宽度不起作用。(因为电脑显示的手机宽度是 :125%×真实手机宽度)

媒体特性常用写法

  1. max-width 从小到大
  2. min-width 从大到小
css">  /* max-width 从小到大
        min-widrh 从大到小 */
        
            /* 视口宽度 >= 768px,网页背景色是 粉色 */
            @media (min-width : 768px) {
                body {
                    background-color: pink;
                }
            }
            /* 视口宽度 >= 992px,网页背景色是 绿色 */
            @media (min-width : 992px) {
                body {
                    background-color: lightgreen;
                }
            }
            /* 视口宽度 >= 1200px,网页背景色是 skyblue */
            @media (min-width : 1200px) {
                body {
                    background-color: skyblue;
                }
            }
        
        

rem单位尺寸

  1. 确定设计稿对应的HTML标签字号

    1. 查看设计稿宽度
    2. 确定参考设备宽度(视口宽度)一般参考375px
    3. 确定基准根字号(1/10视口宽度)
  2. rem单位 = px数值/基准根字号值 ,取小数点后4位

flexible

动态的检测手机大小,给网页中html根节点设置不同的font-size。
相比较媒体查询,优点:

  1. 减少代码量
  2. 适配所有类型手机
  3. 不用担心电脑显示的缩放
<style>css">
  .box {
            /* 盒子大小:
            宽 = 68 / 37.5
            高 = 29 / 37.5
            */
            width: 1.8133rem;
            height: 0.7733rem;
            background-color: green;
        }
    </style>
</head>
<body>
    <div class="box"></div>
    <script src="./js/flexible.js"></script>
</body>

http://www.niftyadmin.cn/n/1595509.html

相关文章

说说IUnitOfWork~方法完整性与统一提交不冲突

回到目录 第一讲 认识IUnitOfWork&#xff0c;为什么要出现IUnitOfWork接口第二讲 Linq to Sql与EntityFrameworks中的SubmtChanges()发生了什么事第三讲 方法完整性与统一提交不冲突第四讲 DbContext对象的创建应该向BLL层公开第五讲 我的IUnitOfWorkRepository架构在一个方法…

CSS预处理器-Less

less 认识 Less是一个 CSS预处理器&#xff0c; Less文件后缀为.less浏览器不识别less文件&#xff0c;所以在VScode里使用Easy Less插件自动生成css文件 优点&#xff1a; css逻辑更加清晰免去了繁琐的计算&#xff08;直接写计算式就可&#xff09; 注释 // 单行注释 C…

运维博客集

1. http://blog.kn126.com/ 运维世界一个运维初学者的学习历程Linux/CentOS/Ubuntu/FreeBSD 服务器教程Windows Server 2003/2008 服务器教程 2.云维科技 http://kicklinux.com/ 首页集群和高可用NOSQL云计算虚拟化自动化运维系统基础运维服务 3.南http://alsww.blog.51cto.co…

IO 常用IO操作类继承结构 及简单简介

IO字符流Reader(源)BufferedReaderLineNumberReaderInputStreamReaderFileReader(字节流通向字符流的桥梁)StringReader Writer(目的)BufferedWriter OutputStreamWriterFileWriter(字符流通向字节流的桥梁)StringWriter PrintWriter 字节流InputStream(源)FileInputStream…

JS循环练习-简易银行ATM

需求&#xff1a; 用户可以选择存钱、取钱、查看余额和退出功能 分析&#xff1a; 1. 弹窗显示功能&#xff0c;将prompt写到循环里 2. 只有用户点击退出时才能跳出循环 3. ATM功能可以使用开关语句 效果图&#xff1a; 代码示例&#xff1a; <!DOCTYPE html> <…

Websphere MQ 7.0.0 For Linux版安装

为什么80%的码农都做不了架构师&#xff1f;>>> 将压缩包上传至指定目录&#xff0c;比如&#xff1a;/home/hqh/MQ7下面。 [rootlocalhost hqh]# cd MQ7 [rootlocalhost MQ7]# ls CZ50AML.tar.gz 修改权限 [rootlocalhost MQ7]# chmod 755 CZ* 解压 [rootl…

移动适配-vw/wh

vw/vh 是相对单位 vw&#xff1a;viewport width 1vw 1/100视口宽度 vh&#xff1a;viewport height 1vh 1/100视口高度 vw单位尺寸 1.确定设计稿对应的vw尺寸 &#xff08;1/100视口宽度&#xff09; 查看设计稿宽度 → 确定参考设备宽度 (视口宽度) → 确定vw尺寸 &a…

每天学点GDB 4

本节侧重于如何用各种方法查看变量的值。 #include <stdlib.h> #include <stdio.h>void show_slogan(char* slogan); int counter; char* welcome_msg "you are welcome!"; int main(int argc, char** argv) {int i 0;counter 0;show_slogan(welcome_…