-
一、新增的选择器
-
- 1.属性选择器
-
2.结构伪类选择器
-
- 2.1: nth-child(n)
-
2.2: nth-of-type(n)
-
区别:执行顺序不同
-
3.伪元素选择器
-
二、盒子模型box-sizing
-
- 1.盒子模型存在的问题
-
2.解决方案
-
三、图片变模糊或颜色偏移filter
-
四、盒子宽度计算calc
-
[五、过度动画transition](abou 《大厂前端面试题解析+Web核心总结学习笔记+企业项目实战源码+最新高清讲解视频》无偿开源 徽信搜索公众号【编程进阶路】 t:blank#transition_87)
[](()一、新增的选择器
=======================================================================
[](()1.属性选择器
属性选择器可以根据元素特定属性的来选择元素,这样就可以不用借助于类或者id选择器
| 属性选择器 | 说明 |
| — | — |
| E[att] | 选择具有att属性的E元素 |
| E[att=“val] | 选择具有att属性且属性值等于val的E元素 |
| E[att^ =“val”] | 匹配具有att属性且值以val开头的E元素 |
| E[att$=“val”] | 匹配具有att属性且以val结尾的E元素 |
| E[att*=“val”] | 匹配具有att属性且值中含有val的E元素 |
比如:
必须是input 但是同时具有value这个属性 选择这个元素
div input[value] {
color=“red”;
}
[](()2.结构伪类选择器
[](()2.1: nth-child(n)
E:nth-child(n)选择某个父元素的一个或多个特定的子元素
n可以是数字,关键字、公式
n如果是数字,就是选择第n个子元素,里面的数字从1开始
n可以是关键字:even偶数行,odd奇数行
n可以是公式:常见的公式如下(如果n是公式,则是从0开始计算的,但是第0 个元素或者超出了元素的个数会被忽略)
公式:
| 公式 | 说明 |
| — | — |
| 2n | 偶数 |
| 2n+1 | 奇数 |
| 5n | 5 10 15 |
| n+5 | 从第5个开始(包含第5个)到最后 |
| -n+5 | 前5个(包含第5个) |
举例:
ul li:nth-child(even){
background-color:#ccc;
}
[](()2.2: nth-of-type(n)
| 格式 | 说明 |
| — | — |
| E:first-of-type | 指定类型E的第一个 |
| E:last-of-type | 指定类型E的最后一个 |
| E:nth-of-type(n) | 指定元素的第几个 |
[](()区别:执行顺序不同
E:nth-child(n)是先看nth-child(n)选的是第几个,然后再看E元素是哪一个。
E:nth-of-type(n) 先看E元素是哪一个,在看nth-of-type(n)选的是哪一个
[](()3.伪元素选择器
1、定义:伪元素选择器:利用CSS创建新标签元素,而不需要HTML标签,
2、选择符:
元素 ::before{ } 再元素内部的前面掺入内容(盒子)
元素 ::after{ }在元素内部的后面插入内容(盒子)
3、注意:
1)before和after创建一个元素,但是属于行内元素
2)新创建的这个元素在文档树中是找不到的,所以我们称为伪元素
3)语法 element::before{ }
4)before和after必须有content属性
5)伪元素选择器和标签选择器一样,权重为1
4、解决的问题: