滨州信息网
育儿
当前位置:首页 > 育儿

CSS如何为同一个元素处理多种规则

发布时间:2019-09-13 19:48:23 编辑:笔名

重要的特性

添加关键字important可以增加你的声明的重要性。增加重要性的声明会覆盖与它们对应的标准或非重要声明。如果读者和作者的样式表都包含了重要声明语句,那么作者声明将会覆盖读者声明。下面的例子演示了声明一个CSS属性为重要。

<html>

<head>

<title> Cascading</title>

<style type="text/css">

H1 {font-face: arial; font-size: 12pt; color: red ! important;}

</style>

</head>

<body>

<h1 style="color: blue;">TechRepublic.com</h1>

</body>

</html>

在上面的例子中,你可以注意到分配给样式H1的颜色red总是有用的,因为它被声明为重要的。值得注意的是,当一个项目在读者和作者样式表中均被声明为重要时,作者的声明将会覆盖读者的声明。

规则来源

一个web用户可以创建和使用他/她自己的样式表。在这种情况下,在用户样式表和web应用样式表之间将会产生冲突。当这些冲突发生时,web应用的设置胜过当所有项目拥有同样的重要性时。可以使用重要的声明胜过对应非重要的声明,但是,当都声明为重要时,就意味着web应用会赢。

特性

当CSS规则的特性,更有特殊性的规则会赢得优先。因此,如果选择器都是一样的,那么最后一个就会赢得优先。所以下面的例子中总是定义H1为绿色。

<html>

<head>

<title>Cascading</title>

<style type="text/css">

H1 {color: red;}

H1 {color: green;}

</style></head>

<body>

<h1>TechRepublic.com</h1>

</body></html>

另一方面,下面例子中包含在BODY中的H1有一个特殊的定义,所以元素H1显示为红色。

<html><head>

<title>Cascading</title>

<style type="text/css">

BODY H1 {color: red;}

H1 {color: green;}

</style></head>

<body>

<h1>TechRepublic.com</h1>

</body></html>

当显示一个页面时,越具特色的选择器,越有更大的优先权。实际上,有专门用于估算元素特性的规则,基本上,数字值被分配给某些CSS选择器,每个选择器的值为100,类选择器的值为10,每个HTML选择器的值为1。如果你将这些值赋给CSS规则,那么值大的会赢得优先。下面的计算对应前面的例子。BODY H1有两个HTML选择器,因此值为1+1=2。H1包含一个HTML选择器,因此值为1,在每个实例中,2恒大于1,所以元素H1(包含在BODY中的)都是红色。

顺序

规范的顺序很简单:当两个规则有相同的重要性时,后一个规则优先性大。当有多个样式表来源时,使用这个规则可能会导致混淆。因此下面的操作顺序十分有用:

浏览器默认:第一,使用了浏览器默认或者用户自定义CSS规则。

外部样式表:使用了外部定义的样式表

内部样式表(在<head>标签中指名)

内嵌样式表(在一个HTML元素的内部):使用了应用于每个HTML元素的特别样式

注意

目前,CSS是大多数web应用的一个标准特征。随着web应用的增加,大量的CSS来源被使用。为此,你需要深入了解用户系统是如何处理多种CSS规则的。这样就确保了对你或者对用户都不会产生惊讶。

可以在此处获得CSS资源。

责任编辑:德东

查看本文国际来源

糖尿病胃轻瘫便秘多久好
2个月宝宝咳嗽
为什么夜间孩子容易发烧
宝宝一直咳嗽不停怎么办