资讯专栏INFORMATION COLUMN

【EASYDOM系列教程】之获取内联样式

xiaodao / 2630人阅读

摘要:回顾什么是内联样式所谓内联样式,就是通过页面元素的属性为当前元素定义样式。对象提供的属性和方法可以帮助我们获取样式的具体内容。遍历对象由于对象具有属性,返回该对象的属性的数量。方法通过获取的样式属性名,这种方式也可以通过方式进行替换。

回顾什么是内联样式

所谓内联样式,就是通过 HTML 页面元素的 style 属性为当前元素定义 CSS 样式。

以下代码示例,就是通过 style 属性定义 CSS 内联样式:

这是一个段落内容.

值得注意的是:

HTML 页面的结构与样式并没有有效分离

定义的 CSS 样式只针对当前元素有效

获取内联样式

由于设置内联样式的方式是利用 HTML 页面元素的 style 属性实现的,所以获取内联样式主要是依靠 DOM 中获取属性方式实现。

Element 对象的 getAttribute() 方法获取 style 属性的值。

通过 DOM 对象 HTMLElement 的 style 属性获取。

Element 对象的 getAttribute() 方法

Element 对象的 getAttribute() 方法的语法结构如下:

var value = element.getAttribute("style");

以上语法结构中调用 getAttribute() 方法的 element 表示 HTML 页面元素,传递的参数 style 表示属性名称,而返回值则是指定属性名对应的值(内联样式的声明内容)。

我们可以通过以下示例代码,学习如何通过 getAttribute() 方法获取内联样式:

这是一个段落内容.

上述示例代码的输出结果如下:

DOM 对象的 style 属性

由于 DOM 规范标准中将 Document 对象定位的 HTML 页面元素解析为相应的对象,而这些对象都继承于 HTMLElement 对象。该对象提供了 style 属性,返回 CSSStyleDeclaration 对象。

我们可以通过以下示例代码,学习如何通过 HTMLElement 对象的 style 属性获取内联样式:

这是一个段落内容.

上述示例代码,通过 style 属性会得到 CSSStyleDeclaration 对象,该对象表示一个 CSS 属性键值对的集合。

CSSStyleDeclaration 对象

通过 element.style 返回的是 CSSStyleDeclaration 对象。CSSStyleDeclaration 对象表示一个CSS属性键值对的集合。

CSSStyleDeclaration 对象提供的属性和方法可以帮助我们获取 CSS 样式的具体内容。

属性或方法 描述
cssText 声明块的文本内容。
length 属性的数量。
item() 返回属性名。 例如: nameString= styleObj.item(0) Alternative: nameString= styleObj[0]
getPropertyValue() 返回属性值。例如: valString= styleObj.getPropertyValue("color")
cssText 属性

通过 element.style.cssText 属性获取 CSS 声明块的文本内容。

我们可以通过以下示例代码,学习如何通过 cssText 属性获取 CSS 声明块的文本内容:

这是一个段落内容.

上述示例代码的输出结果如下:

值得注意的是: cssText 属性返回的是 CSS 声明块的文本内容,解析操作时会比较麻烦。

遍历 CSSStyleDeclaration 对象

由于 CSSStyleDeclaration 对象具有 length 属性,返回该对象的属性的数量。我们可以通过这一特性实现遍历 CSSStyleDeclaration 对象,从而得到所有属性名和相应的值。

我们可以通过以下示例代码,学习如何遍历 CSSStyleDeclaration 对象:

这是一个段落内容.

上述示例代码的输出结果如下:

在上述示例代码中,我们利用 CSSStyleDeclaration 对象的 length 属性控制遍历过程。

在遍历过程中,我们先利用 CSSStyleDeclaration 对象的 item() 方法得到每一个 CSSStyleDeclaration 对象的属性名,再利用 CSSStyleDeclaration 对象的 getPropertyValue() 方法根据属性名得到相应的值。

item() 方法

通过 element.style.item(index) 获取 CSS 的样式属性名,这种方式也可以通过 element.style[index] 方式进行替换。换句话讲,这两种方式是等价的。

我们可以通过以下示例代码,学习对比这两种方式:

for ( var i=0; i

上述示例代码的输出结果如下:

getPropertyValue() 方法

通过 element.style.item.getPropertyValue() 获取 CSS 的样式属性值,这种方式也可以通过 element.style[propertyName] 方式进行替换。

我们可以通过以下示例代码,学习对比这两种方式:

for ( var i=0; i

上述示例代码的输出结果如下:

属性链方式操作

由于通过 element.style 返回的是 CSSStyleDeclaration 对象,所以我们也可以通过 element.style.attrName 的方式获取具体的样式属性的值。

我们可以通过以下示例代码,学习这种获取方式:

这是一个段落内容.

本教程免费开源,任何人都可以免费学习、分享,甚至可以进行修改。但需要注明作者及来源,并且不能用于商业。

本教程采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/91737.html

相关文章

  • EASYDOM系列教程】索引

    摘要:系列教程是一套免费开源,任何人都可以免费学习分享,甚至可以进行修改。本文是这套系列教程的索引也就是目录第一回介绍在最开始,我们先来了解是什么的作用,以及浏览器的支持是怎么样的。 《EASYDOM》系列教程是一套免费、开源,任何人都可以免费学习、分享,甚至可以进行修改。但需要注明作者及来源,并且不能用于商业。 本文是这套系列教程的索引(也就是目录): 第一回 DOM 介绍 在最开始,我...

    yanwei 评论0 收藏0
  • EASYDOM系列教程 DOM 元素树

    摘要:元素之间的关系在元素树结构中,主要具有以下三层关系。祖先与后代如果我们将页面中某一个元素作为祖先的话,那包含在该元素内的所有元素除子级之外的都可以称为该元素的后代。兄弟关系具有相同父级元素的两个或几个元素之间就是兄弟关系。 DOM 元素树结构与 DOM 节点树结构很相似,区别仅在于是利用节点解析 HTML 元素,还是利用元素解析 HTML 元素。 DOM 树结构 还记得下面这张图吗? ...

    stormzhang 评论0 收藏0
  • EASYDOM系列教程定位页面元素

    摘要:对象提供了属性和方法实现定位页面元素功能,这也是的标准规范中对象的主要应用之一。是返回值,表示定位元素的集合,是一个集合。定位匹配选择器的第一个元素。方法定位页面元素所返回的集合就是静态集合。 Document 对象提供了属性和方法实现定位页面元素功能,这也是 DOM 的标准规范中 Document 对象的主要应用之一。 定位页面元素方法 目前 Document 对象提供实现定位页面元...

    NotFound 评论0 收藏0
  • EASYDOM系列教程DOM 简介

    摘要:最后表示,就是中表示各个对象之间的关系。的定义由于的标准规范是由组织起草并定义的,所以对的定义是目前最权威的解释。浏览器的支持目前几乎所有的浏览器都支持的内容。而组织定义的标准规范,主要也是为了解决在不同浏览器的差异问题。 DOM 是什么 DOM 被设计用于解析 HTML 页面文档,方便 JavaScript 语言通过 DOM 访问和操作 HTML 页面中的内容。 DOM 是由 W3C...

    Me_Kun 评论0 收藏0
  • EASYDOM系列教程DOM 树结构

    摘要:简单来说,节点作为树结构中的连接点,最终构成了完整的树结构。节点树结构通过节点概念,我们可以将原本的树结构改成节点树结构进行表示。节点之间的关系中的表示模型,也可以用来表示节点树结构中节点之间的关系。值得注意的是和元素并不是兄弟关系。 DOM 树结构 DOM 之所以可以访问和更新 HTML 页面中的内容、结构和样式,是因为 DOM 将 HTML 页面解析为一个 树结构。 例如下面这段代...

    nemo 评论0 收藏0

发表评论

0条评论

xiaodao

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<