rem+媒体查询

本文介绍了rem作为CSS单位如何与媒体查询结合,实现网页内容在不同屏幕尺寸下的自适应布局。通过设置HTML字体大小并利用媒体查询,调整不同屏幕尺寸下的样式,以确保元素的大小和颜色随屏幕尺寸变化而变化。示例代码展示了针对不同屏幕尺寸的header样式设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、rem

1、什么是rem

rem是和px、em一样的计量单位。px是确数值的计量单位,em和rem则是倍数计量单位。em是父元素字体大小的倍数单位,rem是根标签<html></html>字体大小的倍数单位。

2、rem的优势

当我们需要设置自适应式的子元素时,用rem配合媒体查询就很好实现。媒体查询附上如下

我们一般设备显示屏幕分为15份或者20份,以一份值的大小来设置HTML,font-size值。

 二、媒体查询

1、什么是媒体查询

媒体查询可以简单的理解为目标条件查询。就是当满足某条件下就执行媒体查询内的htm文件元素的相关设定样式。

2、媒体查询格式

@media screen and(min-width:xx;){

需要再次条件下设定的元素{

正常的css样式格式

}

}

如:@media screen and (min-width:360px){

html{font-size:50px}

}意思就是当屏幕最小值也就是包含360px往上的屏幕大小下,html的字体大小为50px。

媒体查询不仅可以单纯的查元素,也可以查询导入css文件

   

 上图的解释为,当屏幕大小在320px到339px之间时,该份html引入外部链接style320的css样式。当屏幕大小在640px以上的屏幕区间时,该份html引入外部链接style640的css样式

3、相关案例

*手机端的大多尺寸为:320px、360px、375px、400px、414px、480px、720px、750px。

当我想配合rem让html内的子元素大小和内容以及背景颜色都岁屏幕大小自适应的改变时。(媒体查询写在css样式内)。

    <title>媒体查询案例</title>

    <style>

        html {

            min-width: 360px;最小宽度360p'x

            max-width: 920px;//设置最大宽度为920px也就是超过了最大宽度,元素继续增大就不会再有变化,与最小宽度一致。

        }

         header {px

            text-align: center;

        }

           @media screen and (min-width:360px) {

            html {

                font: 12px;

            }

           header {

                background-color: rgb(4, 158, 4);

                height: 5rem;

                line-height: 2.5em;

            }

        }

             @media screen and (min-width:680px) {

         header {

                background-color: aquamarine;

                font-size: 1.5rem;

                height: 10rem;

                line-height: 5rem;

            }

        }

        @media screen and (min-width:900px) {

        header {

                background-color: rgb(127, 229, 255);

                font-size: 2em;

                height: 15rem;

                line-height: 7.5em;

            }

        }

    </style>

</head>

<body>

    <header>媒体查询案例</header>

</body>

 这样之后随着我屏幕的改变,效果如下

1649644109969

在PC端使用`rem + Less + 媒体查询`进行响应式布局的流程大致可以分为以下几个步骤: 1. **设置基础样式**: - 首先,你需要设定一个`html`元素的字体大小作为基准值(通常是`100px`),然后将所有单位转换成`rem`。例如,在Less中: ``` html { font-size: 100px; /* 1 rem = 100px */ } ``` 2. **编写响应式设计**: - 使用Less的变量和混合函数创建不同屏幕尺寸下的媒体查询。比如: ``` @screen-sm: 768px; @screen-md: 992px; @screen-lg: 1200px; media(@breakpoint: screen and (@media-width: @screen-sm)) { // CSS规则适用于屏幕小于等于 @screen-sm 的内容 } // 更换媒体查询条件,根据实际需求调整 @media @screen-md { // CSS规则适用于 @screen-sm 到 @screen-md 之间的内容 } ``` 3. **应用变量和媒体查询**: - 在Less文件中使用上面定义的变量和媒体查询,编写根据不同屏幕尺寸的CSS样式。比如,设置不同分辨率下字体大小的变化: ``` .content { font-size: rem-calc(16); // 基础字体大小 * (16 / 100) @media @screen-md { font-size: rem-calc(20); } } ``` `rem-calc()`函数用于计算rem值,结合媒体查询可以实现不同屏幕尺寸下的字体缩放。 4. **编译Less到CSS**: - 完成Less编写后,使用Less编译工具将其转换为标准的CSS文件,以便在浏览器中运行。 5. **部署和测试**: - 将生成的CSS文件添加到HTML文档中,通过预览页面或在真实环境中查看响应式效果,并根据需要调整媒体查询条件和样式。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值