通过重写子主题中的css删除css属性

时间:2020-06-03 作者:Blaine

我有一个主题,我正在尝试自定义样式,为此,我创建了一个子主题。子主题包含style.css 我可以覆盖某些属性,但无法删除它们。

Example:

原始CSS:

.mvp-blog-story-img img {
    margin: 0 auto;
    position: relative; //I want to remove
   left: -9999px;//I want to remove
   right: -9999px;//I want to remove
   width: 100%;
   min-width: 560px;
   width: 100%;
}
覆盖CSS:

//This is what I want the final CSS to be
.mvp-blog-story-img img {
   margin: 0 auto;
   width: 100%;
   min-width: 0px;
 }
我假设这是因为样式表将只覆盖父主题和子主题中存在的属性;因此,将不在子主题中的属性保留在父主题中。

如何删除子主题中的父主题属性style.css?

1 个回复
最合适的回答,由SO网友:Jacob Peattie 整理而成

我假设这是因为样式表将只覆盖父主题和子主题中存在的属性;因此,将不在子主题中的属性保留在父主题中。

事情不是这样的。WordPress父主题和子主题样式表没有什么特别之处。它们只是标准的CSS 样式表,它们遵循与加载到任何其他网页上的任何两个样式表相同的规则。

如果要在后续样式表中从一个样式表中“删除”样式,则需要为其提供一个新值。如果你有position: relative; 属性,并希望将其重置为需要使用的默认值initial:

.mvp-blog-story-img img {
    margin: 0 auto;
    width: 100%;
    min-width: 0px;
    position: initial;
}
请注意initial 在Internet Explorer中不工作,因此如果需要IE支持,则需要找出默认值并将其设置为该值。对于position, 那是static:

.mvp-blog-story-img img {
    margin: 0 auto;
    width: 100%;
    min-width: 0px;
    position: initial;
}
请注意,如果元素的位置为static 然后leftright 无法执行任何操作,因此无需重置这些。

要查找属性的默认值,请MDN web docs CSS reference 是一个很好的资源。

相关推荐

将css和js添加到使用自定义模板创建的空白页面

我是wp的新手,请注意:)我在Twenty20Theme文件夹中添加了一个php文件,添加了一个新的空白页面,其中包含:<?php /* Template Name: charles */ ?> 然后,我通过在admin中选择charles模板创建了一个新页面。现在在我的新空白页面中,我可以看到我正在创建的新插件的内容,这正是我想要的。到这里都很好。但是现在,我需要添加一个css自定义文件、一个js自定义文件和一个对jquery cdn url的调用。我试