老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)


Posted in Javascript onSeptember 19, 2018

众所周知,CSS样式有三种类型:行内样式、内部样式和外部样式,JavaScript获取CSS样式时分为两种情况:行内样式获取法 和 非行内样式获取法 。

一、行内样式获取相对简单,通过element.style.attr(元素.style.属性)即可获取,示例:

<!DOCTYPE html>
 <html lang="en">
 <head>
   <meta charset="UTF-8">
   <title>JavaScript获取CSS样式</title>
 </head>
 <body>
   <!-- 给p标签设置行内样式并添加点击事件 -->
   <p style='width: 200px;height: 100px;background: pink' onclick='show()'>博客园--开发者的网上家园</p>
   <script type="text/javascript">
     function show() {
       var obj = document.getElementsByTagName('p')[0];
       alert(obj.style.width);
     }
   </script>
 </body>
 </html>

运行:

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

通过element.style.attr即可获取行内样式属性值,也可设置属性值,形式如:obj.style.width = 300 + 'px';

二‘、非行内样式获取法,因浏览器的不同又分为两种,即基于IE浏览器的 和 非IE浏览器的如谷歌火狐等。

1、基于IE浏览器的非行内获取法:通过 element.currentStyle['attr']

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

IE运行结果:

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

2、基于非IE如火狐谷歌等非行内获取法:通过 getComputedStyle(element.null/伪类)[attr]

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

火狐运行结果:

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

 二者兼容定法:

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

总结:以上就是JavaScript获取CSS样式的方法,其中获取非行内样式兼容IE和非IE可通过封装一个函数,实现多次调用,

切记:非行内样式获取法,只能获取不能设置。

总结

以上所述是小编给大家介绍的老生常谈JavaScript获取CSS样式的方法(兼容各浏览器),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript的console.log()用法小结
May 31 Javascript
JavaScript代码简单实现求杨辉三角给定行的最大值
Oct 29 Javascript
JavaScript避免内存泄露及内存管理技巧
Sep 05 Javascript
jQuery实现响应浏览器缩放大小并改变背景颜色
Oct 31 Javascript
Javascript中的方法链(Method Chaining)介绍
Mar 15 Javascript
JQuery球队选择实例
May 18 Javascript
Vue数据驱动模拟实现4
Jan 12 Javascript
使用svg实现动态时钟效果
Jul 17 Javascript
vue-cli 3.x配置跨域代理的实现方法
Apr 12 Javascript
vue项目添加多页面配置的步骤详解
May 22 Javascript
微信小程序scroll-view的滚动条设置实现
Mar 02 Javascript
在vue中对数组值变化的监听与重新响应渲染操作
Jul 17 Javascript
vue生命周期和react生命周期对比【推荐】
Sep 19 #Javascript
Vue瀑布流插件的使用示例
Sep 19 #Javascript
vue-cli项目修改文件热重载失效的解决方法
Sep 19 #Javascript
解决vuecli3.0热更新失效的问题
Sep 19 #Javascript
记一次webapck4 配置文件无效的解决历程
Sep 19 #Javascript
解决vue热替换失效的根本原因
Sep 19 #Javascript
三种Webpack打包方式(小结)
Sep 19 #Javascript
You might like
建立文件交换功能的脚本(一)
2006/10/09 PHP
改进的IP计数器
2006/10/09 PHP
php 修改zen-cart下单和付款流程以防止漏单
2010/03/08 PHP
Zend Framework+smarty用法实例详解
2016/03/19 PHP
CheckBoxList多选样式jquery、C#获取选择项
2013/09/06 Javascript
JavaScript伸缩的菜单简单示例
2013/12/03 Javascript
技术男用来对妹子表白的百度首页
2014/07/23 Javascript
jQuery+CSS3实现树叶飘落特效
2015/02/01 Javascript
javascript制作的简单注册模块表单验证
2015/04/13 Javascript
JQuery中Bind()事件用法分析
2015/05/05 Javascript
jquery简单实现幻灯片的方法
2015/08/03 Javascript
AngularJS表单详解及示例代码
2016/08/17 Javascript
Layui table 组件的使用之初始化加载数据、数据刷新表格、传参数
2017/09/11 Javascript
基于Bootstrap实现城市三级联动
2017/11/23 Javascript
jQuery实现图片简单轮播功能示例
2018/08/13 jQuery
Vue中android4.4不兼容问题的解决方法
2018/09/04 Javascript
vue通过video.js解决m3u8视频播放格式的方法
2019/07/30 Javascript
js中调用微信的扫描二维码功能的实现代码
2020/04/11 Javascript
浅谈vue获得后台数据无法显示到table上面的坑
2020/08/13 Javascript
[02:54]DOTA2亚洲邀请赛 VG战队出场宣传片
2015/02/07 DOTA
合并Excel工作薄中成绩表的VBA代码,非常适合教育一线的朋友
2009/04/09 Python
python之Character string(实例讲解)
2017/09/25 Python
R语言 vs Python对比:数据分析哪家强?
2017/11/17 Python
Python 通配符删除文件的实例
2018/04/24 Python
Python3中列表list合并的四种方法
2019/04/19 Python
django-allauth入门学习和使用详解
2019/07/03 Python
在Python中预先初始化列表内容和长度的实现
2019/11/28 Python
Python:合并两个numpy矩阵的实现
2019/12/02 Python
玩转CSS3色彩
2010/01/16 HTML / CSS
基于zepto的插件之移动端无缝向上滚动并上下触摸滑动实例代码
2016/12/20 HTML / CSS
SEPHORA丝芙兰捷克官网:购买香水、化妆品和护肤品
2018/11/26 全球购物
澳大利亚100%丝绸多彩度假装商店:TheSwankStore
2019/09/04 全球购物
Java的类与C++的类有什么不同
2014/01/18 面试题
奖学金感谢信
2015/01/21 职场文书
2015秋季小学开学寄语
2015/05/27 职场文书
严以律己学习心得体会
2016/01/13 职场文书