JavaScript动态添加与删除CSS样式规则
作者:白露时间:2026-10-31 01:52:44浏览:437
本文介绍如何使用JavaScript动态添加和删除CSS样式规则。重点讲解insertRule方法,该方法兼容IE8及以上版本,第一个参数为样式字符串,第二个参数为插入位置。同时提及addRule方法,虽兼容所有IE版本但功能相对基础。通过示例代码展示具体操作方式。
JavaScript动态添加与删除CSS样式规则
核心实现逻辑如下所示:
<html>
<head>
<link rel="stylesheet" type="text/css" href="basic.css">
<script>
window.onload=function(){
var sheet=document.styleSheets[0];
//【新增样式规则】
// sheet.insertRule('.div1{font-size:16px;color:red;}',0); IE8及以上不支持 //第一个参数是样式,第二个是样式的位置
// sheet.addRule('.div1','font-size:20px;color:orange;font-weight:bold;',0); //IE都支持 //第一个参数是样式名,第二个样式位置是样式规则,第三个是样式位置
function insertCss(element,csName,position){ //跨浏览器兼容
if(sheet.insertRule){ // sheet.insertRule 非IE的时候会读取到一个函数,IE8即以上的时候会读取到undefined
sheet.insertRule(element+'{'+csName+'}',position);
}else if(sheet.addRule){
sheet.addRule(element,csName,position);
}
}
insertCss('.div1','font-size:16px;color:orange',0);
//【删除样式规则】
//sheet.deleteRule(position) ; //删除样式 参数为位置 //IE8及以上不支持
//sheet.removeRule(position) ; //删除样式 参数为位置 //IE支持
function deleteCss(position){ //跨浏览器兼容
if(sheet.deleteRule){
sheet.deleteRule(position);
}else if(sheet.removeRule){
sheet.removeRule(position);
}
deleteCss(0);
}
}
</script>
</head>
<body></body>
</html>
上述内容介绍了利用JavaScript动态添加CSS样式规则的具体方法,希望能对读者有所帮助。若在使用过程中遇到任何疑问,欢迎留言咨询,作者将尽快回复。同时也感谢大家对本站的支持!
作者最新文章
AOS.js 动画不触发怎么办?排查 DOM 加载与移动端兼容问题
2026-11-05 17:02:26
sigma.js 怎么实现节点点击、拖拽与悬停提示交互
2026-11-05 15:03:27
Matter.js 与 PixiJS/Three.js 集成:分离物理计算与渲染
2026-11-05 13:43:48
主流JS弹幕库选型指南:Danmaku.js等库的功能与体积对比
2026-11-05 09:28:19
JavaScript点击事件监听与交互效果实例
2026-11-05 09:10:19
