前端八股文 说一说样式优先级的规则是什么?

标准的回答

javascript 复制代码
CSS样式的优先级应该分成四大类
第一类 !important:
😄无论引入方式是什么,选择器是什么,它的优先级都是最高的。
第二类 引入方式:
😄行内样式的优先级要高于嵌入和外链,嵌入和外链如果使用的选择器相同就看他们在页面中插入的顺序,在后面插入的会覆盖前面的。
第三类 选择器
😄选择器优先级:id选择器>(类选择器 | 伪类选择器 | 属性选择器 )> (后代选择器 | 伪元素选择器 )> (子选择器 > | 相邻选择器) > 通配符选择器 。
第四类 继承样式
😄是所有样式中优先级比较低的。
第五类 浏览器默认样式
😄优先级最低

加分回答:

1.使用!important要谨慎:

① 定要优先考虑使用样式规则的优先级来解决问题而不是 !important

② 只有在需要覆盖全站或外部 CSS 的特定页面中使用 !important

③ 永远不要在你的插件中使用 !important

④ 永远不要在全站范围的 CSS 代码中使用 !important

2.优先级的比较 指的是相同的样式属性,不同样式属性优先级比较失效

比如:在设置max-width时注意,已经给元素的max-width设置了!important但是还不生效,很有可能就是被width覆盖了

举例:div最终的宽度还是200px

javascript 复制代码
div { 
		max-width: 400px !important; 
		height: 200px;
		background-color: tomato; 
		width: 200px; 
}
相关推荐
xiaotao1314 小时前
第九章:Vite API 参考手册
前端·vite·前端打包
午安~婉4 小时前
Electron桌面应用聊天(续)
前端·javascript·electron
彧翎Pro4 小时前
基于 RO1 noetic 配置 robosense Helios 32(速腾) & xsense mti 300
前端·jvm
小码哥_常5 小时前
解锁系统设置新姿势:Activity嵌入全解析
前端
之歆5 小时前
前端存储方案对比:Cookie-Session-LocalStorage-IndexedDB
前端
哟哟耶耶5 小时前
vue3-单文件组件css功能(:deep,:slotted,:global,useCssModule,v-bind)
前端·javascript·css
是罐装可乐5 小时前
深入理解“句柄(Handle)“:从浏览器安全到文件系统访问
前端·javascript·安全
华科易迅5 小时前
Vue如何集成封装Axios
前端·javascript·vue.js
康一夏5 小时前
Next.js 13变化有多大?
前端·react·nextjs
糖炒栗子03265 小时前
前端项目标准环境搭建与启动
前端