3

如果我有一个classic.css要覆盖的文件(在这种情况下,它来自用于 Python 的 Sphinx 文档:https ://docs.python.org/2.7/_static/classic.css )并且本质上是“撤消”规则,是有办法吗?

在这种情况下,有以下规则:

div.sphinxsidebar h3 {
    font-family: 'Trebuchet MS', sans-serif;
    color: #ffffff;
    font-size: 1.4em;
    font-weight: normal;
    margin: 0;
    padding: 0;
}

div.sphinxsidebar h4 {
    font-family: 'Trebuchet MS', sans-serif;
    color: #ffffff;
    font-size: 1.3em;
    font-weight: normal;
    margin: 5px 0 0 0;
    padding: 0;
}

我想做的是

div.sphinxsidebar h3,
div.sphinxsidebar h4
{
   font-family: [revert-to-auto];
   color: [revert-to-auto];
}

所以我可以在其中指定字体系列和颜色,body并将其应用到任何地方,而无需使用!important.

只是为了澄清一下:我的custom.csswhich 以@import(classic.css);Sphinx 文档开头,而不是本节中通常使用的两个<link rel="stylesheet" type="text/css">元素<head>

4

3 回答 3

5

是的,您可以使用它initial来恢复该属性的初始值

div.sphinxsidebar h3,
div.sphinxsidebar h4
{
   font-family: initial;
   color: initial;
}

或者 Cascade Level 4 引入revert,它将级联回滚到用户级别

div.sphinxsidebar h3,
div.sphinxsidebar h4
{
   font-family: revert;
   color: revert;
}
于 2016-08-05T18:24:49.413 回答
1

CSS 关键字inherit可用于任何属性,其作用是将属性设置为父元素的值。

于 2016-08-05T20:07:51.207 回答
0

您想在<head>标签中包含这两个 CSS 文件。关键是您希望文件位于文件custom.css下方classic.css,如下所示:

<head>
    <link rel="stylesheet" type="text/css" href="classic.css">    
    <link rel="stylesheet" type="text/css" href="custom.css">
</head>

这样做是尊重 CSS 的“级联”部分。它看到了第一个规则,classic.css但是当它到达custom.css它时,它会覆盖它之前看到的规则。

于 2016-08-05T18:22:57.423 回答