如何以编程方式更改属性的值?

时间:2015-03-09 09:28:57

标签: css3 dart

对不起。还是初学者。环顾四周,找不到合适的答案(可能是因为我使用了错误的条款!)。
在我的CSS文件中,我有

[pcolor="teapot"]{
    background-color: #ff0000;
}
[pcolor="kettle"]{
    background-color: #ff4440;
}
[pcolor="pan"]{
   background-color: #0044ff;
}

1)如何更改(例如)“茶壶”的颜色? (我正在使用Dart。我希望用户能够在运行时更改颜色。) 2)如何添加另一个属性“bottle”(再次,在运行时)?
3)我可以在运行时删除它们吗?
感谢
史蒂夫

1 个答案:

答案 0 :(得分:1)

看起来您将属性的值映射到颜色。因此,要么预定义所有可用的颜色(这很多,因此很糟糕),要么简单地覆盖背景颜色属性。我不建议在运行时更改/添加/删除CSS,这可以通过<style>元素实现。这里有一个更好的方法:

在Dart(以及JavaScript)中,您可以使用元素的style属性来访问元素的CSS。你可以继续做下去:

Element e = ...;
e.style.backgroundColor = '#f01251';

这样,元素的样式会覆盖属性的颜色。所以你甚至不必删除pcolor属性。您只需将新颜色覆盖为e.style.backgroundColor