用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 相关文章推荐
根据分辩率调用不同的CSS.
Jan 08 Javascript
JQuery插件fancybox无法在弹出层使用左右键的解决办法
Dec 25 Javascript
js匿名函数的调用示例(形式多种多样)
Aug 20 Javascript
jquery+javascript编写国籍控件
Feb 12 Javascript
javascript设计模式之对象工厂函数与构造函数详解
Jul 30 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
Feb 21 Javascript
Node.js 应用跑得更快 10 个技巧
Apr 03 Javascript
解析javascript图片懒加载与预加载的分析总结
Oct 27 Javascript
详解js的延迟对象、跨域、模板引擎、弹出层、AJAX【附实例下载】
Dec 19 Javascript
Chart.js 轻量级HTML5图表绘制工具库(知识整理)
May 22 Javascript
详解如何webpack使用DllPlugin
Sep 30 Javascript
json解析大全 双引号、键值对不在一起的情况
Dec 06 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中的HashTable结构详解
2013/06/13 PHP
PHP实现将几张照片拼接到一起的合成图片功能【便于整体打印输出】
2017/11/14 PHP
JS中style属性
2006/10/11 Javascript
半角全角相互转换的js函数
2009/10/16 Javascript
jQuery结合Json提交数据到Webservice,并接收从Webservice返回的Json数据
2011/02/18 Javascript
js取滚动条的尺寸的函数代码
2011/11/30 Javascript
JS事件Event元素(兼容IE,Firefox,Chorme)
2012/11/01 Javascript
nodejs的10个性能优化技巧
2014/07/15 NodeJs
jQuery增加自定义函数的方法
2015/07/18 Javascript
原生JS实现旋转木马式图片轮播插件
2016/04/25 Javascript
简单实现js间歇或无缝滚动效果
2016/06/29 Javascript
JS实现简单易用的手机端浮动窗口显示效果
2016/09/07 Javascript
JS实现在文本指定位置插入内容的简单示例
2017/12/22 Javascript
vue项目实现github在线预览功能
2018/06/20 Javascript
微信小程序swiper左右扩展各显示一半代码实例
2019/12/05 Javascript
Python 错误和异常小结
2013/10/09 Python
python中精确输出JSON浮点数的方法
2014/04/18 Python
Python中解析JSON并同时进行自定义编码处理实例
2015/02/08 Python
Python 中的lambda函数介绍
2018/10/10 Python
Python实现多态、协议和鸭子类型的代码详解
2019/05/05 Python
python检查目录文件权限并修改目录文件权限的操作
2020/03/11 Python
CSS3移动端vw+rem不依赖JS实现响应式布局的方法
2019/01/23 HTML / CSS
idealfit英国:世界领先的女性健身用品和运动衣物品牌
2017/11/25 全球购物
美国手机支架公司:PopSockets
2019/11/27 全球购物
迪卡侬比利时官网:Decathlon比利时
2019/12/28 全球购物
当x.equals(y)等于true时,x.hashCode()与y.hashCode()可以不相等,这句话对不对
2015/05/02 面试题
自行车租赁公司创业计划书
2014/01/28 职场文书
旅游业大学生创业计划书
2014/01/31 职场文书
创先争优活动方案
2014/02/12 职场文书
创建精神文明单位实施方案
2014/03/08 职场文书
幼儿园园务工作总结2015
2015/05/18 职场文书
导游词之太原天龙山
2020/01/02 职场文书
redis实现排行榜功能
2021/05/24 Redis
python神经网络ResNet50模型
2022/05/06 Python
python数字图像处理之对比度与亮度调整示例
2022/06/28 Python
nginx代理实现静态资源访问的示例代码
2022/07/07 Servers