使用CSS样式表一共有2种方式:内部和外部,其中内部分为行内样式和嵌入式,外部分为导入式和链接式。

如果需要在不同的方式中设定同一个属性的时候,样式的优先级别就出现了。

测试代码如下:

red.css:

  1. p{
  2. color:red;
  3. }

test.html:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312">
<title>Test Document</title>
<style type="text/css">
p{
color:blue;
}
@import url(red.css);
</style>
</head>
<body>
<p style="color:gray;">文字颜色</p>
</body>

此时,显示文字颜色为灰色,说明行内样式优先级别最高:

去掉行内样式之后,显示为蓝色,说明页面嵌入式样式的优先级是仅次于行内样式的:

以上说明页面内部样式的优先级别是高于外部样式的。使用外部样式又有两种方式,分为导入式和链接式。

增加一个样式表:green.css

  1. p{
  2. color:green;
  3. }

分以下两种情况:

情况A:

<link href="green.css" type="text/css" rel="stylesheet">

<style type="text/css">

@import url(red.css);

</style>

情况B:

<style type="text/css">

@import url(red.css);

</style>

<link href="green.css" type="text/css" rel="stylesheet">

经过尝试后发现,外部样式以最后的样式为准。

经过上述测试,可以总结如下:

  • 行内样式 > 嵌入样式 > 外部样式
  • 外部样式中,出现在后面的样式优先级高于出现在前面的。

但是,是不是所有的情况都是如此呢?

将head中的样式代码改为下面的代码:

<style type="text/css">

p{

color:blue;

}

</style>

<style type="text/css">

@import url(red.css);

</style>

此时显示的字体颜色为红色:

再例如:

<style type="text/css">

p{

color:blue;

}

</style>

<link href="green.css" type="text/css" rel="stylesheet">

<style type="text/css">

@import url(red.css);

</style>

此时显示字体颜色还是为红色,此时的优先级为:导入样式 > 链接样式 > 嵌入样式。因此,如果是<head>中存在多个<style>标记,那么这些样式的先后顺序决定了优先级别,而同一 个<style>内部,才会遵循嵌入样式优先于导入样式的规则。

虽然各种使用方法有不同的优先级,但是在写样式的时候,最好只采用1~2种方式,这样利于后期的维护和管理,也不会出现样式冲突的情况。

CSS样式表优先级的更多相关文章

  1. css样式表和选择器的优先级以及position元素属性值的区别

    css样式表优先级 问题:当同一个HTML元素被不止一个样式定义时,会使用哪个样式呢? 答:一般而言,所有的样式会根据下面的规则层叠于一个新的虚拟样式表中,其中数字4拥有最高的优先权. 1.浏览器缺省 ...

  2. CSS:CSS样式表及选择器优先级总结

    我们在写网页的时候经常会遇到同一个HTML文件,使用了外部样式.内部样式以及内联样式,那么如果发生冲突时浏览器是怎么抉择的呢? 也会遇到这样的情况,在样式表中,对同一个HTML元素,我们有可能既用到了 ...

  3. 2016年10月27日--css样式表

    CSS样式表 样式表分类 1.内联样式表 和html联合显示,控制精确,但是可重用性差,冗余多. !doctype html> <html> <head> <met ...

  4. 0811 css样式表基本

    CSS(Cascading Style Sheets,层叠样式表),作用是美化HTML网页. /*注释*/    注释语法 1. 样式表分类 ①内联样式表 和html联合显示,控制精确,但是可重用性差 ...

  5. CSS样式的优先级

    1.相同权值情况下,CSS样式的优先级总结来说,就是--就近原则(离被设置元素越近优先级别越高): 内联样式表(标签内部)> 嵌入样式表(当前文件中)> 外部样式表(外部文件中). 2.权 ...

  6. 3月22日 html(三)css样式表

    CSS(Cascading Style Sheet,叠层样式表),作用是美化HTML网页. 一.样式表 (一)样式表的分类 1.内联样式表 和HTML联合显示,控制精确,但是可重用性差,冗余较多. 例 ...

  7. HTML——CSS样式表&布局页面

    CSS样式表: 一.作用:美化网页,页面布局. 二.分类: 内联,写在body里标签style=""里面的样式,优点是控制精确,可重用性差. 内嵌,嵌在网页的head里面,可重用性 ...

  8. 【2017-03-24】CSS样式表

    CSS样式表:层叠式样式表 一.样式表的分类 1.内联式 写在标记的属性位置,优先级最高,重用性最差. 格式: <div style="width:100px;height:100px ...

  9. css样式表的选择器与分类

    css 样式表的作用: 主要用于结构,样式与行为,CSS主要的作用就是美化网页的一个语言,它的特点: 1.结构与样式分离的方式,便于后期维护与改版; 2.样式定义精确到像素的级别; css样式表的结构 ...

随机推荐

  1. 【leetcode】Longest Palindromic Substring (middle) 经典

    Given a string S, find the longest palindromic substring in S. You may assume that the maximum lengt ...

  2. poj 2065 SETI 高斯消元

    看题就知道要使用高斯消元求解! 代码如下: #include<iostream> #include<algorithm> #include<iomanip> #in ...

  3. pointcut 表达式的含义

    execution(* com.spring.dao.*.add*(..)) 第一个*表示任意返回值 第二个*表示com.spring.dao包中所有类 第三个*表示以add开头的所有方法 (..)表 ...

  4. 情人节红攻瑰--Delphi版本

    在oschina上看到了用c写的红玫瑰, 以前只见过用js写的, 就随手用delphi翻译了c的代码, 效果还不错哈.... 原c作者jokeym贴子 http://www.oschina.net/c ...

  5. poj 1611 The Suspects(简单并查集)

    题目:http://poj.org/problem?id=1611 0号是病原,求多少人有可能感染 #include<stdio.h> #include<string.h> # ...

  6. autofac 学习记录

    builder.RegisterModule(new ConfigurationSettingsReader()); 需要注册上面一句才能读到.config里的节点,xml配置方式如下 <con ...

  7. bzoj4008

    好题,这题可以分开算每个技能的贡献 orz popoqqq http://blog.csdn.net/popoqqq/article/details/45365759 ..,..] of double ...

  8. jquery 分页控件(一)

    以前一直都是用别人的分页控件,虽然用得很爽,但总觉的还是自己写个小插件比较好,这个插件效果.代码等都有参照别人完成的控件.即便功能并不是那么完善,扩展性也不好,bug或许还很多.个人觉得,适合自己用就 ...

  9. Self-Paced Training (1) - Introduction to Docker

    helloworld: wget -qo- https://get.docker.com/ | sh sudo docker run hello-world sudo usermod -aG dock ...

  10. 自己定制Linux发行版(资料)

    /******************************************************************** * 自己定制Linux发行版(资料) * 声明: * 随着L ...