我第一次尝试创建一个子主题,使用Twenty Ten主题作为模板(我知道它现在有点老了,但是我关注的教程使用了这个。)我的教程的第一件事是更改主题中主要元素的背景颜色,以突出显示DIV的位置。我这样跟着这个:
#wrapper { background: blue; }
#header { background: yellow; }
#main { background: red; }
#container { background: green; }
#primary { background: aqua; }
#footer { background: gold; }
保存文件时,除了包装ID:
之外,所有颜色更改都会生效
我想知道这是否与父主题的style.css似乎有两个包装ID的事实有关:
#wrapper {
margin: 0 auto;
width: 940px;
}
#wrapper {
background: #fff;
margin-top: 20px;
padding: 0 20px;
}
我必须承认,我不明白拥有两个具有相同名称的ID的重要性,但是我的孩子style.css是否有可能覆盖父CSS的第一个包装,然后父母的第二个ID是将颜色设置为白色?
如果是这种情况,我怎么能告诉我的CSS文件定位第二个ID,而不是第一个ID。如果不是这样,有没有人对它可能有什么建议?
编辑:我只想指出我已经尝试直接在父主题中更改颜色调用,这会产生所需的效果!
答案 0 :(得分:0)
好吧,我设法找到问题的部分答案。一路上,并且在sdcr的帮助下(在上面的评论中)我确定了实际上,我对#wrapper id所做的修改没有被子主题采用,尽管其他所有修改都是。
最后,我尝试从我的functions.php中删除以下代码(虽然它是WP推荐的):
add_action('wp_enqueue_scripts', 'theme_enqueue_styles');
function theme_enqueue_styles() {
wp_enqueue_style('parent_style',
get_template_directory_uri().'/style.css');
}
将其替换为CSS中的此语句:
@import url("../twentyten/style.css");
再一次,WP本身声明这个方法现在已经过时了,我应该使用我提到的第一个方法。但使用@import语句修复了问题,所以我想这仍然是一个谜! (至少在我对整个过程有了更好的理解之前我猜!)