首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用JavaScript创建CSS样式属性

使用JavaScript创建CSS样式属性
EN

Stack Overflow用户
提问于 2015-01-12 07:29:44
回答 3查看 96关注 0票数 0

就像每个人都知道的那样,我们可以使用如下所示的CSS来样式元素

代码语言:javascript
运行
复制
  #a {
     background-color : green;
  }

和使用JS

代码语言:javascript
运行
复制
  document.getElementById('a').style.backgroundColor = "green";

但是我想创建一些属性,比如background-color,它可以在CSS中使用。例如,我将创建一个类似于"foobar“的属性,然后我应该能够像下面这样使用它

代码语言:javascript
运行
复制
  #a {
     foobar : value;
  }

这个是可能的吗?我想对包含此属性的元素执行一些JS。

问题中提到的复制的答案是如何创建新的CSS并使用现有的CSS属性将其添加到样式表中。但是在这里我试图创建我自己的css属性..。

EN

Stack Overflow用户

回答已采纳

发布于 2015-01-12 07:37:00

我想对包含此属性的元素执行一些JS。

尽管您只需将随机属性写入style对象:

代码语言:javascript
运行
复制
myElement.style.foobar = "value";

...and 似乎活了下来 on Chrome,Firefox,IE11,甚至IE8,强烈反对

您最好使用类或data-*属性来代替。首先,你可以查询它们。

如果您试图创建自己的CSS (您在评论中说过的话),我认为data-*属性将是一个不错的选择。

使用类:

代码语言:javascript
运行
复制
var myElement = document.createElement('a');
myElement.className = "foobar";
// ...add it somewhere...

// Later
var myElements = document.querySelectorAll(".foobar");
// ...do something with the list...

或具有data-*属性:

代码语言:javascript
运行
复制
var myElement = document.createElement('a');
myElement.setAttribute("data-foobar", "value");
// ...add it somewhere...

// Later
var myElements = document.querySelectorAll('[data-foobar="value"]');
// ...do something with the list...

所有现代浏览器都支持querySelectorAll,也支持IE8。

票数 3
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27897176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档