javascript 读取内联之外的样式(style、currentStyle、getComputedStyle区别介绍)
样式表有三种方式 内嵌样式(inline Style) :是写在Tag里面的,内嵌样式只对所有的Tag有效。 内部样式(internal Style Sheet):是写在HTML的<head></head>里面的,内部样式只对所在的网页有效。 外部样式表(External Style Sheet):如果很多网页需要用到同样的样式(Styles),将样式(Styles)写在一个以.css为后缀的CSS文件里,然后在每个需要用到这些样式(Styles)的网页里引用这个CSS文件。 下面的是读取除了内嵌样式之外样式的js,只能读不能写。 代码如下: var mydiv = document.get JavaScript 用于读取HTML元素的样式有多种方法,特别是在处理内联样式之外的样式时,如内部样式表和外部样式表。以下是对`style`、`currentStyle`和`getComputedStyle`之间区别的详细解释: 1. **内联样式(Inline Style)**: 内联样式是最直接的方式,通过在HTML元素的`style`属性中设置CSS样式。这些样式优先级最高,只对该特定元素生效。 2. **内部样式表(Internal Style Sheet)**: 内部样式表通常放在`<head>`标签内的`<style>`标签中,它定义的样式应用于整个HTML文档。相比内联样式,其好处在于可以集中管理样式,减少重复代码。 3. **外部样式表(External Style Sheet)**: 当多个页面需要共享相同的样式时,外部样式表就显得非常有用。样式被保存在`.css`文件中,通过`<link>`标签引入到HTML中。这样可以使页面结构与表现分离,便于维护和更新。 4. **JavaScript 中的 `style` 属性**: `element.style`属性提供了一个接口,可以读取或修改元素的内联样式。例如,`document.getElementById('mydiv').style.width`将返回`mydiv`元素的内联样式中的宽度。然而,这种方法无法获取通过内部样式表或外部样式表设置的样式。 5. **IE 特有的 `currentStyle` 对象**: Internet Explorer 提供了`currentStyle`对象,可以获取当前元素的所有计算样式,包括内联、内部样式表和外部样式表的样式。例如,`document.getElementById('mydiv').currentStyle.width`将返回`mydiv`元素的实际宽度,无论样式是如何定义的。 6. **非IE浏览器的 `getComputedStyle` 方法**: 在Firefox、Chrome、Safari等非IE浏览器中,`window.getComputedStyle`方法用于获取元素的最终计算样式。例如,`window.getComputedStyle(mydiv, null).width`可以获取`mydiv`元素的实际宽度。`getComputedStyle`方法需要传递两个参数,第一个是目标元素,第二个通常是`null`。 7. **FF下的`document.defaultView.getComputedStyle`**: Firefox 也提供了另一种访问计算样式的途径,即`document.defaultView.getComputedStyle`,这与`window.getComputedStyle`效果相同。 需要注意的是,`currentStyle`和`getComputedStyle`都是只读的,不能用于设置样式。在编写兼容多浏览器的JavaScript代码时,需要根据浏览器类型选择合适的样式获取方法。 总结来说,`style`属性主要用于处理内联样式,而`currentStyle`和`getComputedStyle`则用于获取所有来源的样式,它们分别在IE和非IE浏览器中发挥作用。在实际开发中,为了确保跨浏览器兼容性,通常会结合使用这两种方法,以正确地获取和处理元素的样式信息。
































- 粉丝: 1
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 电力工程及其自动化的问题及措施分析.docx
- C语言课程方案设计书报告—客房管理系统.doc
- 基于单片机的出租车计价器的方案设计书.doc
- 2018届高考数学-第十章-算法初步、统计与统计案例-10.3-用样本估计总体-文-新人教A.ppt
- 软件项目管理案例教程(第三版)课后习题答案.docx
- 软件开发成本估算.doc
- 计算科学进展与应用
- 田集杨庄至於庄公路项目管理建议书.doc
- 利用信息化管理系统构建医疗设备电子档案的研究.docx
- 星辰公司企业网络规划设计.doc
- 以大数据为引领推动工业数字化转型.docx
- 和田市网络与信息安全自查表.doc
- 2018年度大数据时代的互联网信息安全考试题及答案(整合).doc
- 做好监理项目管理的几点探讨精.doc
- 新建汉十铁路站后四电系统集成及相关工程.doc
- 网络经济中的消费特征及消费心理分析.doc


