我是靠谱客的博主 感动小虾米,最近开发中收集的这篇文章主要介绍使用js修改css样式表,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

有些情况下,我们需要页面加载时就快速修改元素的样式,但如果在页面dom加载完后再修改css,虽然元素样式快速变化,但肉眼能观察到,所以需要JS动态生成样式表,声明所希望的css样式.执行js时,页面会有很短暂的阻塞,等js执行完毕后,浏览器会根据所修改的样式继续渲染css.这样的样式才不会"闪一下"
.
以下是js代码,动态增加style
function addCSS(cssText){
var style = document.createElement('style'),
//创建一个style元素
head = document.head || document.getElementsByTagName('head')[0]; //获取head元素
style.type = 'text/css'; //这里必须显示设置style元素的type属性为text/css,否则在ie中不起作用
if(style.styleSheet){ //IE
var func = function(){
try{ //防止IE中stylesheet数量超过限制而发生错误
style.styleSheet.cssText = cssText;
}catch(e){
}
}
//如果当前styleSheet还不能用,则放到异步中则行
if(style.styleSheet.disabled){
setTimeout(func,10);
}else{
func();
}
}else{ //w3c
//w3c浏览器中只要创建文本节点插入到style元素中就行了
var textNode = document.createTextNode(cssText);
style.appendChild(textNode);
}
head.appendChild(style); //把创建的style元素插入到head中

}
//调用方法
addCSS('#init{display:block;}.mobile-wrap{visibility:hidden')

 

 

转载于:https://www.cnblogs.com/ch459742906/p/8472115.html

最后

以上就是感动小虾米为你收集整理的使用js修改css样式表的全部内容,希望文章能够帮你解决使用js修改css样式表所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部