用JS动态设置CSS样式常见方法小结(推荐)


Posted in Javascript onNovember 10, 2016

用JS来动态设置CSS样式,常见的有以下几种

1. 直接设置style的属性 某些情况用这个设置 !important值无效

如果属性有'-'号,就写成驼峰的形式(如textAlign) 如果想保留 - 号,就中括号的形式 element.style['text-align'] = '100px';

element.style.height = '100px';

2. 直接设置属性(只能用于某些属性,相关样式会自动识别)

element.setAttribute('height', 100);
element.setAttribute('height', '100px');

3. 设置style的属性

element.setAttribute('style', 'height: 100px !important');

4. 使用setProperty 如果要设置!important,推荐用这种方法设置第三个参数

element.style.setProperty('height', '300px', 'important');

5. 改变class 比如JQ的更改class相关方法

因JS获取不到css的伪元素,所以可以通过改变伪元素父级的class来动态更改伪元素的样式

element.className = 'blue';
element.className += 'blue fb';

6. 设置cssText

element.style.cssText = 'height: 100px !important';
element.style.cssText += 'height: 100px !important';

7. 创建引入新的css样式文件

function addNewStyle(newStyle) {
var styleElement = document.getElementById('styles_js');
if (!styleElement) {
styleElement = document.createElement('style');
styleElement.type = 'text/css';
styleElement.id = 'styles_js';
document.getElementsByTagName('head')[0].appendChild(styleElement);
}
styleElement.appendChild(document.createTextNode(newStyle));
}
addNewStyle('.box {height: 100px !important;}');

8. 使用addRule、insertRule

// 在原有样式操作
document.styleSheets[0].addRule('.box', 'height: 100px');
document.styleSheets[0].insertRule('.box {height: 100px}', 0);
// 或者插入新样式时操作
var styleEl = document.createElement('style'),
styleSheet = styleEl.sheet;
styleSheet.addRule('.box', 'height: 100px');
styleSheet.insertRule('.box {height: 100px}', 0);
document.head.appendChild(styleEl);

以上所述是小编给大家介绍的用JS动态设置CSS样式常见方法小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
用JS剩余字数计算的代码
Jul 03 Javascript
jquery getScript动态加载JS方法改进详解
Nov 15 Javascript
jQuery侧边栏随窗口滚动实现方法
Mar 04 Javascript
JS定时刷新页面及跳转页面的方法
Jul 04 Javascript
JS实现日期加减的方法
Nov 29 Javascript
为指定的元素添加遮罩层的示例代码
Jan 15 Javascript
PageSwitch插件实现100种不同图片切换效果
Jul 28 Javascript
jQuery实现邮箱下拉列表自动补全功能
Sep 08 Javascript
浅谈Vue.js中ref ($refs)用法举例总结
Dec 19 Javascript
Angular 组件之间的交互的示例代码
Mar 24 Javascript
浅谈Vue.js 关于页面加载完成后执行一个方法的问题
Apr 01 Javascript
JavaScript实现网页计算器功能
Oct 29 Javascript
关于json字符串与实体之间的严格验证代码
Nov 10 #Javascript
jquery日历插件e-calendar升级版
Nov 10 #Javascript
Vue.js开发环境搭建
Nov 10 #Javascript
js 获取本地文件及目录的方法(推荐)
Nov 10 #Javascript
javascript中的后退和刷新实现方法
Nov 10 #Javascript
jQuery中Nicescroll滚动条插件的用法
Nov 10 #Javascript
js对字符串进行编码的方法总结(推荐)
Nov 10 #Javascript
You might like
PHP完整的日历类(CLASS)
2006/11/27 PHP
php 获取完整url地址
2008/12/20 PHP
不要轻信 PHP_SELF的安全问题
2009/09/05 PHP
解析PHP 5.5 新特性
2013/07/02 PHP
PHP传参之传值与传址的区别
2015/04/24 PHP
PHP编写的图片验证码类文件分享
2016/06/06 PHP
用js实现的自定义的对话框的实现代码
2010/03/21 Javascript
编写高性能的JavaScript 脚本的加载与执行
2010/04/19 Javascript
js 分页全选或反选标识实现代码
2011/08/09 Javascript
Jquery同辈元素选中/未选中效果的实例代码
2013/08/01 Javascript
JavaScript通过Date-Mask将日期转换成字符串的方法
2015/06/04 Javascript
javascript动态生成树形菜单的方法
2015/11/14 Javascript
AngularJS删除路由中的#符号的方法
2016/09/20 Javascript
vue2.0+webpack环境的构造过程
2016/11/08 Javascript
关于react-router/react-router-dom v4 history不能访问问题的解决
2018/01/08 Javascript
在 Angular中 使用 Lodash 的方法
2018/02/11 Javascript
微信小程序框架的页面布局代码
2019/08/17 Javascript
原生js实现二级联动菜单
2019/11/27 Javascript
Linux中安装Python的交互式解释器IPython的教程
2016/06/13 Python
用Python设计一个经典小游戏
2017/05/15 Python
Python实现获取本地及远程图片大小的方法示例
2018/07/21 Python
Html5实现单张、多张图片上传功能
2019/04/28 HTML / CSS
洲际酒店集团英国官网:IHG英国
2019/07/10 全球购物
Pamela Love官网:纽约设计师Pamela Love的精美、时尚和穿孔珠宝
2020/10/19 全球购物
高中生自我评语大全
2014/01/19 职场文书
《翻越远方的大山》教学反思
2014/04/13 职场文书
小班评语大全
2014/05/04 职场文书
服务承诺书格式
2014/05/21 职场文书
场地使用证明模板
2014/10/25 职场文书
2014年妇幼卫生工作总结
2014/12/09 职场文书
精神文明建设先进个人事迹材料
2014/12/24 职场文书
先进基层党组织事迹材料
2014/12/25 职场文书
服务员岗位职责范本
2015/04/09 职场文书
酒店圣诞节活动总结
2015/05/06 职场文书
结婚十年感言
2015/07/31 职场文书
大脑的记忆过程在做数据压缩,不同图形也有共同的记忆格式
2022/04/29 数码科技