Html 嵌入样式何时优先于链接样式或导入样式?

Html 嵌入样式何时优先于链接样式或导入样式?,html,css,Html,Css,我已经使用CSS有一段时间了,但从来都不了解层叠是如何工作的。我已经开始学习它,并且正在阅读越来越混乱的内容。我从规范中了解到层叠是一个解决冲突样式的三步过程 步骤1:基于来源和重要性的排序规则[各种来源的优先级按降序排列]: 转换声明[css-transitions-1] 重要的用户代理声明 重要用户声明 重要作者声明 动画声明[css-animations-1] 正常作者声明 普通用户声明 普通用户代理声明 此列表中前面来源的声明胜过后面来源的声明。如果仍然存在冲突,请转至步

我已经使用CSS有一段时间了,但从来都不了解层叠是如何工作的。我已经开始学习它,并且正在阅读越来越混乱的内容。我从规范中了解到层叠是一个解决冲突样式的三步过程

步骤1:基于来源和重要性的排序规则[各种来源的优先级按降序排列]:

  • 转换声明[css-transitions-1]

  • 重要的用户代理声明

  • 重要用户声明

  • 重要作者声明

  • 动画声明[css-animations-1]

  • 正常作者声明

  • 普通用户声明

  • 普通用户代理声明

  • 此列表中前面来源的声明胜过后面来源的声明。如果仍然存在冲突,请转至步骤2

    第2步:根据特定性进行排序。如果仍然存在冲突,请执行步骤3

    步骤3:根据样式源顺序排序

    我也在读教科书。这就是:

    嵌入样式优先于链接或导入的样式
    内嵌样式优先于嵌入、链接或导入的样式

    这就是让我困惑的地方。在规范中,没有提及何时根据嵌入样式/链接样式进行排序,尽管在步骤2中确定特定性时使用了内联样式

    不属于样式规则的声明(例如内容 样式属性的)被认为具有比 任何选择器)

    以HTML为例:

               <style>
                    p {
                      color:red;  
                    }  
                </style>
    
    
            <div id = "first-div" class ="firstclass" >
                <p id = "para-div">This is a list of countries in the Competition .</p>
            </div>
    
    在这种情况下,将应用黄色,即在根据嵌入vs链接对规则进行排序之前,计算特定性[规范中的步骤2]

    现在,如果链接样式和嵌入样式具有以下相同的特性:

      <style>
            #para-div {
              color:red;  
            }  
        </style>
    
    
    #帕拉迪夫{
    颜色:红色;
    }  
    
    但颜色仍设置为黄色,嵌入的规则将被覆盖。我假设这是基于样式顺序(规范中的步骤3),因为链接样式稍后会出现

    所以我的问题是,什么时候“嵌入样式优先于链接或导入的样式”,就像我的课本上说的那样


    我希望这是有意义的。

    作为对您问题的回答,嵌入式样式优先考虑,因为它更接近样式对象。当浏览器从上到下读取CSS文件时,像真实的级联一样对CSS进行成像:

  • CSS定义更高
  • CSS定义较低
  • HTML中定义的CSS(嵌入)
  • 您正在设计的样式-内容
  • 你越接近你的内容,你就越具体。合乎逻辑的是,如果您定义了某种风格,或者您的开发人员定义了某种更高的风格,那么您应该能够通过内容本身克服它,因为内容是最重要的

    如果你想要一些风格不被滥用,就用吧!这句话的结尾很重要

      <style>
            #para-div {
              color:red;  
            }  
        </style>