2css选择器的优先级-css选择器世界

html-css08

2css选择器的优先级-css选择器世界,第1张

css优先级有6级。

0级:通配选择器、选择符和逻辑组合伪类。

通配选择器是 * 。

选择符有+、-、~、空格和 || 。

逻辑组合伪类有 :not()、:is()和 :where。这些伪类影响优先级的是括号里的选择器。

eg: :not([rel=nofollow])

1级:标签选择器。

2级:类选择器、属性选择器和伪类。

3级:ID选择器

4级:内联选择器

5级:!important

(1)数值计算法

0级--优先级为0;

1级--优先级为1;

2级--优先级为10;

3级--优先级为100。

(2)后来居上

优先级数值相同情况下,越后面优先级越高。

1.增加css选择器优先级的方法

(1)重复选择选择器自身

.foo.foo {}

(2)借助必然会存在的属性选择器

.foo[class] {}

#foo[id] {}

除了这两种方法,常用的是增加父级嵌套和增加标签选择器,但这种方法增加了耦合,降低了可维护性,不建议使用。

2.数值计算法的点评

不同级别的选择器优先级差距并不是10比1,差距比这大得多,而是因为实际开发中不会连续写10个而已。

在ie浏览器下,256个类选择器的优先级大于id选择器的优先级,原因是类名是以8字节存储的,8字节所能容纳的最大值就是255.

除了ie外,其他都使用16进制,不会出现这种情况。

了解css选择器的优先级后,日常工作就知道是怎么回事了。

是因为默认的优先级高于设置的优先级,所以显示不正确。

css选择器优先级

                       CSS选择器的优先级:作用的元素一样,样式一样,就会有优先级问题,当优先级相同时,一旦发生重叠,以样式后面为主

                       CSS选择器:统配选择器,类选择器,标签选择器,id选择器,后代选择器,会有相加的过程,群组选择器,不会有相加的过程

                      相同类型的选择器,样式冲突下,后覆盖前;不同类型的选择器,样式冲突下,优先级高的覆盖低的

                      * <tags <class <id <style <important,优先级高的选择器绝对高于优先级低的选择器的优先级,无论有多少个低的选择器

                       background:blue!important优先级最高,慎用(非得用的话,加注释,说明一下)

photoshop快捷键:

                            1. command+h:是否显示额外内容

                             2.V:移动工具

                             3.M:选取工具

                             4.Z:放大 Alt:缩小

                             5.I:取色

                             6.T文字编辑

                              7.command+K首选项

                              8.command+shift+c强复制

                               9.command+N新建

                               10.command+V粘贴