css文件生成字符串动态创建style节点

来源:爱站网时间:2022-08-06编辑:网友分享
css文件生成字符串动态创建style节点的内容你了解多少?为了帮助朋友们解决问题,爱站技术频道小编特地整理了相关资料给大家,感兴趣的小伙伴千万不要错过这篇文章。

 

静态外部 css 文件语法:
@import url(style.css);
动态外部 css 文件加载的方法有如下:
第一种:
var style = document.createElement(’link’);
style.href = ’style.css’;
style.rel = ’stylesheet’;
style.type = ‘text/css’;
document.getElementsByTagName(’HEAD’).item(0).appendChild(style);
第二种简单:
document.createStyleSheet(style.css);
动态的 style 节点,使用程序生成的字符串:
var style = document.createElement(’style’);
style.type = ‘text/css’;
style.innerHTML=”body{ background-color:blue; }”;
document.getElementsByTagName(’HEAD’).item(0).appendChild(style);
很遗憾,上面的代码在 ff 里面成功,但是 ie 不支持。从老外论坛得到代码:
var sheet = document.createStyleSheet();
sheet.addRule(’body’,'background-color:red’);
成功,但是很麻烦,要把字符串拆开写,长一点的写死。
接着搜,在一个不知道什么国家的什么语言的 blog 上找到代码:
document.createStyleSheet(”javascript:’body{background-color:blue;’”);
成功,此人实在厉害,但是问题出来了,url 最大 255 个字符,长一点的就不行了,经过 SXPCrazy 提示,改成:
window.style=”body{background-color:blue;”;
document.createStyleSheet(”javascript:style”);
完美解决!!代码:
<html>
<head>
<script>
function blue(){
if(document.all){
window.style="body{background-color:blue;";
document.createStyleSheet("javascript:style");
}else{
var style = document.createElement('style');
style.type = 'text/css';
style.innerHTML="body{ background-color:blue }";
document.getElementsByTagName('HEAD').item(0).appendChild(style);
}
}
</script>
</head>
<body>
<input type="button" value="blue" onclick="blue();"/>
</body>
</html>

css文件生成字符串动态创建style节点内容分享到这里就结束了,还有什么需要咨询小编的吗,可以来网站留言。爱站技术频道网站提供了大量的技术文章内容给大家,喜欢可以关注。

上一篇:CSS之position定位和float浮动的相关知识

下一篇:CSS之气泡对话框尖角实现过程

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载