问个简单的CSS问题

来源:百度知道 编辑:UC知道 时间:2024/07/03 07:25:52
我新学CSS代码,网上说外部样式表的优先级要小于内部样式表,可是这个代码是这样的

<html>
<head>
<title>样式优先级问题</title>
<style type="text/css">
h3{ font-size:9px;
}
</style>
<link href="3.css" type="text/css" rel="stylesheet">
</head>
<body>
<h3 >CSS标题测试</h3>
</body>
</html>

“3.CSS"如下:
h3{ font-size:50px; /* 顶端间隔50px */
}

可是为什么结果字体的大小是50,而不是9px呢?
您好,我还有2个小问题:
1.是不是2个外部样式表,都有关于字体大小的定义,那哪个外部样式表放在后面,是不是最后输出的结果就是后面这个字体的大小,有这样的规定嘛?

2.”但3.CSS是以封装好的样式“这句话怎么理解呢?封装是什么概念,不是3.css应该算外部样式表嘛

谢谢大家!

我怀疑是因为这句
<link href="3.css" type="text/css" rel="stylesheet">
放在下面的原因

这个代码显示的很清楚了。外部样式采用了9px的字体,而下面直接引用了一个CSS样式,虽然在style和link格式符下,二者的优先级是一样的,但3.CSS是以封装好的样式,所以50px的属性属于内部样式,所以根据内大于外的优先级,显示的就应该是50px

对于你的问题补充,我想应该可以这样解释一下。
3.css是一个做好的样式表,习惯说成“封装”了,呵呵~
关于优先级的显示问题,我认为,一般我们采用CSS样式表的时候,都是在<style type .....</style>这个标签下引用的。这个可以说是全局引用。而在html其他代码中使用的其他的CSS样式,属于内部重新定义的样式规则。在内外皆存在样式规则条件下,以内部的标准为主!

所以你这个例子,如果在<style type .....</style>中引用了3.css,而在这之外你写了h3{ font-size:9px;这个的话,最后显示的就是9px,而不是50.px,因为3.css已经成为外部全局的CSS样式表了

<html>
<head>
<title>样式优先级问题</title>
<link href="3.css" type="text/css" rel="stylesheet">
<style type="text/css">
h3{ font-size:9px;
}
</style>

</head>
<body>
<h3 >CSS标题测试</h3>
</body>
</html&g