CSS样式可以使用另一个文件中定义的值吗?

时间:2016-01-22 20:30:54

标签: css

我正在使用ASP.NET创建一个网站,我想在用户定义的控件中使用一些CSS,它会自动从它所使用的页面中借用某种样式。

例如,假设我们有两个页面( foo.aspx bar.aspx ),它们使用CSS文件,每个文件都为该页面中的轮廓侧边栏定义样式:

foo.css

.sidebar{
  float: right;
  border-style: solid;
  border-width: thin;
  border-color: red;
}

bar.css

.sidebar{
  float: right;
  border-style: solid;
  border-width: thin;
  border-color: blue;
}

我想给控件一些CSS,它将获取在其使用的页面中定义的选择器的值:

.sidebarcoloredtext {
  color: {value of ".sidebar border-color"};
}

如果不将.sidebarcoloredtext添加到foo.css和bar.css并手动将其设置为与轮廓相同的颜色,是否可以实现?我怀疑答案是'不是'在vanilla CSS中,但我想我还是会问,看看附加组件可以帮助解决这类问题。

顺便说一句,请不要回答这个问题,指出我在谈论将一种风格包含在另一种风格中的帖子。这是一个类似的问题,但意图相反。

1 个答案:

答案 0 :(得分:0)

你不需要这样做。您可以将页面相关的类放在页面上的高级元素上:

<强>标记

<div class="blue-page">
    ...
    <div class="sidebarcoloredtext">
    </div>
    ...
</div>

<强> CSS

.blue-page .sidebarcoloredtext{
    color: blue;
}