慕课 前端工程师笔记 css部分

`####选择器
子选择器 div > p 选中div的子标签p
相邻兄弟选择器 img+p 图片后面紧跟的p

序号选择器

:first-child 首个元素
:last-child 末尾元素
:nth-of-type 第三个某类型元素
:nth-child(3) 第三个元素
:nth-child(3n+2) 从第2个开始 每三个选中一个
:nth-child(odd) 偶数
:nth-child(even) 奇数
:nth-last-child(3)倒数第三个元素

属性选择器

img[alt] 选择有alt属性的img标签
img[alt=”故宫”] 选择alt属性是故宫的img标签 img[alt^=”北京”] 选择alt属性以北京开头的img标签 img[alt$=”夜景”] 选择alt属性以夜景结尾的img标签 img[alt*=”美”] 选择有alt属性中含有美字的img标签 img[alt~=”手机拍摄”] 选择有alt属性中有空格隔开的手机 拍摄字样的img标签

CSS3新增伪类

:empty 选择空标签
:focus 选择当前获得焦点的表单元素
:enabled 选择当前有效的表单元素
:disabled 选择当前无效的表单元素
:checked 选择当前已经勾选的单选按钮或者复选框
:root 选择根元素,即<html>标签

伪元素

::before和::after
在元素的前面和和面加入content
::selection
CSS伪元素应用于文档中被用户选中的部分(
使用鼠标圈选的部分)
::first-letter和::first-line
::first-letter会选中某元素中(必须是块级元素)第一行的第一个字母

浮动

1.子盒子会按顺序进行贴靠,如果没有足够空间,则会寻找再前一个兄弟元素

BFC(Box Formatting Context,块级格式化上下文)是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素,反之亦然

如何创建BFC
 方法①:float的值不是none 
方法②:position的值不是static或者relative 
方法③:display的值是inline-block、flex或者inline-flex

绝对定位

绝对定位的盒子垂直居中是一个非常实用的技术
position: absolute;
top: 50%;

固定定位

固定定位只能以页面为参考点,没有子固父相这个性质

阴影

box-shadow: 10px 20px 30px 40px rgba(0,0,0,.4),10px 20px 30px 40px rgba(0,0,0,.4)

背景图片

contain和cover
contain和cover是两个特殊的background-size的值
contain表示将背景图片智能改变尺寸以容纳到盒子里 

background-clip属性
border-box 背景延伸至边框(默认值) (边框也有背景图片)
padding-box 背景延伸至内边(padding),不会绘制到边框 处(仅在dotted、dashed边框可察觉) (内边距部分有背景图片)

background-attachment属性
fixed 自己滚动条不动,外部滚动条不动
local 自己滚动条动,外部滚动条动

background综合属性

线性渐变

盒子的background-image属性可以用linear-gradient()形式创建线性渐变背景

background-image: linear-gradient(to right, blue, red); 左到右渐变
background-image: linear-gradient(45deg, blue, red); 斜着渐变

浏览器私有前缀

Chrome -webkit-
Firefox -moz-
IE、Edge -ms-

旋转

旋转变形

将transform属性的值设置为rotate(),即可实现旋转变形
transform: rotate(45deg);

可以使用transform-origin属性设置自己的自定义变换原点

缩放变形

将transform属性的值设置为scale(),即可实现缩放变形
transform: scale(3);

斜切变形

将transform属性的值设置为skew(),即可实现斜切变形

位移变形

将transform属性的值设置为translate(),即可实现位移变形
transform: translate(100px, 200px);向右移动 向下移动

3D旋转

将transform属性的值设置为rotateX()或者rotateY(),即可实现绕横轴、纵轴旋转

perspective属性

空间移动

当元素进行3D旋转后,即可继续添加translateX()、 translateY()、translateZ()属性让元素在空间进行移动
一定记住,空间移动要添加在3D旋转之后

transition

transition:width 1s linear 0s; 什么属性需要过渡 动画时长 变化速度曲线 延迟时间

动画

动画定义

@keyframes r { from {
transform: rotate(0); }to {

动画的调用

animation: r 1s linear 0s 3;哪个动画 耗时时间 动画曲线 延时 播放次数 永远写 infinte

alternate和forwards

如果想让动画的第2、4、6……(偶数次)自动逆向执行,那 么要加上alternate参数即可
 如果想让动画停止在最后结束状态,那么要加上forwards
animation: movelr 2s linear 0s infinite alternate;

多关键帧动画

#

@keyframes changeColor { 0% {
background-color: red ; }20% {
background-color: yellow ; }40% {
background-color: blue ; }60% {
background-color: green; }80% {
background-color: purple ; }100% {

`

|| 版权声明
作者:冰魄
链接:https://www.bp456.cn/78.html
声明:如无特别声明本文即为原创文章仅代表个人观点,版权归《冰魄博客》所有,欢迎转载,转载
THE END
二维码
海报
慕课 前端工程师笔记 css部分
`####选择器 子选择器 div > p 选中div的子标签p 相邻兄弟选择器 img+p 图片后面紧跟的p 序号选择器 :first-child 首个元素 :last-child 末尾元素 :nth-of-……
<<上一篇
下一篇>>