Javascript动态创建 style 节点
网站建设 2023-01-28 21:38www.1681989.com免费网站
有很多提供动态创建 style 节点的方法,大多数都仅限于外部的 css 文件。如何能使用程序生成的字符串动态创建 style 节点,我搞了2个小时。
静态外部 css 文件语法
@import url(style.css);
动态外部 css 文件加载的方法有如下
第一种
var style = document.createElement(’lk’);
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.nerHTML=”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 提示,改成
wdow.style=”body{background-color:blue;”;
document.createStyleSheet(”javascript:style”);
完美解决!!代码:
<html>
<head>
<script>
function blue(){
if(document.all){
wdow.style="body{background-color:blue;";
document.createStyleSheet("javascript:style");
}else{
var style = document.createElement('style');
style.type = 'text/css';
style.nerHTML="body{ background-color:blue }";
document.getElementsByTagName('HEAD').item(0).appendChild(style);
}
}
</script>
</head>
<body>
<put type="button" value="blue" onclick="blue();"/>
</body>
</html>
上一篇:让XHTML元素的命名规则更加合理
下一篇:CSS网页设计技巧十则
网站设计
- 静宁会SEO的网站建设公司:全面提升您的网络影
- 提升在线业务的关键:选择最佳的丽水网站建设
- 浙江网站优化发展潜力如何
- 井研专业的网站建设公司:打造您的在线品牌
- 灵山SEO网站建设公司:提升您的在线业务表现
- 蒙城网站建设优化公司:提升您网站表现的理想
- 阳谷企业网站优化:提升线上业务力的关键
- 樟树专业的网站建设公司:打造您在线业务的坚
- 通河百度SEO排名的策略与技巧
- 重庆百度快照排名如何进行精准的客户引流
- 重庆百度快照排名
- 常宁便宜的建站公司:助您轻松打造在线业务
- 巫溪百度网站优化:提升网站曝光率与流量的关
- 湖北整站优化怎么做才能放大客户需求
- 闸北网站建设多少钱?全面解析与预算规划
- 辽宁企业网站优化怎么做电话营销