前端学习第二天笔记 CSS选择 盒子模型 浮动 定位 CSS3新特性 动画 媒体查询 精灵图雪碧图 字体图标

devtools/2024/12/23 0:12:32/

CSS学习

      • CSS选择器
        • 全局选择器
        • 元素选择器
        • 类选择器
        • ID选择器
        • 合并选择器
      • 选择器的优先级
      • 字体属性
      • 背景属性
      • 文本属性
      • 表格属性
        • 表格边框
        • 折叠边框
        • 表格文字对齐
        • 表格填充
        • 表格颜色
      • 关系选择器
        • 后代选择器
        • 子代选择器
        • 相邻兄弟选择器
        • 通用兄弟选择器
      • CSS盒子模型
      • 弹性盒子模型
      • 父元素上的属性
        • flex-direction属性
        • justify-content属性
        • align-items属性
        • flex属性---子元素上的属性
      • 文档流
      • 浮动
        • 浮动的定义
        • 浮动的原理
        • 元素向左浮动
        • 元素向右浮动
        • 所有元素向左浮动
        • 当容器不足时
      • 清除浮动
        • 浮动的副作用
        • 清除浮动的方法
      • 定位
        • 相对定位
        • 绝对定位
        • 固定定位
        • 温馨提示
        • Z-Index
      • CSS3新特性
        • 圆角
        • 阴影
      • 动画
        • @keyframes创建动画
        • animation执行动画
      • 媒体查询
        • 设置meta标签
        • 媒体查询语法
      • 雪碧图
        • 优点
        • 原理
      • 字体图标
        • 优点

CSS选择器

全局选择器
  1. 可以与任何元素匹配,优先级最低,一般做样式初始化
css">*{margin:0;padding:0;
}
元素选择器

在这里插入图片描述

在这里插入图片描述

类选择器
  1. 固定用圆点.来定义,针对你想要的所有标签使用
<h2 class="content">你好</h2>
/*定义类选择器*/
.content{color:red;
}
  1. class属性的特点
    • 类选择器可以被多种标签使用
    • 类名不能以数组开头
    • 同一个标签可以使用多个类选择器,用空格隔开
<h3 class="classone classtwo">我是一个h3</h3>
ID选择器
  1. 针对某一个特定的标签来使用,只能使用一次,CSS中的ID选择器以#来定义。
    • ID是唯一的
    • ID不能以数字开头
<h2 id="mytitle">你好</h2>
#mytitle{boreder:3px dashed green;
}
合并选择器

在这里插入图片描述

选择器的优先级

CSS中,权重用数字衡量。

  • 元素选择器的权重是:1
  • class选择器的权重是:10
  • id选择器的权重是:100
  • 内联样式选择器的权重是:1000
  • 优先级从高到低:行内样式>ID选择器>类选择器>元素选择器注: 当权重相等时,按照代码的执行顺序来决定

字体属性

CSS可以属性定义字体、颜色、大小、加粗、文字样式

  1. color:规定文本的颜色

  2. font-size:设置文本的大小

  3. font-weight:设置文本的粗细
    在这里插入图片描述

  4. font-style:指定文本的字体样式

    • normal:默认值
    • italic:定义斜体字
  5. font-family:属性指定一个元素的字体

在这里插入图片描述

背景属性

在这里插入图片描述

  1. background-repeat属性

    • 该属性设置如何平铺背景图像
      • repeat:默认值
      • repeat-x:只向水平方向平铺
      • repeat-y:只向垂直方向平铺
      • no-repeat:不平铺
  2. background-size属性
    在这里插入图片描述

  3. background-positon属性
    在这里插入图片描述

文本属性

  1. text-align:指定元素文本的水平对齐方式
    • left:文本居左排列,默认值
    • right:把文本排列到右边
    • center:把文本排列到中间
<style>css">h1{text-align:center;}
</style>
  1. text-decoration:属性规定添加到文本的修饰,下划线、上划线、删除线等
    • underline:定义下划线
    • overline:定义上划线
    • line-through:定义删除线
<style>css">h1{text-decoration:underline;}
</style>
  1. text-transform:属性控制文本的大小写
    • captialize:定义每个单词开头大写
    • uppercase:定义全部大写字母
    • lowercase:定义全部小写字母
<style>css">p1{text-transform:lowercase;}
</style>
  1. text-indent:属性规定文本块中首行文本的缩进
    • 负值是允许的,如果值是负数,将第一行左缩进
<style>css">p2{text-indent:30px;}
</style>

表格属性

  • 使用CSS可以使HTML表格更美观
表格边框
  • 指定CSS表格边框,使用border属性
<style>css">
table,td{border:1px solid black;
}
</style>
折叠边框
  • border-collapse属性设置表格的边框是否被折叠成一个单一的边框或隔开
    在这里插入图片描述
表格文字对齐
  1. text-align属性设置为水平对齐方式,向左、右、或中心
    td{text-align:right;}
  2. 垂直对齐属性设置垂直对齐
    td{height:50px;vertical-align:bottom;}
表格填充
  • 如果在表的内容中控制空格之间的边框,应使用td和th元素的填充属性
td{padding:15px};
表格颜色

在这里插入图片描述

关系选择器

后代选择器
  • 选择所有被E元素包含的F元素,中间用空格隔开
  • 在这里插入图片描述
ul li{color: red;}
子代选择器
  • 选择所有作为E元素的直接子元素F,对更深一层的元素不起作用,用>表示
  • 在这里插入图片描述
<style>css">
ul>li{
color: red;
}
</style>
相邻兄弟选择器
  • 选择紧跟E元素后的F元素,用加号表示,选择相邻的第一个兄弟元素,只能向下选择
  • 在这里插入图片描述
<style>css">
h3+p{
color: red;
}
</style>
通用兄弟选择器
  • 选择E元素之后的所有兄弟选择器F,作用于多个元素,用~隔开在这里插入图片描述
<style>css">
h3~p{
color:red;
}
</style>

CSS盒子模型

  • 盒子模型在设计和布局时使用
    在这里插入图片描述

在这里插入图片描述

弹性盒子模型

在这里插入图片描述

  • 默认弹性盒子中的内容是横向摆放

父元素上的属性

flex-direction属性

在这里插入图片描述

justify-content属性

在这里插入图片描述

align-items属性

在这里插入图片描述

flex属性—子元素上的属性

在这里插入图片描述

  • 可以理解为权重
<style>css">
.box1{width: 100px;height: 100px;background-color: red;flex:2;
}
.box2{width: 100px;height: 100px;background-color: green;flex: 2;
}
.box3{width: 100px;height: 100px;background-color:blue;flex: 1;
}
</style>

文档流

  • 文档流是文档中可显示对象在排列时所占用的位置/空间

  • 例如:块元素自上而下摆放,内联元素,从左到右摆放

  • 标准流里面的限制非常多,导致很多页面效果无法实现

    1. 高矮不齐,底边对齐
    2. 空白折叠现象
      • 无论多少个空格、换行、tab、都会折叠成一个空格
      • 如果我们想让img标签之间没有空隙,必须紧密连接
  • 脱离文档流

    • 浮动
    • 绝对定位
    • 固定定位

浮动

  • 增加一个浮层来放置内容
浮动的定义
  • float属性定义元素在哪个方向浮动,任何元素都可以浮动
    • left:元素向左浮动
    • right:元素向右浮动
浮动的原理
  1. 浮动以后使元素脱离了文档流
  2. 浮动只能左右浮动,没有上下浮动
元素向左浮动

在这里插入图片描述

元素向右浮动

在这里插入图片描述

所有元素向左浮动
  • 当所有元素同时浮动的时候,会变成水平摆放,向左或者向右
当容器不足时
  • 当容器不足时以横向摆放内容的时候,会在下一行摆放
    在这里插入图片描述

清除浮动

浮动的副作用
  • 当元素设置float浮动后,该元素就会脱离文档流并向左/向右浮动。
    1. 浮动元素会造成父元素高度塌陷
      在这里插入图片描述

    2. 后续元素会受到影响

清除浮动的方法
  1. 父元素设置高度

  2. 受影响的元素增加clear属性

  3. overflow清除浮动
    在这里插入图片描述

  4. 伪对象方式

<style>css">
.container{content: "";display: block;clear:both;
}
</style>

定位

在这里插入图片描述

相对定位
<style>css">
div{
width: 200px;
height: 200px;
background-color: red;
position: relative;
left: 200px;
top:100px;
}
</style>
绝对定位
  • 绝对定位脱离了文档流
  • 随着页面的滚动会一起滚动
<style>css">
.box1{
height: 200px;
width: 200px;
background-color: red;
position: absolute;
}
</style>
固定定位
  • 固定定位也脱离了文档流
  • 不会随着页面的滚动而滚动
<style>css">
.box1{
width: 100px;
height: 100px;
background-color: red;
position: fixed;
right: 100px;
bottom: 100px;
}
</style>
温馨提示
  • 设置定位之后,相对定位和绝对定位他是相对于具有定位的父级元素进行位置调整,如果父级元素不存在定位,则继续向上逐级寻找,直到顶层文档。
Z-Index
  • Z-index 属性设置元素的堆叠模式,拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面

CSS3新特性

圆角

在这里插入图片描述

<style>css">
div{
height: 50px;
width: 100px;
background-color: aqua;
border-radius: 20px;
}
</style>
阴影
  • box-shadow向框添加一个或者多个阴影
    在这里插入图片描述
<style>css">
.box{
width: 400px;
height:400px;
background-color: aqua;
margin: 0 auto;
box-shadow: 0px 0px 25px gray;
}
</style>

动画

  • 动画是使元素从一种方式逐渐变化为另一种样式的效果
  • 请用百分比来规定变化发生的时间,或用关键词“from”和"to",等同于0%和100%
  • 0%是动画的开始,100%是动画的结束
@keyframes创建动画

在这里插入图片描述

animation执行动画

在这里插入图片描述

在这里插入图片描述

<style>css">
div{
width: 200px;
height: 200px;
background-color: red;
animation: myanaimation 3s linear 0s infinite normal;
}/* hover鼠标移动到其上时触发 */
div:hover{
animation-play-state: paused;
}@keyframes myanaimation{
0%{
background-color: red;
}
50%{
background-color: green;
}
100%{
background-color: red;
}
}
</style>

媒体查询

  • 媒体查询能使页面在不同的终端设备下达到不同的效果
  • 媒体查询会根据设备的大小自动识别加载不同的样式
设置meta标签
  • 使用设备的宽度作为视图宽度并禁止初始的缩放,在<head>标签里加入这个meta标签
    在这里插入图片描述
媒体查询语法

在这里插入图片描述

<style>css">
@media screen and (max-width:768px) {
div{
background-color: aqua;
}.p1{
display: none;
}.p2{
display: none;
}
}@media screen and (max-width:992px) and (min-width:768px) {
div{
background-color: blue;
}.p1{
display: none;
}.p2{
display: block;
}
}@media screen and (min-width:992px) {div{
background-color: red;
}.p1{
display: block;
}.p2{
display: block;
}
}
</style>

雪碧图

在这里插入图片描述

优点
  1. 减少图片的字节
  2. 减少网页的http请求,从而大大的提高页面的性能
原理
  1. 通过background-image引入背景图片
  2. 通过background-position把背景图片移动到自己需要的位置

字体图标

优点
  1. 轻量性:加载速度快,减少http请求
  2. 灵活性:可以利用CSS设置大小颜色等
  3. 兼容性:网页字体支持所有现代浏览器,包括IE低版本

http://www.ppmy.cn/devtools/123368.html

相关文章

【分布式微服务云原生】掌握分布式缓存:Redis与Memcached的深入解析与实战指南

掌握分布式缓存&#xff1a;Redis与Memcached的深入解析与实战指南 摘要&#xff1a; 本文深入探讨了分布式缓存在现代分布式系统中的重要性&#xff0c;详细分析了Redis和Memcached两种主流的分布式缓存解决方案的原理和使用场景。文章不仅提供了核心技术的深入解析&#xff…

[Linux#61][UDP] port | netstat | udp缓冲区 | stm32

目录 0. 预备知识 1. 端口号的划分范围 2. 认识知名端口号 3. netstat 命令 4. pidof 命令 二.UDP 0.协议的学习思路 1. UDP 协议报文格式 报头与端口映射&#xff1a; 2. UDP 的特点 面向数据报&#xff1a; 3. UDP 的缓冲区 4. UDP 使用注意事项 5. 基于 UDP 的…

QT<27> Qt中编写串口通讯,例如读RFID、EKS等等

一、添加文件 ①在项目中添加C文件&#xff0c;继承自QObject ②添加必要模块以及头文件 项目pro文件添加 serialport模块 项目.h文件中添加头文件 #include <QSerialPort> #include <QSerialPortInfo> 二、具体代码 ①在.h文件中声明一个类对象 QSerialPor…

如何快速自定义一个Spring Boot Starter!!

目录 引言&#xff1a; 一. 我们先创建一个starter模块 二. 创建一个自动配置类 三. 测试启动 引言&#xff1a; 在我们项目中&#xff0c;可能经常用到别人的第三方依赖&#xff0c;又是引入依赖&#xff0c;又要自定义配置&#xff0c;非常繁琐&#xff0c;当我们另一个项…

vue2接入高德地图实现折线绘制、起始点标记和轨迹打点的完整功能(提供Gitee源码)

目录 一、申请密钥 二、安装element-ui 三、安装高德地图依赖 四、完整代码 五、运行截图 六、官方文档 七、Gitee源码 一、申请密钥 登录高德开放平台&#xff0c;点击我的应用&#xff0c;先添加新应用&#xff0c;然后再添加Key。 ​ 如图所示填写对应的信息&…

每天一道面试题5——Linux内核包含哪些部分?

Linux 内核的组成部分&#xff1a; 进程管理&#xff08;Process Management&#xff09; 功能&#xff1a;负责管理系统中的所有进程&#xff0c;包括进程的创建、调度、终止&#xff0c;以及多任务处理。进程管理还处理线程和进程的并发与同步问题。调度器&#xff1a;Linux …

uview表单校验不生效问题

最近几次使用发现有时候会不生效&#xff0c;具体还没排查出来什么原因&#xff0c;先记录一下解决使用方法 <u--formlabelPosition"top"labelWidth"auto":model"form":rules"rules"ref"uForm" ><view class"…

Python绘制--绘制心形曲线

今天&#xff0c;我们将通过Python代码来绘制一个心形曲线&#xff0c;这是一个经典的数学表达。 一、心形曲线的数学原理 心形曲线&#xff0c;也被称为心脏曲线&#xff0c;是一个代数曲线&#xff0c;可以通过参数方程定义。其数学表达式如下&#xff1a; x16sin⁡3(t)x16…