移动web开发rem适配布局

移动web开发rem适配布局

学习目标:

  1. 能够使用rem单位
  2. 能够使用媒体查询的基本语法
  3. 能够使用Less的基本语法
  4. 能够使用Less中的嵌套
  5. 能够使用Less中的运算
  6. 能够使用2种rem适配方案

1.rem单位基础

2.媒体查询

2.1什么是媒体查询

媒体查询是css3的新语法

  • 使用@media查间,可以针对不同的媒体类型定义不同的样式
  • @media可以针对不同的屏幕尺寸设置不同的样式
  • 当你重置浏览器大小的过程中,页面也会根据浏览器的宽度和高度重新渲染页面
  • 目前针对很多苹果手机、Android手机,平板等设备都用得到多媒体查询

2.2语法规范

@media mediatype and|not|noly (media feature){css-code;
}
  • 用@media开头 注意@符号
  • mediatype媒体类型
  • 关键字 and not only
  • media feature 媒体特性 必须有小括号
1.mediatype 查询类型

将不同的终端设备划分成不同的类型,称为媒体查询

在这里插入图片描述

2.关键字

关键字将媒体类型或多个媒体特性链接到一起做为媒体查询的条件

  • and:可以将多个媒体特性连接到一起,相当于"且"的意思
  • not:排除某个媒体类型,相当于"非"的意思,可以省略
  • only:指定某个特定的媒体类型,可以省略
3.媒体特性

每种媒体类型都具体各自不同的特性,根据不同媒体类型的媒体特性设置不同的展示风格。我们暂且了解三个。
注意他们要加小括号包含

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3V0wF8JB-1692882823550)(img/image-20230819100223878.png)]

   <style>/* 这句话的意思就是:在我们屏幕上并且最大的宽度是800像素设置我们想要的样式 *//*max-width小于等于800*//*媒体查询可以根据不同的屏幕尺寸在改变不同的样式*/@media screen and (max-width:800px) {body {background-color: pink;}}@media screen and (max-width:600px) {body {background-color: skyblue;}}</style>
2.3媒体查询+rem实现元素动态大小变化

rem单位是跟着html来走的,有了rem页面元素可以设置不同大小尺寸
媒体查询可以根据不同设备宽度来修改样式
媒体查询+rm就可以实现不同设备宽度,实现页面元素大小的动态变化

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>@media screen and (min-width:320px) {html {font-size: 50px;}}@media screen and (min-width:640px) {html {font-size: 100px;}}.top {height: 1rem;color: #fff;line-height: 1rem;text-align: center;font-size: .5rem;background-color: green;}</style>
</head><body><div class="top">购物车</div>
</body></html>

3.less介绍

Less(Leaner Style Sheets的缩写)是一门CSS扩展语言,也成为CSS预处理器。
做为CSS的一种形式的扩展,它并没有减少CSS的功能,而是在现有的CSS语法上,为CSS加入程序式语言的特性。
它在CSS的语法基础之上,引入了变量,Mix(混入),运算以及函数等功能,大大简化了CSS的编写,并且降低了CSS的维护成本,就像它的名称说的那样,Lss可以让我们用更少的代码做更多的事情。
Less中文网址:http://lesscss.cn☑
常见的CSS预处理器:Sass、Less、Stylus

一句话:Less是一门CSS预处理语言,它扩展了CSS的动态特性。

3.1less使用

我们首先新建一个后缀名为less的文件,在这个less文件里面书写less语句。
●Less变量
●Less编译
●Less嵌套
●Less运算

3.2less变量

变量是指没有固定的值,可以改变的。因为我们CSS中的一些颜色和数值等经常使用。
变量名:值;
1.变量命名规范

  • 必须有@为前缀
  • 不能包含特殊字符
  • 不能以数字开头
  • 大小写敏感
3.3Less编译

vocode Less插件

在这里插入图片描述
Easy LESS插件用来把less文件编译为
Css文件
安装完毕插件,重新载下vscode。
只要保存一下Less文件,会自动生成
CSS文件。

3.4Less嵌套

我们经常用到选择器的嵌套

#header .logo{
width:300px;
}

Less嵌套写法

#header.1ogo{width:300px;}
}

如果遇见(交集,伪类,伪元素选择器)

  • 内层选择器的前面没有&符号,则它被解析为父选择器的后代
  • 如果有&符号,它就被解析为父元素自身或父元素的伪类
a:hover{
color:red;
}

Less嵌套写法

a{&hover{color:red;
}}
3.5Less运算

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-h9xSmqUR-1692882823551)(img/image-20230819114556770.png)]

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/81859.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

动物体外受精手术VR模拟仿真培训系统保证学生及标本的安全

奶牛是养殖业主要的资源&#xff0c;因此保证奶牛的健康对养殖业的成功和可持续发展具有重要已用&#xff0c;奶牛有一些常见易发病&#xff0c;一旦处理不当&#xff0c;对奶牛业都会造成较大的经济损失&#xff0c;传统的奶牛手术培训实操难度大、风险高且花费大&#xff0c;…

掌握AI助手的魔法工具:解密Prompt(提示)在AIGC时代的应用「上篇」

在当今的AIGC时代&#xff0c;我们面临着越来越多的人工智能技术和应用。其中一个引人注目的工具就是Prompt&#xff08;提示&#xff09;。它就像是一种魔法&#xff0c;可以让我们与AI助手进行更加互动和有针对性的对话。那么&#xff0c;让我们一起来了解一下Prompt&#xf…

gitlab合并分支

我的分支为 cheng 第一步&#xff1a; 增加新的代码 第二步&#xff1a;提交并推送 第三步&#xff1a;打开gitlab&#xff0c;找到对应项目 这样就成功把cheng分支合并到dev-test分支了

2023年高教社杯 国赛数学建模思路 - 复盘:光照强度计算的优化模型

文章目录 0 赛题思路1 问题要求2 假设约定3 符号约定4 建立模型5 模型求解6 实现代码 建模资料 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 问题要求 现在已知一个教室长为15米&#xff0c;宽为12米&…

国产调度器之光——Fsched到底有多能打?

这是一篇推荐我们速石自研调度器——Fsched的文章。 看起来在专门写调度器&#xff0c;但又不完全在写。 往下看&#xff0c;你就懂了。 本篇一共五个章节&#xff1a; 一、介绍一下主角——速石自研调度器Fsched 二、只要有个调度器&#xff0c;就够了吗&#xff1f; 三…

RISC-V公测平台发布 · 数据库在RISC-V服务器上的适配评估

前言 上一期讲到YCSB在RISC-V服务器上对MySQL进行性能测试&#xff08;RISC-V公测平台发布 使用YCSB测试SG2042上的MySQL性能&#xff09;&#xff0c;在这一期文章中&#xff0c;我们继续深入讨论RISC-V数据库的应用。本期就继续利用HS-2平台来测试数据库软件在RISC-V服务器…

Linux —— keepalived

简介 Keepalived 是一个用 C 语言编写的路由软件。这个项目的主要目标是为 Linux 系统和基于 Linux 的基础设施提供简单而强大的负载均衡和高可用性功能。 Keepalived 开源并且免费的软件。 Keepalived 的2大核心功能 1. loadbalance 负载均衡 LB&#xff1a;ipvs--》lvs软件…

Socket基本原理

一、简单介绍 Socket&#xff0c;又称套接字&#xff0c;是Linux跨进程通信&#xff08;IPC&#xff0c;Inter Process Communication&#xff09;方式的一种。相比于其他IPC方式&#xff0c;Socket牛逼在于可做到同一台主机内跨进程通信&#xff0c;不同主机间的跨进程通信。…

测试框架pytest教程(10)自定义命令行-pytest_addoption

pytest_addoption pytest_addoption是pytest插件系统中的一个钩子函数&#xff0c;用于向pytest添加自定义命令行选项。 在pytest中&#xff0c;可以使用命令行选项来控制测试的行为和配置。pytest_addoption钩子函数允许您在运行pytest时添加自定义的命令行选项&#xff0c;…

【VS Code插件开发】消息通信(四)

&#x1f431; 个人主页&#xff1a;不叫猫先生&#xff0c;公众号&#xff1a;前端舵手 &#x1f64b;‍♂️ 作者简介&#xff1a;前端领域优质作者、阿里云专家博主&#xff0c;共同学习共同进步&#xff0c;一起加油呀&#xff01; &#x1f4e2; 资料领取&#xff1a;前端…

element ui - el-select获取点击项的整个对象item

1.背景 在使用 el-select 的时候&#xff0c;经常会通过 change 事件来获取当前绑定的 value &#xff0c;即对象中默认的某个 value 值。但在某些特殊情况下&#xff0c;如果想要获取的是点击项的整个对象 item&#xff0c;该怎么做呢&#xff1f; 2.实例 elementUI 中是可…

自定义loadbalance实现feignclient的自定义路由

自定义loadbalance实现feignclient的自定义路由 项目背景 服务A有多个同事同时开发&#xff0c;每个同事都在dev或者test环境发布自己的代码&#xff0c;注册到注册中心有好几个(本文nacos为例)&#xff0c;这时候调用feign可能会导致请求到不同分支的服务上面&#xff0c;会…