前端工程师————CSS学习

选择器分类


选择器分为基础选择器和复合选择器
基础选择器包括:标签选择器,类选择器,id选择器,通配符选择器
标签选择器


类选择器


语法:.类名{属性1: 属性值;} 类名可以随便起


多类名使用方式:
在下面用class调用即可


id选择器


#id名{属性1: 属性值1;}


通配符选择器


* {属性1; 属性值;}
*这里把body div spen 等等标签都变为相同的属性


字体背景


CSS字体序列


 

文本外观属性


letter-spacing属性:用于定义字间距,默认normal.
word-spacing属性:定义英文单词之间的间距。
line-height属性:设置行间距
text-transform属性:用于控制英文字符的大小写。none:不转换;capitalize:首字母大写;uppercase:全部字符转换为大写;lowercase:全部字符转换为小写
text-decoration属性:设置文本的下划线,上划线,删除线。none:没有;underline:下划线;overline:上划线;line-through:删除线。
text-align:设置文本内容水平对齐.left;right;center
text-indent属性:设置首行文本缩进
white-space属性:设置空白符的处理方式。normal:默认,到达便捷和制动换行;pre:按文档的书写格式保留空格,空行原样显示;nowrap:空格无效,不换行,增加进度条
优先级

CSS背景


 


盒子模型


border 边框 content 内容 padding 内边框 margin 外边框
边框(border)
border : border-width/border-style/border-color
border-width 定义边框粗细,单位是px
border-style 边框样式
border-color 边框颜色

soild 实线
 dashed 虚线
 dotted 点线
 border-radius 圆角
 transparent 透明色
复合写:
border: 1px solid red; 没有顺序
分开写法:
border-top: 1px solid red; 只设定上边框,其余同理
border-bottom: 10px dashed pink; 只设定下边框

弹性盒子

垂直方向

水平方向

 

可以写成flex/flex-grow 

 


表格细线边框:

折叠边框,变成单边框
border-collapse: collapse;
collapse 单词合并的意思
内边框(padding)表示边框和内容之间的距离
padding-right 右内边框
padding-top 上内边框
padding-bottom 下内边框
例:padding-left: 5px;像这种分开写
padding: 5px 10px 20px 30px; 见图所示

解释:

padding: 5px 10px 20px 30px; 是CSS中用来设置元素内边距(padding)的属性,它表示分别设置了上、右、下、左四个方向的内边距值。

具体解释如下:

  • 第一个值(5px)表示上边距(top padding)
  • 第二个值(10px)表示右边距(right padding)
  • 第三个值(20px)表示下边距(bottom padding)
  • 第四个值(30px)表示左边距(left padding)

如果只指定了一个值,那么四个方向的内边距都会设置为这个值;如果指定了两个值,第一个值会应用于上下内边距,第二个值会应用于左右内边距;如果指定了三个值,第一个值会应用于上内边距,第二个值会应用于左右内边距,第三个值会应用于下内边距;如果指定了四个值,分别应用于上、右、下、左四个方向的内边距。

margin 外边距
margin-left 左边距
margin-right 右边距
margin-top 上边距
margin-bottom 下边距

解释:margin

  • 如果只指定一个值,那么四个方向的外边距都会设置为这个值;
  • 如果指定了两个值,第一个值会应用于上下外边距,第二个值会应用于左右外边距;
  • 如果指定了三个值,第一个值会应用于上外边距,第二个值会应用于左右外边距,第三个值会应用于下外边距;
  • 如果指定了四个值,分别应用于上、右、下、左四个方向的外边距。

举例来说:

  • margin: 5px; 将会将所有外边距设置为 5 像素;
  • margin: 5px 10px; 将会将上下外边距设置为 5 像素,左右外边距设置为 10 像素;
  • margin: 5px 10px 15px; 将会将上外边距设置为 5 像素,左右外边距设置为 10 像素,下外边距设置为 15 像素;
  • margin: 5px 10px 15px 20px; 将会将上外边距设置为 5 像素,右外边距设置为 10 像素,下外边距设置为 15 像素,左外边距设置为 20 像素。


外边距可以让盒子水平居中
1.盒子必须指定宽度
2.盒子左右的外边距都设置为auto
.header{ width:90px; margin:0 auto;}
常见写法:
margin-left:auto; margin-right:auto;
margin:auto;

解释:
margin:0 auto;

margin: 0 auto; 是一种常见的 CSS 样式,通常用于水平居中元素。具体含义如下:

  • 0:表示在上下方向上不设置外边距,即上下外边距为 0。
  • auto:表示在左右方向上自动计算外边距,使得元素在其父元素中水平居中


圆角边框


borde-radius: length;
radius半径
borde-radius: 100px;圆形
圆角矩形设置为高度的一半:


阴影


盒子阴影:


box-shadow: h-shadow v-shadow blur spread color inset;
h-shadow 必须,水平阴影的位置。可以是负值
v-shadow 必须,垂直阴影的位置,允许负值
blur 可选,模糊距离
spread 可选,阴影的尺寸
color ,可选。阴影的颜色
inset 可选,将外部阴影outset改为内部阴影
例:
box-shadow: 11px 10px 34px 10px black;

解释:

  • 水平方向偏移量为 11px;
  • 垂直方向偏移量为 10px;
  • 模糊半径为 34px;
  • 扩散半径为 10px;
  • 阴影颜色为黑色。

原先盒子没有影子,当我们的鼠标经过盒子时就添加阴影效果
div:hover { 11px 10px 34px 10px black;}


文字阴影


text-shadow: h-shadow v-shadow blur color;
同上

新增文本外观属性 

text-overflow属性:用于标识文本对象内溢出的文本。clip:修剪溢出的文本,不显示...;ellipsis:多出的部分用...标识



浮动(float)


选择器 {float: 属性值;}
none 元素不浮动
left 元素向左浮动
right 元素向右浮动

 

link标签的使用:


就是在header标签中
 

插件使用的网址:

Font Awesome,一套绝佳的图标字体库和CSS框架

Flex交互式布局
基础语法如下:
Flex 布局教程:语法篇 - 阮一峰的网络日志

position四个属性详解


1. position:static;
这个属性让元素使用正常的布局(元素在文档常规流中当前的布局位置)。
2. position:relative;:相对定位
在元素原有的位置基础上,根据设置的top,left调整元素位置
不会改变页面布局,不影响其他元素的偏移,因此会在此元素未添加定位时所在位置留下空白
3. position:absolute:绝对定位
4.position:fixed;:固定定位
添加这个属性的元素会相对于屏幕视口(viewport)来定位
在滚动屏幕位置的时候元素位置不会改变。在固定顶部导航栏的时候可以使用这个属性。
fixed 属性会创建新的层叠上下文

相对定位:

绝对定位: 

 

 固定定位:(不管如何滑动页面,都不动)

display常用属性值
1. none:隐藏对象
2. inline: 指定对象为行内元素


3. block: 指定对象为块元素,显示信息


4. inline-block:指定对象为行内块元素


5. table-cell:指定对象为表格单元格
6. flex:弹性盒
7. inline转块级元素
 

outline属性


outline-color:用于设置一个元素轮廓的颜色。
属性值:1.轮廓颜色,规则同color;2.invert:反色,用于确认轮廓的显示。注意不是所有浏览器都支持该属性,若不则该属性无效。
outline-style 被用于设置一个元素轮廓的样式。
属性值:
1.none:无轮廓
2.dotted:轮廓为一系列点
3.dashed:轮廓为一系列短线
4.solid:轮廓为实线
5.double:轮廓为两根有空隙的线。outline-width 为线与空间的总和。
6.groove:轮廓呈凹下状
7.ridge:与 groove相反:轮廓呈凸起状。
8.inset:轮廓呈嵌入状
9.outset:与 inset 相反:轮廓呈突出状
outline-width 用于设置一个元素的轮廓的厚度。

animation属性


animation-name 属性,指定元素要进行的一系列动画名称,每个名称对应是 @keyframes 定义的动画序列名称。
@keyframes
@keyframes (关键帧),根据规则用于定义动画关键帧的样式,来控制CSS动画的中间步骤。
定义动画时,使用 % 或 关键字from和to,来设置动画中间步骤的变化。from相当于0%,to相当于100%
为了获得最佳的浏览器支持,您应该始终定义 0%和100% 的选择器。
animation-duration:属性指定动画持续时间。默认值为 0,意味着没有动画效果。
动画周期的时长,单位为秒(s)或者毫秒(ms),无单位或负值无效。
animation-timing-function:属性控制CSS动画执行的节奏。
animation-delay:定义动画于何时开始,即延迟动画执行时间。
animation-iteration-count:定义动画在结束前运行的次数 可以是1次 无限循环,默认值为1
animation-direction 属性指示动画是否反向播放。
normal 每个动画循环结束,动画重置到起点重新开始,这是默认属性。
alternate 每个动画循环结束,动画重结束点反向开始。
reverse 从结束点,反向开始执行动画。
alternate-reverse 从结束点,反向开始执行动画,到起始点反向执行到结束点,一直重复。
animation-fill-mode 属性,用于设置动画在执行之前和之后是否保留关键帧对应的样式。
默认值 none 不修改任何样式。
forwards 当动画结束后,修改元素样式为最后一帧的样式。
backwards 当动画开始时,修改元素样式为第一帧样式。比如设置了等待时间,等待时间中也会修改元素样式为第一帧样式。
both 遵循 forwards和backwards 的规则,开始后结束都修改样式。
animation-play-state 属性定义一个动画是否运行或者暂停。
值 paused 规定动画已暂停。running 规定动画正在播放。一般是通过js来给元素设置这个属性控制动画。

视频插入

音频插入

新增伪类选择器

转换transfrom


1.语法:
transform: translate(x,y);或者分开写
例:transform: taranlate(100px,200px);
transform: translateX(n);
transform: translateY(n);
让一个盒子水平居中:
transform:translate(-50%,-50%);
rotate旋转
2.语法:transform:rotate(度数),单位deg
3.设置旋转中心点transform-origin
语法:transform-origin: x y;
scale缩放
4.语法:transform: scale(x,y);

鼠标特效

动画
 

opacity:0.2表示透明度可以加入到keyframes中


 

3D


perspective透视需要写在父级上
3D旋转rotate3d:
transform:rotateX(45deg);表示沿着x轴方向旋转45度
transform:rotateY(45deg);表示沿着y轴方向旋转45 度
transform:rotateZ(45deg);表示沿着Z轴方向旋转45度
transform:rotate3d(x,y,z,deg);表示沿着定义轴旋转deg角度
 

媒体查询

雪碧图

[ 「今でもあなたは私の光。」❤️如今你依旧是我的光。
版权声明:本文为博主「南栀北夏」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:http://www.jinghan.site
时光清浅处,一步一安然!
---致随遇而安的者

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode-98. 验证二叉搜索树【树 深度优先搜索 二叉搜索树 二叉树】

LeetCode-98. 验证二叉搜索树【树 深度优先搜索 二叉搜索树 二叉树】 题目描述:解题思路一:中序遍历解题思路二:0解题思路三:0 题目描述: 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树…

【蓝桥杯练习】tarjan算法求解LCA

还是一道比较明显的求LCA(最近公共祖先)模型的题目,我们可以使用多种方法来解决该问题,这里我们使用更好写的离线的tarjan算法来解决该问题。 除去tarjan算法必用的基础数组,我们还有一个数组d[],d[i]记录的是每个点的出度,也就是它的延迟时间…

氮气柜常用的制作材质有哪些?

氮气柜主要用于存储对湿度敏感或需要在低氧环境中保存的精密部件、电子元器件、化学品、文物等,需要确保柜体的密闭性和内部环境的稳定,以防止氧化、受潮或变质。 常见的材质有冷轧钢板,冷轧钢板通过冷轧工艺使钢材组织更紧密,从而…

LeetCode-543. 二叉树的直径【树 深度优先搜索 二叉树】

LeetCode-543. 二叉树的直径【树 深度优先搜索 二叉树】 题目描述:解题思路一:DFS解题思路二:另一种写法DFS解题思路三:0 题目描述: 给你一棵二叉树的根节点,返回该树的 直径 。 二叉树的 直径 是指树中任…

不能在主机和虚拟机之间拷贝文本(虚拟机ubuntu16.04)

问题 ubuntu16.04不能在主机和虚拟机之间拷贝文本。 原因 vmware tools没安装好。 解决办法 重新安装vmware tools,步骤入下: 让虚拟机加载C:\Program Files (x86)\VMware\VMware Workstation\linux.iso光盘文件,设置如下: …

C++的并发世界(四)——线程传参

1.全局函数作为传参入口 #include <iostream> #include <thread> #include <string>void ThreadMain(int p1,float p2,std::string str) {std::cout << "p1:" << p1 << std::endl;std::cout << "p2:" <<…

Linux安装conda

目录 conda是什么简介conda与miniconda、anaconda的关系 安装下载文件bash安装激活软件检查安装是否成功配置镜像源 创建环境 conda是什么 简介 conda是一个开源的包管理器和环境管理器&#xff0c;用于安装、运行和更新包和它们的依赖项。它可以轻松地在计算机上创建隔离的环…

刷题DAY44 | 完全背包问题 LeetCode 518-零钱兑换 II 377-组合总和 Ⅳ

完全背包问题模版 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i]&#xff0c;得到的价值是value[i] 。每件物品都有无限个&#xff08;也就是可以放入背包多次&#xff09;&#xff0c;求解将哪些物品装入背包里物品价值总和最大。 完全背包和01背包问题…

《UE5_C++多人TPS完整教程》学习笔记29 ——《P30 Blaster 角色(Blaster Character)》

本文为B站系列教学视频 《UE5_C多人TPS完整教程》 —— 《P30 Blaster 角色&#xff08;Blaster Character&#xff09;》 的学习笔记&#xff0c;该系列教学视频为 Udemy 课程 《Unreal Engine 5 C Multiplayer Shooter》 的中文字幕翻译版&#xff0c;UP主&#xff08;也是译…

网络原理 - HTTP / HTTPS(3)——http响应

目录 一、认识 “状态码”&#xff08;status code&#xff09; 常见的状态码 &#xff08;1&#xff09;200 OK &#xff08;2&#xff09;404 Not Found &#xff08;3&#xff09;403 ForBidden &#xff08;4&#xff09;405 Method Not Allowed &#xff08;5&…

从零到一:基于 K3s 快速搭建本地化 kubeflow AI 机器学习平台

背景 Kubeflow 是一种开源的 Kubernetes 原生框架&#xff0c;可用于开发、管理和运行机器学习工作负载&#xff0c;支持诸如 PyTorch、TensorFlow 等众多优秀的机器学习框架&#xff0c;本文介绍如何在 Mac 上搭建本地化的 kubeflow 机器学习平台。 注意&#xff1a;本文以 …

从头开发一个RISC-V的操作系统(二)RISC-V 指令集架构介绍

文章目录 前提ISA的基本介绍ISA是什么CISC vs RISCISA的宽度 RISC-V指令集RISC-V ISA的命名规范模块化的ISA通用寄存器Hart特权级别内存管理与保护异常和中断 目标&#xff1a;通过这一个系列课程的学习&#xff0c;开发出一个简易的在RISC-V指令集架构上运行的操作系统。 前提…

JavaSE-11笔记【多线程2(+2024新)】

文章目录 6.线程安全6.1 线程安全问题6.2 线程同步机制6.3 关于线程同步的面试题6.3.1 版本16.3.2 版本26.3.3 版本36.3.4 版本4 7.死锁7.1 多线程卖票问题 8.线程通信8.1 wait()和sleep的区别&#xff1f;8.2 两个线程交替输出8.3 三个线程交替输出8.4 线程通信-生产者和消费者…

硬件了解 笔记 2

CPU 内存控制器&#xff1a;负责读写数据 代理系统和平台IO&#xff1a;与主板上的芯片组通信&#xff0c;并管理PC中其他组件之间的数据流 主板&#xff1a;巨大的印刷电路板 Chipset&#xff1a;芯片组&#xff0c;位于散热器下方&#xff0c;直接连接到CPU的系统代理部分 …

应急响应-网站入侵篡改指南Webshell内存马查杀漏洞排查时间分析

知识点 网站入侵篡改防范应对指南 主要需了解&#xff1a;异常特征&#xff0c;处置流程&#xff0c;分析报告等 主要需了解&#xff1a;日志存储&#xff0c;Webshell检测&#xff0c;分析思路等掌握 中间件日志存储&#xff0c;日志格式内容介绍&#xff08;IP,UA头,访问方…

KV260 BOOT.BIN更新 ubuntu22.04 netplan修改IP

KV260 2022.2设置 BOOT.BIN升级 KV260开发板需要先更新BOOT.BIN到2022.2版本&#xff0c;命令如下&#xff1a; sudo xmutil bootfw_update -i “BOOT-k26-starter-kit-202305_2022.2.bin” 注意BOOT.BIN应包含全目录。下面是更新到2022.1 FW的示例&#xff0c;非更新到2022.…

IPSec VPN

IP Security,IP安全 1、特点 L3的VPN 缺:不支持组播、配置复杂、延迟增加、资源消耗较多 优:具备访问控制、密码学四个维度、抗重放打击 2、组件 ①安全协议 1)验证头技术(AH) IP协议号51 提供数据完整性检查,身份验证,抗重放攻击 无法做数据的机密性 AH的完…

【异常错误】 Expected to have finished reduction in the prior iteration before star、find_unused_parameters

运行代码时出现了错误&#xff1a; RuntimeError: Expected to have finished reduction in the prior iteration before starting a new one. This error indicates that your module has parameters that were not used in producing loss. You can enable unused parameter …

【Django学习笔记(四)】JavaScript 语言介绍

JavaScript 语言介绍 前言正文1、JavaScript 小案例2、代码位置2.1 在当前 HTML 文件中2.2 在其他 js 文件中 3、代码注释3.1 HTML的注释3.2 CSS的注释3.3 Javascript的注释 4、变量 & 输出4.1 字符串4.2 数组4.3 对象(python里的字典) 5、条件语句6、函数7、DOM7.1 根据 I…

【树上倍增】【内向基环树】【 图论 】2836. 在传球游戏中最大化函数值

本文涉及知识点 树上倍增 内向基环树 图论 LeetCode2836. 在传球游戏中最大化函数值 给你一个长度为 n 下标从 0 开始的整数数组 receiver 和一个整数 k 。 总共有 n 名玩家&#xff0c;玩家 编号 互不相同&#xff0c;且为 [0, n - 1] 中的整数。这些玩家玩一个传球游戏&am…