所以我目前正在为wordpress中的电子竞技团队创建一个网站,我刚遇到一个问题,我不记得如何整理。我记得制作chrome扩展时有一种方法可以做到这一点,但我不记得了,这就是为什么我现在在这里:)
First code 正如您在图片中看到的那样,这就是CSS中的内容,我需要将其保留在其他页面中,但我希望我的一页覆盖它。我有一个盒子,我可以添加自定义CSS,但是当我添加代码时,它会被旧代码覆盖。我知道为什么会发生这种情况,但不知道如何修改它而不改变原来的CSS(我宁愿避免)
所以我的问题是,如何让我的新css覆盖我的旧CSS? (我试过了!很重要而且什么都没做)
答案 0 :(得分:1)
在检查当前适用于特定元素的代码时,Chrome还会告诉您哪个特定选择器应用该规则以及它来自何处。您需要做的就是编写一个更强大的选择器,它将适用。在您的示例中,body:not(.template-slider) #Header { }
将被...
body.page:not(.template-slider) #Header {/* CSS here */ }
理想情况下,最好不必增加当前选择器的特异性,但最后应用您的规则,使用 相同的选择器 < / strong>即可。最简单的方法是在活动主题CSS
的末尾添加style.css
,除非您的主题/ WP安装搞砸了。
顺便说一下,如果您使用的是自己没有开发的主题,那么您的主题主题应该是儿童主题。这很重要,但是你应该分别考虑它为什么重要,有什么好处以及如何做。
如果写入您的活动主题的style.css
(到目前为止,推荐的 WordPress方式)不是一个选项,您可以随时将所有CSS放入您选择的单独样式表中(即my-custom-style.css
),放置在活动主题的文件夹中,并使用活动主题的functions.php
中的以下代码进行注册:
function add_styles_to_your_active_theme() {
wp_enqueue_style (
'my-custom-style',
get_stylesheet_directory_uri() . '/my-custom-style.css',
array(),
null
);
}
add_action( 'wp_enqueue_scripts', 'add_styles_to_your_active_theme' );
添加并确保加载后,您可以使用上面调用<head>
中的第三个参数,通过将其他已注册的样式表指定为您的依赖项来修改其在wp_enqueue_style()
标记中的位置。
您需要将其他已注册脚本的句柄放入该数组中。您可以通过查看任意页面的<head>
标记找到句柄,查找上次加载的<link rel="stylesheet" />
标记,并从其{{1}中删除结尾-css
}}。例如,如果您上次加载的样式表的链接ID为id
,则您对some-theme-style-css
的调用的第三个参数应为wp_enqueue_style()
。
之后,再次检查array('some-theme-style')
标记并确保您的标记为最后一个。如果没有,请将每个<head>
的{{1}}添加到<link />
数组,剥离id
,直到您的最后一个为止。当样式表最后加载时,您可以将任何应用选择器复制粘贴到它,将规则更改为您想要的任何内容并将应用它们。
但请注意,在正常使用条件下,上述方法是不必要的。通常你应该使用一个子主题,将$deps
放在-css
中,而不必担心这样的棘手细节,为主题和插件创建者保留。
答案 1 :(得分:0)
Yo can overwrite CSS with adding child selectors for your specified DIV element.
这里的小提琴示例http://jsfiddle.net/JfGVE/2031/