精华内容
下载资源
问答
  • 我将CSS优先级总结为四个级别的优先,按照从高到低的顺序排列分别是标签离修饰内容近,!important相关,选择器级别,CSS代码位置靠下。在比较的时候从高往低比较。如果在某一优先级层面上已经比较出不同,就不需要...

    原文摘抄自 CSS权威指南(第三版):

    第 1 部分:基础准备知识

    每个合法的文档都会生成一个文档树,从而能根据元素的祖先,属性,兄弟元素等创建选择器来选择元素。有了这个结构树,选择器才能起作用,这也是CSS继承的核心。继承是从一个元素向其后代元素传递属性值所采用的机制。确定应当向一个元素应用哪些值时,用户代理不仅要考虑继承,还要考虑声明的特殊性,另外需要考虑声明本身的来源,这个过程称为层叠。

    1.1 特殊性

    每个选择器都有特殊性,对于每个规则,用户代理会计算选择器的特殊性,并将这个特殊性附加到规则中的各个声明。若一个元素有两个或多个冲突的属性声明,那么有最高特殊性的声明将胜出。
    选择器的特殊性由选择器本身的组件确定。特殊性表述分为4个部分,如0,0,0,0。一个选择器的具体特殊性如下确定:
    1)对于选择器给定的各个ID属性值,加0,1,0,0
    2)对于选择器给定的各个类属性值,属性选择或伪类,加0,0,1,0
    3)对于选择器给定的各个元素和伪元素,加0,0,0,1
    4)结合符和通配选择器对特殊性没有任何贡献。其特殊性为0,0,0,0,但这与根本没有特殊性(继承没有特殊性)有本质区别。
    5)一般地,第一个0是为内联样式表声明保留的,它比所有其他声明的特殊性都高。其特殊性为1,0,0,0。(为内联样式表声明保留一位是CSS2.1才加上的)

    1.2 重要性

    有时某个声明可能很重要,超过了所有其他声明,CSS2.1称之为重要声明,并允许在这些声明的结束分号之前插入!important来标志。
    标志为!important的声明并没有特殊的特殊性值,不过要与非重要声明分开考虑。实际上,所有!important声明会分组在一起,重要声明的特殊性冲突会在重要声明内部解决,而不会与非重要声明相混。类似地,我们认为所有非重要声明也归为一组,使用特殊性来解决冲突。若一个重要声明和一个非重要声明冲突,胜出的总是重要声明。

    1.3 继承

    基于继承机制,样式不仅应用到指定的元素,还会应用到它的后代元素。继承是CSS中最基本的内容,除非有必须,否则一般不会特别考虑。不过需要注意以下几点:
    1)注意有些属性不能被继承,这往往归因于一个简单的常识。一般地,大多数框模型属性(包括外边距,内边距,背景和边框)都不能被继承。
    2)继承的值根本没有特殊性,甚至连0特殊性都没有。如下:
    *{color:gray;}
    h1#page-title{color:black;}

    < h1 id="page-title">Meetkat <em>CEntral</em><h1>
    < p>Welcome to the best place on the web</p>
    因为通配选择器适用于所有元素,而且有0特殊性,其颜色声明指定的值gray要优先于继承值(black),因为继承值根本没有特殊性。故em元素会显示为灰色而不是黑色。

    第 2 部分:层叠

    CSS所基于的方法是让样式层叠在一起,这是通过继承和特殊性做到的,CSS2.1的层叠规则如下:
    1)找出所有相关的规则,这些规则都包含与一个给定元素匹配的选择器
    2)按显式权重对应用到给定元素的所有声明排序。标志!important的规则的权重高于没有!important标志的规则。按来源对应用到给定元素的所有声明排序。共有3种来源:创作人员,读者,用户代理。正常情况下,创作人员的样式要胜于读者的样式表,有!important标志的读者样式要强于所有其他样式,这包括有!important标志的创作人员样式。创作人员样式和读者样式都比用户代理的默认样式要强。

    (注:创作人员--网站的开发者,用户代理--浏览器,读者--用户通过浏览器提供的接口为网站添加读者样式

    3)按特殊性对应用到给定元素的所有声明排序。有较高特殊性的元素权重重要大于较低特殊性的元素。
    4)按出现顺序对应用到给定元素的所有声明排序。一个声明在样式表或文档中越后出现,它的权重就越大。如果样式表中有导入样式表的话,一般认为出现在导入样式表中的声明在前,主样式表中的所有声明在后。


    接下来对2)3)4)详细说明:
    2)按权重和来源排序
    若两个样式规则应用到同一个元素,而且其中一个规则有!important标志,这个重要规则将胜出。在声明权重方面要考虑5级,权重由大到小的顺序依次为:
    1.读者的重要声明
    2.创作人员的重要声明
    3.创作人员的正常声明
    4.读者的正常声明
    5.用户代理声明

    3)按特殊性排序若
    若向一个元素应用多个彼此冲突的声明,而且它们的权重相同,则要按特殊性排序,最特殊的声明最优先。

    4)按顺序排序
    若两个规则的权重,来源和特殊性完全相同,那么在样式表中后出现的一个会胜出。特别地,认为元素style属性中指定我样式位于文档样式表的最后,即放在所有其他规则的后面。不过,这一点已经没有意义了,因为CSS2.1明确指明内联样式的特殊性要高于所有样式表选择器。
    正是由于这种按顺序排序,所以才有了通常推荐的链接样式顺序:link-visited-hover-active(LVHA)。
    :link{color:blue;}
    :visited{color:purple;}
    :hover{color:red;}
    :active{color:orange;}
    这四个选择器的特殊性都是一样的:0,0,1,0。因为它们有相同的权重,来源,特殊性,故与元素匹配的最后一个选择器才会胜出。
    正在“点击”的未访问链接可以与其中3个规则匹配——:link,:hover,:active——所以在这三个规则当中最后声明的一个胜出。若按照LVHA顺序,:active将会胜出,这也正是所期望的。

    (注:
    加入CSS的方法有四种:
    内联样式表:<div style="color:red;">
    内部样式表:<style type="text/css">p{color:red;)</style>
    外部样式表:<link href="sty.css" rel="stylesheet" type="text/css" />
    导入式样式表:<style type="text/css">@import url("sty2.css");</style>
    关于内部样式表(即style元素<style></style>)与外部样式表以及引入式样式表,这三者的来源均属于创作人员,所以在声明的特殊性相同的情况下,会按它们出现的顺序决定谁最终胜出。谁出现在文档中的位置靠后,谁优先级高。而因为CSS2.1明确指明内联样式的特殊性要高于所有样式表选择器,所以最终比较的是内部样式表、外部样式表、导入式样式表的位置。

    5)非CSS表现提示
    文档有可能包含非CSS的表现提示,例如font元素。非CSS提示被处理为特殊性为0,并出现在创作人员样式表的最前面。只要有创作人员或读者样式,这种表现提示就会被覆盖,但用户代理的样式不能将其覆盖。
    展开全文
  • 这三种样式是有优先级的,记住他们的优先级:内联式>嵌入式 > 外部式,但是嵌入式>外部式有一个前提:嵌入式css样式的位置一定在外部式的后面。 其实总结来说,就是--就近原则(离被设置元素越近优先...

    http://www.w3school.com.cn/html/html_css.asp

     

    这三种样式是有优先级的,记住他们的优先级:内联式 > 嵌入式 > 外部式,但是嵌入式>外部式有一个前提:嵌入式css样式的位置一定在外部式的后面。

     

    其实总结来说,就是--就近原则(离被设置元素越近优先级别越高)

     

    转载于:https://www.cnblogs.com/YuyuanNo1/p/10135522.html

    展开全文
  • 1.外部样式表 2.三种样式表的优先级 样式表分类: 1.外部样式表 以后样式表可能很长很长,外部样式表也有助于分工合作,不会乱。 ●link:用于定义文档与外部资源的关系;一般现在link链接的都是CSS了; ...

    目录

    1.外部样式表

    2.三种样式表的优先级


    1.外部样式表

    以后样式表可能很长很长,外部样式表也有助于分工合作,不会乱。

              ●link:用于定义文档与外部资源的关系;一般现在link链接的都是CSS了;

              ●rel="stylesheet":链接的是样式表;

              ●type="text/css":要链接的文件类型;这个可以省略;

              ●href="index.css":要链接的外部样式表文件;

    内部样式表示例程序:

    index.css:外部样式文件。可以发现,外部样式表的CSS文件中,内容很纯粹。

    p{
    	background-color: red;
    	font-size: 30px;
    }
    .p1{
    	font-family: 楷体;
    }
    body{
    /*	background-color: yellow; 
    	background-image: url(image/headLogo/13.jpg);
    	background-repeat: no-repeat;
    	background-attachment: fixed;
    	background-position: 100px 100px;*/
    	background:yellow url(image/headLogo/13.jpg) no-repeat fixed 100px 100px;
    }

     index.html:html文件,其需要引入外部样式表。可以看到,html文件中,没有内部样式表的<style></style>了,而是改成了<link rel="" type="" href="">了。

    <!DOCTYPE html>
    <html>
    <head>
    	<title>内部样式表演示</title>
    	<link rel="stylesheet" type="text/css" href="index.css">
    </head>
    <body>
    	<p>新华社北京12月18日电(记者王楚捷、公兵)中国足协18日发布《中国足球协会关于进一步推进足球改革发展的若干措施》(以下简称《措施》),提出2023年中超联赛扩大到18支参赛队,同时对职业联赛限薪、俱乐部名称“非企业化”变更等事宜提出具体要求。</p>
    	<p class="p1">《措施》从加强国家队的建设和管理、促进职业联赛健康发展、大力推动青少年足球发展等8个方面提出35项措施。</p>
    	<!--class的值可以任意起,主要是在类选择器中,起到标识作用-->
    	<p class="p1">	《措施》指出,到2023年,中超联赛扩大到18支参赛队,中甲联赛扩大到20支参赛队,中乙联赛扩大到30支参赛队左右。于2021年实行中超俱乐部“男足带女足”模式,把建立职业女足队伍作为中超俱乐部的准入条件之一,带动女足运动发展。</p>
    	<p>《措施》指出,到2023年,中超联赛扩大到18支参赛队,中甲联赛扩大到20支参赛队,中乙联赛扩大到30支参赛队左右。于2021年实行中超俱乐部“男足带女足”模式,把建立职业女足队伍作为中超俱乐部的准入条件之一,带动女足运动发展。</p>
    	<p>《措施》指出,到2023年,中超联赛扩大到18支参赛队,中甲联赛扩大到20支参赛队,中乙联赛扩大到30支参赛队左右。于2021年实行中超俱乐部“男足带女足”模式,把建立职业女足队伍作为中超俱乐部的准入条件之一,带动女足运动发展。</p>
    	<p>《措施》指出,到2023年,中超联赛扩大到18支参赛队,中甲联赛扩大到20支参赛队,中乙联赛扩大到30支参赛队左右。于2021年实行中超俱乐部“男足带女足”模式,把建立职业女足队伍作为中超俱乐部的准入条件之一,带动女足运动发展。</p>
    	<p>《措施》指出,到2023年,中超联赛扩大到18支参赛队,中甲联赛扩大到20支参赛队,中乙联赛扩大到30支参赛队左右。于2021年实行中超俱乐部“男足带女足”模式,把建立职业女足队伍作为中超俱乐部的准入条件之一,带动女足运动发展。</p>
    	<p>《措施》指出,到2023年,中超联赛扩大到18支参赛队,中甲联赛扩大到20支参赛队,中乙联赛扩大到30支参赛队左右。于2021年实行中超俱乐部“男足带女足”模式,把建立职业女足队伍作为中超俱乐部的准入条件之一,带动女足运动发展。</p>
    	<p>《措施》指出,到2023年,中超联赛扩大到18支参赛队,中甲联赛扩大到20支参赛队,中乙联赛扩大到30支参赛队左右。于2021年实行中超俱乐部“男足带女足”模式,把建立职业女足队伍作为中超俱乐部的准入条件之一,带动女足运动发展。</p>
    	<p>《措施》指出,到2023年,中超联赛扩大到18支参赛队,中甲联赛扩大到20支参赛队,中乙联赛扩大到30支参赛队左右。于2021年实行中超俱乐部“男足带女足”模式,把建立职业女足队伍作为中超俱乐部的准入条件之一,带动女足运动发展。</p>
    	<p>《措施》指出,到2023年,中超联赛扩大到18支参赛队,中甲联赛扩大到20支参赛队,中乙联赛扩大到30支参赛队左右。于2021年实行中超俱乐部“男足带女足”模式,把建立职业女足队伍作为中超俱乐部的准入条件之一,带动女足运动发展。</p>
    	<p>《措施》指出,到2023年,中超联赛扩大到18支参赛队,中甲联赛扩大到20支参赛队,中乙联赛扩大到30支参赛队左右。于2021年实行中超俱乐部“男足带女足”模式,把建立职业女足队伍作为中超俱乐部的准入条件之一,带动女足运动发展。</p>	
    </body>
    </html>


    2.三种样式表的优先级

    行内元素样式设置 > 内部样式设置 > 外部连接样式设置

    样式表分类:

              ●外部样式表:CSS文件是一个独立的文件;

              ●内部样式表:在当前文件中嵌套使用;

              ●行内样式:在当前标签的这一行内使用;

    ……………………………………………………

    如:下面三种样式表并存时,行内样式表会起作用,文字背景色为红色;如果把行内样式给删除,内部样式表会起作用,文字背景色为绿色;如果内部样式表也删除了,外部样式表才会起作用,文字背景色为蓝色;

    展开全文
  • 1.css语法: 2.css常用属性: 3.内部样式表: 在head标签中书写style标签...4.外部样式表外部样式表的引入: <link rel="stylesheet" type="text/css" href="theme.css" /> *在head标签中书写link标签...

    1.css语法:
    css语法图
    2.css常用属性:
    css常用属性
    3.内部样式表:
    在head标签中书写style标签,然后在style标签中书写css,style标签具有type属性,属性值为“text/css”
    4.外部样式表:
    外部样式表的引入:

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

    *在head标签中书写link标签,极力推荐的写法
    type=“text/css”
    href=“引入的外部样式表的路径”
    rel=“stylesheet” 定义与被来链接文档之间的间关系

    *在head标签中书写style标签,然后在style标签中书写 @import url(引入外部样式表的路径);

    <style type="text/css">
    		@import  url(目标文件的路径及文件全名名称)
    </style>
    

    两者之间的区别:
    引入外部样式表,两者之间的区别
    5.内联样式表/行内样式表/嵌入式样式表:
    给标签书写style的html属性,然后将css属性写在style属性的属性值的双引号中

    <div class="width:400px;height"400px;background-color:pink">
    		我是验证样式表的div
    </div>
    

    6.样式表的优先级:只针对产生冲突的样式,没有发生冲突样式都会执行
    行内样式表中的样式优先级最高
    内部样式表和外部样式表的优先级取决于书写顺序,写在后边 的样式表中的样式优先级高

    展开全文
  • CSS样式表优先级

    2014-03-25 14:49:00
    使用CSS样式表一共有2种方式:内部和外部,其中内部分为行内样式和嵌入式,外部分为导入式和链接式。 如果需要在不同的方式中设定同一个属性的时候,样式的优先级别就出现了。 测试代码如下: red.css: p{ ...
  • 内嵌样式表优先级低于行内样式 B. 浏览器默认样式级别最低 C. 直接定义在标记上的CSS样式级别最高 D. 外部样式表级别最低更多相关问题下图中A城市位于攀西大裂谷上,冬天胜似春天,被称为四川的“三亚”,它就是...
  • 1.html文件: 2.外部css文件: 3.运行结果: 说明:优先级————》就近原则,即离元素最近,优先级就越高。
  • css实例 css中的id css中的class 样式表 外部样式表 内部样式表 内联样式 7种基础选择器 多重样式优先级 错误理解
  • 行内样式表文档层样式表外部样式表 优先级:从上到下↓
  • class选择器: 先在相应标签中设置一个class属性,如class=“class名”.class名{ ……css样式}注:class名以英文字母开头,可以多个标签重复使用。... 外部样式表的引入在head标签里,写一个link标签...
  • CSS样式优先级 行内>内部>外部 使用!important的css定义是拥有最高的优先级的。只是在ie6下出了一点小的bug,注意书写方式一般可以轻松避开的。 CSS中的!important一般都是用于对低版本的除了iE 6 ,用来做...
  • 昨天碰到同事问了一个问题,@impor导入外部样式与link链入外部样式优先级是怎样的,为什么实验的结果是按照样式表导入后的位置来决定优先级。今天就这个问题具体总结如下: 先解释一下网页添加cs...
  • CSS样式优先级

    2017-05-03 14:41:17
    内联样式表(标签内部)> 嵌入样式表(当前文件中)> 外部样式表(外部文件中)。   2、权值不同时,浏览器是根据权值来判断使用哪种css样式的,哪种样式权值高就使用哪种样式。 下面是权值的规则: ...
  • 样式表优先级

    2008-04-09 17:18:00
    样式的优先级,按从高到低的顺序依次为:1).内嵌样式2).内部样式表3).外部样式表4).浏览器缺省样式如果不同样式的作用范围出现重叠,则高优先级样式将覆盖低优先级的设置,最后一次设置覆盖先前的设置。 
  • CSS样式表优先级

    千次阅读 2019-06-13 10:49:36
    css样式表 1)内部样式表<style type="text/css"> /*css语句*/ </style> 2)内联样式 (行内样式)<标签 style="属性:属性值;属性:属性值;" ><... 3)引用外部样式表文件 ...
  • css样式优先级

    2019-11-12 09:01:25
    外部样式表(外部文件中)。 2、权值不同时,浏览器是根据权值来判断使用哪种css样式的,哪种样式权值高就使用哪种样式。 下面是权值的规则: 标签的权值为1,类选择符的权值为10,ID选择符的权值最高为100。例如...
  • 昨天碰到同事问了一个问题,@impor导入外部样式与link链入外部样式优先级是怎样的,为什么实验的结果是按照样式表导入后的位置来决定优先级。 今天就这个问题,度娘上找了很久,终于有个总结性的答案出来了。我...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 623
精华内容 249
关键字:

外部样式表优先级