如何在特定页面中覆盖CSS重要规则

时间:2018-08-08 11:52:49

标签: html css sass

我有一个父.sass文件,在其中定义了以下规则

.printableLogo {
    display: none;

    &.hide {
        @media print {
            overflow: hidden;
            display: block !important;
        }
    }
}

对于特定页面,我希望不显示任何内容。

如何实现?

5 个答案:

答案 0 :(得分:0)

我建议您执行以下一项操作。

  1. 从不在父/全局CSS文件中使用!important

  2. 如果需要覆盖它,请编写内联CSS或在特定页面中添加CSS标签

  3. 为特定的div添加另一个唯一的类/ id ,并为此应用样式。

答案 1 :(得分:0)

解决方案1:直接在该特定页面上的元素上引入样式属性(style =“ display:none;”)。请注意,重要的将覆盖此样式。因此,请从您的重要信息中删除重要信息,或将其添加到嵌入式信息中。

解决方案2:在该页面上的元素上放置一个特定的类或ID,然后您就可以在Sass中引用它。

解决方案3:在页面上为每个页面引入一个唯一的ID,然后您可以在其sass中引用该ID,以将样式应用于特定页面上的元素。

答案 2 :(得分:0)

尝试一下

<body class="pagenumber1">

.pagenumber1 .printableLogo {
  display:none;
}

答案 3 :(得分:0)

您可以添加一个新的.sass文件,并将其链接到通用css文件下方,并使用例如:

display:unset !important; 

答案 4 :(得分:0)

我也不会建议使用display:unset!important;如果无法添加内联CSS或ID,则可以添加用于覆盖CSS的ID,然后可以使用display:unset!important;

您也可以在特定的页面模板中尝试

<style>
.selector{
  display:none;
}
<style>