javascript - 如果需要用JS给元素设置大量CSS样式采用以下哪种方式在性能或者维护难度上较优秀?
ringa_lee
ringa_lee 2017-04-11 09:50:09
[JavaScript讨论组]

现在我需要使用JS动态的插入好几个元素并为他们设置CSS样式,那么为他们设置样式的时候是使用下面哪种方式更好呢:

1.

p.style.width = 500 + "px";
p.style.position = "absolute";
    ......
    

2.

var style = document.createElement("style");
style.type = "text/css";
style.appendChild(document.createTextNode("body{background:red}"));
var head = document.getElementsByTagName("head")[0];
head.appendChild(style);

以上两种方式哪种好呢?或者还有其他更好的方式?现在是在校学生没有工作实战经验,不知道实际公司项目中一般采用哪种方式,请大神们不吝赐教~

ringa_lee
ringa_lee

ringa_lee

全部回复(2)
怪我咯

都不是最好,将 css 和 JavaScript 分离开最好

// 不好的写法
element.style.color = "red";

// 不好的写法
element.style.cssText = "color: red; left: 10px; top: 100px";

// 好的写法,原生方法
element.className += " reveal";

// 好的写法,HTML5
element.classList.add("reveal");

// 好的写法,jQuery
$(element).addClass("reveal");

参:https://github.com/hanzichi/r...

天蓬老师

楼上正解使用class类名吧

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号