我有一个包含部分模板的全局模板的网站,但现在我遇到了一个简单的 CSS 问题:
HTML
<div id="context"> <!-- this is part of global template -->
<!-- this is rendered by partial template -->
<select id="test">
<option>[Select a value]</option>
</select>
</div>
全局 CSS
在全局样式表中,定义<select>
了内部所有元素的默认宽度#context
:
div#context select
{
width: 500px;
}
部分 CSS
现在对于部分模板(在内部呈现内容#context
),我需要覆盖<select>
. 我认为这很简单:
select#test
{
width: 150px;
}
但我错了,它不起作用。我猜这是因为 css 认为div#context select
它更适合该元素,因为当我像这样更改部分模板 css 时它可以工作:
div#context select#test
{
width: 150px;
}
当然,这不是我想做的,因为部分模板不应该知道它在全局模板内部渲染在哪个节点。
关于如何在不指定全局模板中的元素的情况下覆盖部分模板的样式的任何想法?