比如,你想让一个段落的文字变成红色,于是你写了下面这一段CSS代码:
p { color: red; }
然而,你在另外一个地方又想让段落文字变成蓝色。于是,你写了下面这一段CSS代码:
p { color: blue; }
但是,当你打开网页时,你发现所有的段落文字都变成了蓝色。这是为什么呢?
原因是,第二段CSS代码覆盖了第一段CSS代码。虽然第一段代码写在了前面,但是第二段代码的权重更高,所以最终生效的是第二段代码。
为了避免这种问题,大家需要给每个元素都赋予不同的类名或ID,然后在CSS样式表中针对不同的类名或ID编写代码。这样,即使出现了相同的属性,也不会互相影响。
下面是一个正确的例子:
p.red { color: red; } p.blue { color: blue; }
在HTML代码中,大家可以这样写:
<p class="red">这段文字是红色的</p> <p class="blue">这段文字是蓝色的</p>
这样,大家就可以精确地控制每个元素的外部样式,避免不小心覆盖的问题。