css类选择器与id选择器优先级分析

这是一个陷阱,不要太依赖标识符,类说明符更灵活。

css层级选择器怎么写

去年夏天,我在一家小公司会议室举办了一次产品发布会。
然后,在电脑上打开的PPT页面上,标题就以红色字体突出显示,这就是我精心设计的风格。
我使用了级联选择器,将标题文本的颜色设置为红色,并将背景设置为半透明,这样它看起来就可见而不会分散注意力。
那一刻我心里想:“这个级联选择器真是太好用了,它让我很快就能达到这样的效果”。
然后我想到,如果页面嵌套得更深,这个选择器还可以工作吗?

了解CSS的选择器优先级和!important权重

你提到的CSS选择器的优先顺序基本上是正确的。
但上次我遇到一个项目是因为...
标签选择器确实具有最低的优先级。
例如,如果您只写 p { margin: 1 0px; },所有段落标签都会受到影响。
这并没有什么问题,但问题就在这里。
如果写太多,可能会产生冲突。

.class 选择器比标签具有更高的优先级,这是有道理的。
像 div.box { padding: 1 5 px; },只要元素有box类就生效。
当我编写样式时,我经常使用类选择器,因为它们很灵活。

id选择器具有最高优先级,这一点一定要记住!页面ID不能重复,所以title { background: 3 3 3 ;非常精确的风格。
记得2 02 3 年在上海某商场做一个活动网页时,我用了ID来保证导航栏的样式不变。

至于!重要的是……这个人是国王,但同时也是恶魔。
你写 h1 { color: red !important; },不管前面有多少个其他选择器,这个h1 一定是红色的。
但如果你滥用了它,比如样式文件中到处都是!important,那么调试时你想改也改不了,代码就会乱七八糟。
我有一个同事尝试写一个按钮样式,但是因为一些!important而卡住了很长一段时间。

总体来说,优先顺序是正确的。
但实际使用时,尽量不要直接使用!important。
您可以尝试组合选择器,例如section.main .highlight,或者更深入,例如div > p { ... }。
这解决了优先级问题并保持代码整洁。
由你决定。
无论如何,我还在考虑如何向新人讲述这一点......