JavaScript学习-操作样式的DOM API
来源:互联网 发布:krpano全景漫游软件 编辑:程序博客网 时间:2024/05/17 00:18
1,介绍
- 定义样式的方式有3种
- 通过link元素包含外部样式表文件。
- 使用style元素定义嵌入式样式。
- 使用style特性定义针对特定元素的样式。
确定浏览器是否支持DOM2级定义的CSS能力,可以使用一下代码。
var supportsDOM2CSS = document.implementation.hasFeature("CSS","2.0");var supportsDOM2CSS2 = document.implementation.hasFeature("CSS2","2.0");
2,访问元素的样式
- 通过style特性
- 包含style特性的元素都有一个对应的style属性对象,这个对象是CSSStyleDeclaration实例。
- 在style特性中指定的任何CSS属性都将表现为这个style对象的相应属性。特点如下
- 对于使用短划线(分隔不同的词汇,例如background-image)的CSS属性名,必须转换成驼峰大小写形式。
- 一个不能直接转换的CSS属性是float。DOM2级样式规范规定相应的属性名是cssFloat,IE则是styleFloat。
- DOM样式的属性和方法
- 计算的样式
- 从其他样式表层叠而来并影响到当前元素的样式信息。
- document.defaultView.getComputedSytle()方法
- 接收两个参数:要取得计算样式的元素,一个伪元素字符串(例如“:after”,可为null)。
- 返回一个CSSStyleDeclaration对象。
- 从外包含的样式(或嵌入的样式)属性若与特性相同会被覆盖。
- IE不支持getComputedSytle()方法,在IE中每个具有style属性的元素还有一个currentStyle属性,包含当前元素全部计算后的样式,类似于getComputedSytle()方法。
- 所有计算的样式都是只读的。
3,操作样式表
- CSSStyleSheet表示样式表,包括通过link元素包含的样式表和在style元素中定义的样式表,分别是HTMLLinkElement和HTMLStyleElement类型。CSSStyleSheet类型相对更加通用一些,不管这些样式在HTML中如何定义的,CSSStyleSheet是只读的。
使用下列代码可以确定浏览器是否支持DOM2级样式表
var supportsDOM2StyleSheets = document.implementation.hasFeature("StylesSheets","2.0");
- CSSStyleSheet继承自StyleSheet,StyleSheet的属性如下:
获取styleSheet兑现的方式
- 通过document.styleSheets集合,使用length和item()(或者方括号)访问每一个样式表。
通过link和style元素取得CSSStyleSheet对象。使用sheet表示,IE使用styleSheet属性。
- 代码示例
function getStyleSheet(element){ return element.sheet || element.styleSheet;}// 取得第一个link元素引入的样式表var link = document.getElementsByTagName("link")[0];var sheet = getStyleSheet(link);
4,CSS规则CSSRule
- CSSStyleRule继承自CSSRule,CSSStyleRule包含下列属性:
创建规则insertRule()方法
接收两个参数:规则文本和表示在哪里插入规则的索引。
sheet.insertRule("body { background-color:silver }",0);//DOM方法
删除规则deleteRule()方法
- 参数:要删除的规则的位置。
代码示例
function deleteRule(sheet,index){ if (sheet.deleteRule){ sheet.deleteRule(index); }else if(sheet.removeRule){ sheet.removeRule(index);//对IE }}
阅读全文
0 0
- JavaScript学习-操作样式的DOM API
- JavaScript学习9:DOM操作表格及样式
- js学习小结(十)2014.5.10.11(DOM2和DOM3的变化,操作样式的DOM API(1))
- JavaScript编程:使用DOM操作样式表
- JavaScript DOM操作表格及样式
- JavaScript DOM操作表格及样式
- JavaScript中dom对css样式操作
- Javascript的DOM操作
- Javascript的DOM操作
- Javascript的DOM操作
- Javascript的DOM操作
- javascript 的 DOM 操作
- JavaScript的DOM操作
- javascript的DOM操作
- 轻松学习JavaScript二十四:DOM编程学习之操作CSS样式(一)
- 轻松学习JavaScript二十五:DOM编程学习之操作CSS样式(二)
- Javascript操作DOM常用API总结
- Javascript操作DOM常用API总结
- 第二行代码学习笔记——第十章:后台默默的劳动者——探究服务
- Sublime 配置
- django 上传文件
- 数据结构实验之排序七:选课名单
- 算法导论 练习题 15.1-3
- JavaScript学习-操作样式的DOM API
- C++异常处理机制
- MySQL5.7.18自解压Zip 官网下载、安装与配置
- 基于条件随机场(CRF)的组织机构实体识别
- GBDT算法的优缺点
- HDU 1171 Big Event in HDU dp背包
- django model 的字段以及字段属性
- 初识 tcp/ip协议
- linux主机性能