按照经验,为了方便比较 CSS 属性的优先级,可以给 CSS 属性所处的环境定义一个权重
-
!important
:10000 -
内联样式:1000
-
id选择器:100
-
类选择器、属性选择器、伪类:10
-
元素选择器、伪元素:1
-
通配符:0
比较优先级的严谨方法:
-
从权值最大的开始比较每一种权值的数量多少,数量多的则优先级高,即可结束比较
-
如果数量相同,比较下一个较小的权值,以此类推
-
如果所有权值比较完毕后,发现数量都相同,就采取“就近原则”
总结:选择器的针对性越强,优先级越高
!important
> 内联样式 > id > class、属性、伪类 > 标签(元素)、伪元素 > 通用(*)
优先级细节
以下 2 个选择器效果一致:
#test
和 [id="test"]
看起来好像一样,其实本质不一样
#test
优先级比[id="test"]
高
思考:为什么会出现以下结果
第一个是因为 a 标签有默认的样式,因此无法从 div 继承;
第二个是因为 p 无法包含 div,如果是 div 包含 p 则可以
CSS 属性使用总结
=============================================================================
为何有时候编写的 CSS 属性不好使,有可能是因为:
-
选择器的优先级太低
-
选择器没选中对应的元素
-
CSS 属性的使用形式不对
-
元素不支持此 CSS 属性,比如 span 默认是不支持
width
和height
的 -
浏览器不支持此 CSS 属性,比如旧版本的浏览器不支持 CSS3 的某些属性
-
被同类型的 CSS 属性覆盖,比如 font 覆盖
font-size
建议:充分利用浏览器的开发者工具进行调试(增加、修改样式)、查错
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
最后
今天的文章可谓是积蓄了我这几年来的应聘和面试经历总结出来的经验,干货满满呀!如果你能够一直坚持看到这儿,那么首先我还是十分佩服你的毅力的。不过光是看完而不去付出行动,或者直接进入你的收藏夹里吃灰,那么我写这篇文章就没多大意义了。所以看完之后,还是多多行动起来吧!
可以非常负责地说,如果你能够坚持把我上面列举的内容都一个不拉地看完并且全部消化为自己的知识的话,那么你就至少已经达到了中级开发工程师以上的水平,进入大厂技术这块是基本没有什么问题的了。
文章就没多大意义了。所以看完之后,还是多多行动起来吧!
可以非常负责地说,如果你能够坚持把我上面列举的内容都一个不拉地看完并且全部消化为自己的知识的话,那么你就至少已经达到了中级开发工程师以上的水平,进入大厂技术这块是基本没有什么问题的了。
CodeChina开源项目:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】