一. 伪类
伪类也是一种选择器;
只不过它的连接符是固定的冒号:, 然后后面的条件也不可以自定义了, 成了它们的固定单词, 比如target, disabled, hover;
二.伪类具体介绍
1.目标伪类
主要用在锚点中
:target{}
2.元素状态伪类
主要是获取disabled或者enabled这种状态
:disabled{}
3.动态伪类
主要是几种状态,可以用在很多元素上,除了a元素还可以用在其他元素;
4.结构伪类
:nth_child(n)作为子元素的第几个元素
:nth_last_child(n)作为子元素的倒数第几个元素
:nth_of_type(n)作为子元素的第几个元素, 并且如果是交集选择器, 那么只找本元素,其他元素忽略
:nth_last_of_type(n):
:only_child:作为唯一的子元素
:only_of_type:作为唯一的子元素,且是统一类型
:root代表html标签
:empty:选中元素的内容为空
:not(选择器): 取反
三. 伪元素
::first-letter: 第一个文字
::first-line: 第一行
::before: 在一行文字前面插入一些内容
四. emmet语法
五. css属性之继承
看mdn文档,有些属性可以继承, 有些不可以;
六. css属性之层叠
首先如果自己设置, 自己设置的权重最高,比!importtant都要高, 优先使用自己设置的;
然后相同选择器, 后面的层叠前面的;
然后不同选择器, 层叠权重为
有点矛盾,如果自己设置的最高,那为什么内联样式只有1000,内联样式不肯定是自己设置吗?