老生常谈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 相关文章推荐
两种WEB下的模态对话框 (asp.net或js的分别实现)
Dec 02 Javascript
jquery 删除cookie失效的解决方法
Nov 12 Javascript
常用的JavaScript验证正则表达式汇总
Nov 26 Javascript
javascript实现仿IE顶部的可关闭警告条
May 05 Javascript
jQuery插件简单实现方法
Jul 18 Javascript
Bootstrap插件全集
Jul 18 Javascript
微信小程序 实战程序简易新闻的制作
Jan 09 Javascript
angularJs中orderBy筛选以及filter过滤数据的方法
Sep 30 Javascript
微信小程序云开发之使用云函数
May 17 Javascript
利用JS代码自动删除稿件的普通弹幕功能
Sep 20 Javascript
解决vue中的无限循环问题
Jul 27 Javascript
jQuery实现二级导航菜单的示例
Sep 30 jQuery
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
PHP 基本语法格式
2009/12/15 PHP
php文件怎么打开 如何执行php文件
2011/12/21 PHP
Yii2简单实现多语言配置的方法
2016/07/23 PHP
JavaScript Event学习第六章 事件的访问
2010/02/07 Javascript
TreeView 用法(有代码)(asp.net)
2011/07/15 Javascript
面向对象的Javascript之三(封装和信息隐藏)
2012/01/27 Javascript
jquery中使用循环下拉菜单示例代码
2014/09/24 Javascript
js在指定位置增加节点函数insertBefore()用法实例
2015/01/12 Javascript
jQuery中on()方法用法实例
2015/01/19 Javascript
jQuery实现高亮显示网页关键词的方法
2015/08/07 Javascript
Javascript获取统一管理的提示语(message)
2016/02/03 Javascript
各种选择框jQuery的选中方法(实例讲解)
2017/06/27 jQuery
vue项目webpack中Npm传递参数配置不同域名接口
2018/06/15 Javascript
vue单页面应用打开新窗口显示跳转页面的实例
2018/09/21 Javascript
让webpack+vue-cil项目不再自动打开浏览器的方法
2018/09/27 Javascript
vue ssr 实现方式(学习笔记)
2019/01/18 Javascript
Vue用mixin合并重复代码的实现
2020/11/27 Vue.js
vue 实现图片懒加载功能
2020/12/31 Vue.js
使用python BeautifulSoup库抓取58手机维修信息
2013/11/21 Python
Python中os和shutil模块实用方法集锦
2014/05/13 Python
Python 实现链表实例代码
2017/04/07 Python
Python编程实现双击更新所有已安装python模块的方法
2017/06/05 Python
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
Python秒算24点实现及原理详解
2019/07/29 Python
Python实现ElGamal加密算法的示例代码
2020/06/19 Python
Python如何重新加载模块
2020/07/29 Python
html5贪吃蛇游戏使用63行代码完美实现
2013/06/25 HTML / CSS
什么是Remote Module
2016/06/10 面试题
在校大学生个人的自我评价
2014/02/13 职场文书
土建专业毕业生自荐书
2014/07/04 职场文书
对照四风自我剖析材料
2014/10/07 职场文书
档案工作个人总结
2015/03/03 职场文书
《好妈妈胜过好老师》:每个孩子的优秀都是有源头的
2020/01/03 职场文书
MySQL的join buffer原理
2021/04/29 MySQL
MySQL 分组查询的优化方法
2021/05/12 MySQL
Python 视频画质增强
2022/04/28 Python