CSS-5

移动端适配

屏幕分辨率

屏幕分辨率:纵横向上的像素点数,单位是px电脑常见分辨率:1920 * 10801336 * 768...硬件分辨率 -> 物理分辨率(出厂设置)
缩放调节后的分辨率 -> 逻辑分辨率(软件/驱动设置)

视口

<meta name="viewport" content="width=device-width, initial-scale=1.0">
视口:显示HTML网页的区域,用来约束HTML的尺寸
width=device-width <==> 视口宽度=设备宽度(即设备逻辑分辨率的宽度)
initial-scale=1.0  <==> 缩放1倍(即不缩放)

二倍图

概念:设计稿里面每个元素的尺寸都是2倍
作用:防止图片
举例:网页需要一个100px的图片,设计稿就画一个200px的图片,在小屏幕显示100px,在大屏幕显示就100px~200px

适配方案

宽度适配:宽度自适应1.百分比布局2.Flex布局等比适配:宽高等比缩放1.rem2.vw

rem 适配方案

认识 rem

<style>* {margin: 0;padding: 0;}/* 第一步:给HTML标签加字号 */html {font-size: 30px;}/* 第二步:使用rem单位书写尺寸 */.box {width: 5rem;height: 3rem;background-color: pink;}
</style><body><div class="box"></div>
</body>
rem 单位,是相对单位
rem 单位是相对于HTML标签的字号计算结果
1 rem = 1 HTML字号大小
目前rem布局方案中,将网页等分成10份,HTML标签的字号为视口宽度的1/10

媒体查询

<style>/* 要求:通过"媒体查询"的方法,实现当视口宽度为375px时,网页背景色是绿色 */@media (width:375px) {body {background-color: green;}}
</style>
1.什么是"媒体查询":
不同手机屏幕大小不同,分辨率不同,通过"媒体查询"我们可以设置不同的HTMl标签字号,让HTML标签字号大小动态变化,rem也就随之动态变化2.具体内容:媒体查询能够检测视口的宽度,然后编写差异化的CSS样式当某个条件成立,执行对应的CSS样式3.格式:@media (媒体特性) {选择器 {CSS属性}}

rem + flexible.js

引入flexible.js库:<body>...<script src="./js/flexible.js"></script>
</body>
<style>* {margin: 0;padding: 0;}.box {width: 5rem;height: 3rem;background-color: pink;}
</style><body><div class="box"></div><script src="./js/flexible.js"></script>
</body>
flexible.js 是某团队开发出来的一个专门用来适配移动端的js库
核心原理:根据不同的视口宽度,给网页中HTML根节点设置不同的font-size

px 转 rem

rem 单位尺寸:1. 确定基准根字号查看设计稿宽度 -> 确定参考设备宽度(视口宽度) -> 确定基准根字号(1/10的视口宽度)2. rem 单位的尺寸 = px单位数值 / 基准根字号

less

less 简介

1.简介:less是一个CSS预处理器,less文件后缀是.lessless扩充了CSS语言,使CSS具备一定的逻辑性、计算能力2.注意:a. 浏览器不识别less代码,目前阶段,网页要引入对应的CSS文件b. VS Code 插件:Easy LESS,保存less文件后自动生成对应的CSS文件c. less支持嵌套写选择器(补充:现在主流的浏览器也支持CSS嵌套写选择器了)

less 注释

单行注释:语法:// 注释内容VS Code快捷键:Ctrl + /
块注释:语法:/* 注释内容 */VS Code快捷键:(此快捷键可能与系统的截图快捷键冲突,可以自行修改)Shift + Alt + A

less 运算

.box {width: (150 / 37.5rem);
}
运算:加、减、乘直接书写计算表达式除法需要添加"()""."例如:width: (100 / 4px); 或者 width: (100 ./ 4px);

less 嵌套

.father {color: red;.son {width: 200px;a {color: green;// & 的代表的是当前标签,&:hover {color: blue;}}// 上面的一个a标签的代码,与下面的两个a标签代码等效a {color: green;}a:hover {color: blue;}}
}
作用:快速生成后代选择器
& 符号表示的是——当前选择器,代码写到谁的大括号里面就代表谁,不会生成后代选择器,常用于hover伪类或nth-child结构伪类

less 变量

// 1. 定义变量
// 优点:在这里修改颜色,整个网页的颜色都能立刻被修改!
@myColor:pink;// 2. 使用变量
div {color: @myColor;
}p {color: @myColor;
}a {color: @myColor;
}
作用:存储数据,方便使用和修改
语法:定义变量:@变量名:数据;使用变量:CSS属性:@变量名;

less 导入

    @import "./base.less"@import "./common.less"
作用:导入less公共样式文件语法:@import "文件路径"提示:如果是less文件可以省略后缀例如:@import "./base.less"@import "./common"		// 此处省略了后缀

less 导出

// out: ./css/index.css
导出写法:在less文件的第一行添加:// out: 文件URL禁止导出:在less文件的第一行添加:// out:false

vw 适配方案

认识 vw

vw 是一个单位,而且是一个相对单位,相对于"视口的尺寸"计算结果vw:viewport width1 vw = 1/100 视口宽度vh:viewport height1 vh = 1/100 视口高度vw 和 vh 是相对视口的宽高计算结果,可以直接实现移动端适配效果!!记忆:因为 1 vw = 1/100 视口宽度,即相当于视口宽度(屏幕)的 1%

px 转 vw

1. 确定设计稿对应的vw尺寸(1/100视口宽度)查看设计稿宽度 -> 确定参考设备宽度(视口宽度)-> 确定vw尺寸(1/100视口宽度)2. vw单位的尺寸 = px数值 / (1/100 视口宽度)

vh 单位问题

在开发中,vw 和 vh 不能混用!vh 是 1/100 视口高度,全面屏视口高度尺寸大,如果混用可能会导致盒子变形。实际开发中,通常使用vw,特殊情况用vh,但是不能同时使用!

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

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

相关文章

Web网页开发-CSS层叠样式表1-笔记

1.CSS的引入方式 (1)内嵌式&#xff1a;把style双标签写在head标签里面&#xff0c;可以影响同种标签 (2)行内式&#xff1a;把style写在标签内部&#xff0c;只能影响当前标签 (3)外链式&#xff1a;创建css文件&#xff0c;使用link将html文件和css文件连接起来 (4)导入式&am…

2024年美赛数学建模ABCDEF题思路选题分析

文章目录 1 赛题思路2 美赛比赛日期和时间3 赛题类型4 美赛常见数模问题5 建模资料 1 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 2 美赛比赛日期和时间 比赛开始时间&#xff1a;北京时间2024年2月2日&#xff08;周五&#xff…

关于java的方法及定义

关于java的方法及定义 我们在之前的文章中介绍了java的流程控制等内容&#xff0c;本篇文章&#xff0c;我们要介绍一下java中的方法&#xff0c;这个是非常关键的&#x1f600;&#xff01; 什么是方法 我们用之前我们最常见的System.out.println(); 来举例。 System是类&…

Ef Core花里胡哨系列(5) 动态修改追踪的实体、动态查询

Ef Core花里胡哨系列(5) 动态修改追踪的实体、动态查询 同样还是IModelCacheKeyFactory&#xff0c;不过这次要采用主动刷新的方式。 实现DbContext 动态实体&#xff0c;根据配置等生成动态类型来当作数据库实体使用&#xff0c;当配置修改时&#xff0c;可以调用DynamicMo…

Redis(二)数据类型

文章目录 官网备注十大数据类型StringListHashSetZSetBitmapHyperLogLog&#xff1a;GEOStreamBitfield 官网 英文&#xff1a;https://redis.io/commands/ 中文&#xff1a;http://www.redis.cn/commands.html 备注 命令不区分大小写&#xff0c;key区分大小写帮助命令help…

关于时间格式yyyy-M-d或yyyy-MM-d到yyyy-MM-dd的转换

工作时遇到前端传的时间格式是"2023-12-3 17:41:52"&#xff0c;和"2023-1-1 17:41:52"但是我想要的是"2023-12-03 17:41:52"和"2023-01-01 17:41:52"。下面给大家分享几个解决方法 方法一&#xff1a; 找前端&#xff01;让他改&…

CSS属性的计算过程和层叠规则总结

✨ 专栏介绍 HTML/CSS专栏合集是一个涵盖HTML和CSS两个方面的栏目。HTML是一种标记语言&#xff0c;用于创建网页的结构和内容&#xff0c;而CSS是一种样式表语言&#xff0c;用于控制网页的外观和布局。 在HTML/CSS专栏合集中&#xff0c;我们将深入探讨HTML和CSS的基础知识…

汽车架构解析:python cantools库快速解析arxml

文章目录 前言一、安装cantools二、官方说明文档三、cantools方法1、解析message的属性2、解析pdu中的signals3、根据message查找signals4、报文组成bytes 总结 前言 曾经有拿cantools来解析过dbc&#xff0c;用得比较浅&#xff0c;不知道可以用来解析arxml。最近有个需求需要…

vfb控件数组的实现原理(visual freebasic ide),64位VB6 vb7

vfb控件数组的实现原理(visual freebasic ide),64位VB6 vb7 Sub Form1_Command1_BN_Clicked(ControlIndex As Long, hWndForm As hWnd, hWndControl As hWnd)MsgBox ("Command1 ControlIndex" & ControlIndex & ",Command1(x).Caption " & …

【纯java代码实现字符串运算符或公式计算,支持函数,不借助第三方依赖、工具】

纯java代码实现字符串运算符或公式计算&#xff0c;支持函数&#xff0c;不借助第三方依赖和工具 效果图代码 效果图 代码 import java.math.BigDecimal; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; import…

在 Oracle 数据库表中加载多个数据文件

在本文中&#xff0c;我将展示 SQL 加载器 Unix 脚本实用程序的强大功能&#xff0c;其中 SQL 加载器可以使用自动 shell 脚本加载多个数据文件。这在处理大量数据以及需要将数据从一个系统移动到另一个系统时非常有用。 它适合涉及大量历史数据的迁移项目。那么就不可能为每…

Elasticsearch:带有自查询检索器的聊天机器人示例

本工作簿演示了 Elasticsearch 的自查询检索器 (self-query retriever) 将问题转换为结构化查询并将结构化查询应用于 Elasticsearch 索引的示例。 在开始之前&#xff0c;我们首先使用 langchain 将文档分割成块&#xff0c;然后使用 ElasticsearchStore.from_documents 创建…

企业微信开发:自建应用:接收消息(企业内部服务器)/回调配置

概述 在企业微信的自建应用中&#xff0c;用户触发了某些行为&#xff08;发送消息、进行菜单操作或者外部联系人变更等&#xff09;&#xff0c;要发送相关信息给企业内部服务器。 备注&#xff1a;接收消息 和 回调&#xff0c;在本文中指代相同的行为&#xff0c;即企业微信…

vs code导入excel文件并且解析excel文件数据

实习工作需要通过vs code导入excel文件并且解析excel文件数据&#xff0c;学习整理了一下相关方法分享给大家^_^ VS Code 中导入和解析 Excel 文件 要在 VS Code 中导入和解析 Excel 文件&#xff0c;你可以使用一些库和扩展来帮助你完成这个任务。以下是一种常用的方法&…

【PostgreSQL】表操作-表权限

【PostgreSQL】表操作快速链接 创建表及基础表命令 修改表 表权限 创建对象时&#xff0c;会为其分配所有者。所有者通常是执行创建语句的角色。对于大多数类型的对象&#xff0c;初始状态是只有所有者&#xff08;或超级用户&#xff09;才能对对象执行任何操作。要允许其他角…

c基础(二)

指针&#xff1a; 含义&#xff1a;是一个值&#xff0c;一个值代表着一个内存地址&#xff0c;类似于存放路径 * 运算符 &#xff1a; 1 字符*表示指针 作用&#xff1a;通常跟在类型关键字的后面&#xff0c;表示指针指向的是什么类型的值 int * foo, * bar;声明指针后会…

Jenkins部署项目

一.安装jenkins 1.1进入jenkins官网下载jenkins war包&#xff0c;上传到服务器/usr/local目录。 1.2执行启动jenkins命令&#xff0c;&#xff08;注意jenkins版本需要的jdk版本&#xff09; /usr/local/java11/bin/java -Djava.awt.headlesstrue -jar /usr/local/jenkins.wa…

使用sdf文件+urdf文件模拟机器人示例(不用把urdf转sdf)

gazebo版本&#xff1a;harmonic&#xff1b; <launch> <group> <let name"robot_description" value"$(command xacro $(find-pkg-share gazebo_pkg)/urdf/total.xacro)"/> <node pkg"rviz2" exec"rviz2" name…

fastApi 项目

参考&#xff1a; 中文文档&#xff1a;FastAPI API接口开发其实特简单&#xff0c;Python FastApi Web 框架教程来了_根据接口文档用fastapi开发接口-CSDN博客 Python框架篇(1):FastApi-快速入门 - 知乎 官方示例目录结构 更大的应用 - 多个文件 - FastAPI . ├── app …

[讲座] - 闲聊工业设计

1&#xff0c;工业设计相关的学科分类 2&#xff0c;工业设计的职业发展路线 3&#xff0c;工业设计师的成名人物 4&#xff0c;设计了可口可乐的Loewy 可口可乐的瓶子&#xff0c;无论白天晚上还是瓶子被打碎&#xff0c;都能认出这个是可口可乐的瓶子。 草图参照了可可豆&am…