文章目录

  • 1、样式的种类
  • 2、元素.style.属性名
  • 2、window.getComputedStyle()
  • 3、currentStyle
  • 4、兼容写法
  • 5、获取元素样式值的方法

前面学习了如何设置元素的样式,但如何获取元素的样式呢?

1、样式的种类

行内式:直接写在DOM元素的style属性中。
嵌入式:写在html页面中的<style></style>中的样式。
外链式: 由link标签引入的css文件中的样式。
优先级:行内 > 嵌入 > 外链

2、元素.style.属性名

行内式才有效,对嵌入式和外链式无效。在真实项目中,由于无法实现html和css分离,所以这种方式不常用。


通过”元素.style.属性名“的方式并没有获取到lefttop的值,需要将lefttop写成行内式才行。


再来看一个测试例子:


可以看到height值和backgroundColor值没有被获取到,所以我们得到以下结论:
style只能获取行内样式的值,无法获取嵌入式样式和外部样式的值。

2、window.getComputedStyle()

使用window.getComputedStyle()这个方法获取所有经过浏览器计算过的样式,只要当前的元素标签可以在页面中呈现出来,那么它的所有样式都是经过浏览器计算过的/渲染过的),哪怕有些样式没有写,我们也可以获取到。

window.getComputedStyle(当前要操作的元素对象,当前元素的伪类[一般情况下没有伪元素时写null])

3、currentStyle

IE6~8下不兼容,因为window下没有getComputedStyle这个属性。
IE6~8下可以使用currentStyle来获取所有经过浏览器计算过的样式

4、兼容写法

5、获取元素样式值的方法


86 js获取元素样式值相关推荐

  1. js获取元素样式-行内样式、内部样式、外部样式

    js获取元素样式 一.行内样式 具体实现 二.获取所有样式 具体实现 一.行内样式 具体实现 在js获取到dom元素之后,使用其style属性即可获取到其所有的行内样式 <div id=&quo ...

  2. js获取classname值_利用js获取元素class值的两种方法

    我们有时为了达到某种效果,需要以元素的class值为条件做判断. 我们如何利用JavaScript获取元素class的值?我们先看下面代码: x=document.getElementsByTagNa ...

  3. JavaScript或js获取元素的值

    一般可以用原生js及jQuery获取html元素的值. <div id="test">数值</div> 原生js写法: 1 alert(document.g ...

  4. javascript获取元素样式值

    使用css控制页面有4种方式,分别为行内样式(内联样式).内嵌式.链接式.导入式. 行内样式(内联样式)即写在html标签中的style属性中,如<div style="width:1 ...

  5. 原生JS获取元素属性值

    方法一 第一步 我们要获取到元素(比如用ID),不可以是类数组(比如用class),类数组除了有一些数组的基本特征不可以使用其他方法,你会报错的 第二步 目标元素必须设置position为absolu ...

  6. Vue.js 获取元素高度的方法【记录】

    Vue.js获取下面div的height: <div ref="element"></div> 1.获取高度值:(内容高+padding+边框) let h ...

  7. js基础总结——js 获取元素节点、js 绑定onclick事件、js 获取属性 修改属性值、js 获取子元素、js 改变css样式

    参考书籍:<JavaScript DOM编程艺术 第2版> 本博客代码的测试页面是:https://www.layui.com/ js dom操作 js 获取元素节点 一份document ...

  8. JS助记 ----- 盒子模型与获取元素样式

    盒子模型简单介绍 content-box 默认的盒子模型,width 和 height 设置的是 content 的大小,有border和padding的情况下再额外增加盒子的宽高,整个盒子的可视区大 ...

  9. JavaScript获取元素样式

    元素:style:样式名=样式值  读取方式:元素.style.样式名 1.通过style属性设置喝读取的都是内联样式 案例:(在此和之前一样,创建HTML就省略不写了,一如既往的给出示例) 2.HT ...

最新文章

  1. 存储管理算法java代码
  2. tensorflow:Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
  3. android判断主线程_android中从子线程切换到主线程,但是显得代码很臃肿,请教大牛是怎么自定义的?...
  4. 【工程项目经验】Compile Android Error fatal error opening dependency file No such file or directory
  5. [转]NetBeans开发Applet方法实例学习
  6. 解决win10中无法打开CHM文件的方法
  7. 通过js实现图片爆炸特效
  8. Module not specified
  9. Windows平台下面MD5 SHA1 SHA256命令行工具
  10. c语言 udp 解包_Socket拆包和解包
  11. wince6.0 屏幕旋转
  12. jquery实现点击小图片查看大图片
  13. 支持DoH的DNS服务器,使用 Docker 自建支持 DoH、DoT 的 DNS 服务器
  14. 19年6月仔细阅读A篇:游戏界声优
  15. 亚马逊推出的「距离助手」,好像孙悟空给唐僧画的圈圈啊
  16. 视频中场:中视频的复兴与前路
  17. 2020年深圳杯C题
  18. 轻巧的jQuery提示框插件Tipso演示
  19. Cuckoo沙箱安装步骤
  20. 第三方支付公司之快钱

热门文章

  1. 重镑!首个国产桌面操作系统开发者平台正式发布
  2. Matplotlib 图例指南
  3. 识别硬币和细胞数量+条形码检测(python+opencv)
  4. php做一个学生管理系统,基于php技术的学生管理系统实现方法
  5. Android的七巧板Activity之二 Activity的加载模式
  6. 马云教师节退休,他这10句区块链语录引人深思
  7. Es 根据时间分组聚合 (趋势图 折线图数据)
  8. Android中TextView设置图标的方法
  9. 2022最新知识,一步一步学习C语言基础知识入门(图例解析)
  10. 数据分析的目的是什么,真的是为了分析吗?