【问题标题】:CSS priority to be changed in one div tag [closed]在一个 div 标签中更改 CSS 优先级 [关闭]
【发布时间】:2014-07-08 15:10:55
【问题描述】:

我试图在一个网页中显示两种样式。我有第一种样式的 a.css 和第二种样式的 b.css。顺序是 b 覆盖 a。问题是我希望在特定的 div 标签中反转 css 优先级。这可能吗?

【问题讨论】:

    标签: html css stylesheet


    【解决方案1】:

    这是什么原因?您始终可以使用“!important”声明覆盖。例如:

    .style { font-size: 12px !important;}

    另外,请参阅此处的指南:http://www.vanseodesign.com/css/css-specificity-inheritance-cascaade(特异性计算、继承、级联)

    【讨论】:

    • 原因是网页展示了一些其他页面应该如何遵循特定样式的示例,而其本身却是完全不同的样式。
    【解决方案2】:

    在极少数情况下,您需要有 2 个不同的 CSS 文件来执行相同的操作。但是,有很多方法可以解决此问题,其中一种方法是在您要覆盖的任何 CSS 文件中创建自己的类/ID,然后将其附加到 HTML 元素。

    如果这不起作用,我的下一个建议是尝试内联样式。

    <div id="blabla" style="whatyouwantforthisinparticular">
    

    您不能只是通过 HTML “覆盖”另一个脚本。代码以线性格式工作。一旦它看到引用该代码的新代码行,它将根据您对它所做的操作优先。例如,在 CSS 中,你可以有 2 种不同的 body 样式,但只有在第二个有新的东西要添加的情况下,才会使用最上面的属性。例如:

    body{ background-color:black; width: 500px;
    }
    body{ background-color:white; height: 300px;
    }
    

    在本例中,background-color: black 将更改为“white”,然后它将在先前样式的宽度之上增加 500px 的高度。但是,如果您必须使用黑色,则添加 !important 将使其优先于白色。

    【讨论】:

      【解决方案3】:

      是的,您可以使用 !important 属性来做到这一点。

      .your-class{
        property: value !important;
      }
      

      你也可以在课堂上更具体地做到这一点

      【讨论】:

      • 但是如果我使用重要的,我的外部网页不会也使用标记为重要的css吗?我希望外部网页优先考虑b,而该页面内的标签优先考虑a。
      • 如果你不想使用重要的属性,你可以在你的css中使用更具体的路径。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多