javascript - 用 JavaScript 改变 CSS

标签 javascript html css getelementbyid

当使用 JavaScript 更改 CSS 时,JavaScript 是否只是简单地创建新的 inline-CSS 来代替总统?我一直觉得内联 CSS 很垃圾,想知道是否有更好的方法?

例如,如果你有

<div id="author">Author's name</div>引用外部 CSS 通常为绿色,如果您想将其更改为红色必须使用

document.getElementById('author').style.color='#FF0000'

必须使用内联样式来更改外观吗?

最佳答案

不,您不是在修改 CSS。您只是在设置 style 属性。元素的标记由三件事决定:CSS、style 和内联属性,如 width="100"。它们的应用顺序可能有点模糊。

style 总是会否决 CSS,除非您使用 !important

更改元素标记的更常见方法是添加和删除类。这使您可以将所有样式定义保留在 CSS 文件中,并大大降低代码的复杂性。

你可以这样做:

document.getElementById('author').className = "selected";

向它添加一个类并让它以不同的标记显示。

如果您使用的是 jQuery,则可以使用 addClassremoveClass。在幕后,这只是修改了 className 属性。编写您自己的实现很容易,您只需要进行一些字符串处理。

关于javascript - 用 JavaScript 改变 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14720184/

相关文章:

html - 如何响应地将 Bootstrap 列宽更改为另一个大小?

Javascript Jquery 重置值 onclick

javascript - 用于在 javascript 中存储对象的类型化数组

javascript - CasperJS 不适用于 Centos 服务器,但适用于 Windows 10

javascript检查$_POST是否存在

javascript - 进行 AJAX 调用时受 JavaScript onCLick() 限制

Javascript增量变量来更新表格单元格onclick

javascript - 用于解析 AVL 设备消息的正则表达式

html - 在 li of 2 classes (HTML, CSS) 中选择一个类

php - 将 CSS 类动态分配给另一个类