当前位置: 首页 > news >正文

javascript获取样式表的规则及读取与写入

CSSStyleSheet是继承了StyleSheet的接口属性,它是用于找当前文档中的<link rel=“” href=“”…>这样文件的,有以下属性:lenght,cssRules,title,href,type,deleteRule,insertRule等

CSSStyleRule是继承于CSSRule,它是用于找<link rel=“” href="'>中所有每个规则的集合,它有以下属性:
cssText,selectorText,type,style,等。

第1种方法

 function getStyle(element){//这里是兼容IE的styleSheet属性,sheet是dom中CSSStyleSheet对象的属性return element.sheet||element.styleSheet;}//获取到文档中的第1个linkvar link=document.getElementsByTagName("link")[0];var sheet=getStyle(link);//获取link文件的规则合集对象cssRules,以及兼容IE的rulesvar rules=sheet.cssRules||sheet.rules;//获取.css文件中第一条规则,以花括号为准的第1个{}var rule=rules[0];//这里是写入cssText,而直接rule.cssText是直接读取整个样式表,但不能写入,要写入必须rule.style.cssText="你写入的规则"rule.style.cssText="margin:5px;padding:5px;";//这里是显示你读取第1条规则的选择符文本如:.db 或#main或标签选择符div等console.log(rule.selectorText);console.log(rule.style.cssText);

第2种方法

//获取到文档中的第1个link,这里直接用document.styleSheets[0]来找文档中的<link>文件,找到后直接获取文件中的规则集合var sheet=document.styleSheets[0];//获取link文件的规则合集对象cssRules,以及兼容IE的rulesvar rules=sheet.cssRules||sheet.rules;//获取.css文件中第一条规则,以花括号为准的第1个{}var rule=rules[0];//这里是写入cssText,而直接rule.cssText是直接读取整个样式表,但不能写入,要写入必须rule.style.cssText="你写入的规则"rule.style.cssText="margin:5px;padding:5px;";//这里是显示你读取第1条规则的选择符文本如:.db 或#main或标签选择符div等console.log(rule.selectorText);console.log(rule.style.cssText);

然后是你在文件中的导入的外部规则,也包括你在当前文档中嵌入的规则,嵌入的规则没有 的href,rel,href=undefine属于未定义状态
这是外部导入css文件

body,html
{margin: 0;padding: 0;
}
body{font-family: Arial, Helvetica, sans-serif;font-size: 1em;
}#mydiv
{margin: 0 auto;width: 800px;margin-top: 5px;border: solid 1px blue;
}
#mydiv #mylist
{margin: 0;padding: 0;
}
#mydiv #mylist li
{list-style: none;margin: 5px;font-size: 0.85em;float:left;
}

相关文章:

javascript获取样式表的规则及读取与写入

CSSStyleSheet是继承了StyleSheet的接口属性,它是用于找当前文档中的<link rel“” href“”…>这样文件的&#xff0c;有以下属性&#xff1a;lenght,cssRules,title,href,type,deleteRule,insertRule等 CSSStyleRule是继承于CSSRule&#xff0c;它是用于找<link re…...

什么是promise?

是JavaScript中用于处理异步操作的一种机制。 异步操作&#xff0c;例如从服务器获取数据、读取文件、执行数据库查询等等。 经典使用&#xff1a;Axios 是一个基于Promise的HTTP客户端 Promise具有三个状态&#xff1a; Pending&#xff08;待定&#xff09;&#xff1a;Pr…...

从零开始学习软件测试-第45天笔记

monkey事件 事件&#xff1a;对app进行的操作&#xff0c;比如触摸事件&#xff0c;滑动事件...动作&#xff1a;构成一个事件所需要的步骤。 调整事件的百分比 adb shell monkey -p 包名 -v -v --pct-xxx 百分比 次数>输出文件的路径 分析日志有没有报错 到日志中去找…...

visual studio常用快捷键

CtrlM、CtrlO 折叠到定义 CtrlM、CtrlM 折叠当前定义 CtrlM、CtrlA 折叠全部 CtrlK、CtrlD 自动编排代码格式 F12 转到定义 ShiftF12 查看所有定义 ctrl] 转到定义首部或尾部 ctrlX 未选中文本时&#xff0c;剪切/删除光标所在行。ctrlV 未选中文本时&#xff0c;粘贴到…...

数据变换:数据挖掘的准备工作之一

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ &#x1f434;作者&#xff1a;秋无之地 &#x1f434;简介&#xff1a;CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作&#xff0c;主要擅长领域有&#xff1a;爬虫、后端、大数据…...

Go语言实践案例之简单字典

一、程序要实现效果&#xff1a; 在命令行调用程序的时候&#xff0c;可以在命令行的后面查询一个单词&#xff0c;然后会输出单词的音标和注释。 二、思路分析&#xff1a; 定义一个结构体 DictRequest&#xff0c;用于表示翻译请求的数据结构。其中包含了 TransType&#…...

笔试面试相关记录(3)

&#xff08;1&#xff09;String String和String.append()的底层实现 C中string append函数的使用与字符串拼接「建议收藏」-腾讯云开发者社区-腾讯云 (tencent.com) String String 在 第二个String中遇到\0就截止&#xff0c;append()的方法则是所有字符都会加在后面。 &…...

第6章_瑞萨MCU零基础入门系列教程之串行通信接口(SCI)

本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写&#xff0c;需要的同学可以在这里获取&#xff1a; https://item.taobao.com/item.htm?id728461040949 配套资料获取&#xff1a;https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总&#xff1a; ht…...

开源免费的流程图软件draw.io

2023年9月16日&#xff0c;周六上午 想买微软的visio&#xff0c;但发现不是很值得&#xff0c;因为我平时也不是经常需要画图。 所以我最后还是决定使用开源免费的draw.io来画图 draw.io网页版的网址&#xff1a; Flowchart Maker & Online Diagram Software draw.io的…...

Python绘图系统19:添加时间轴以实现动态绘图

文章目录 时间轴单帧跳转源代码 Python绘图系统&#xff1a; &#x1f4c8;从0开始的3D绘图系统&#x1f4c9;一套3D坐标&#xff0c;多个函数&#x1f4ca;散点图、极坐标和子图自定义控件&#xff1a;绘图风格&#x1f4c9;风格控件&#x1f4ca;定制绘图风格坐标设置进阶&a…...

深度解析shell脚本的命令的原理之rm

rm 是 Unix/Linux 系统中的一个基本命令&#xff0c;用于删除文件或目录。以下是对这个命令的深度分析&#xff1a; 基本操作&#xff1a;rm 命令删除一个或多个文件或目录。这是通过从文件系统中移除链接来完成的。在 Unix/Linux 中&#xff0c;文件是通过链接&#xff08;可以…...

RPA机器人流程自动化专题培训大纲(供大家参考使用)

一、RPA机器人流程自动化概述 RPA的定义和发展历程RPA的应用场景和优势RPA与人工智能的关系 二、RPA机器人流程自动化基础知识 RPA的基本原理和技术架构RPA的常用技术和工具RPA的编程语言和开发环境 三、RPA机器人流程自动化实战应用 如何进行业务流程分析与优化如何利用R…...

Python用若干列的数据多条件筛选、去除Excel数据并批量绘制直方图

本文介绍基于Python&#xff0c;读取Excel数据&#xff0c;以一列数据的值为标准&#xff0c;对这一列数据处于指定范围的所有行&#xff0c;再用其他几列数据数值&#xff0c;加以筛选与剔除&#xff1b;同时&#xff0c;对筛选与剔除前、后的数据分别绘制若干直方图&#xff…...

驱动开发,IO多路复用实现过程,epoll方式

1.框架图 被称为当前时代最好用的io多路复用方式&#xff1b; 核心操作&#xff1a;一棵树&#xff08;红黑树&#xff09;、一张表&#xff08;内核链表&#xff09;以及三个接口&#xff1b; 思想&#xff1a;&#xff08;fd代表文件描述符&#xff09; epoll要把检测的事件…...

java在mysql中查询内容无法塞入实体类中,报错 all elements are null

目录 一、问题描述二、解决方案 一、问题描述 java项目中整体配置了mysql的驼峰式字段匹配规则。 mybatis.configuration.map-underscore-to-camel-casetrue由于项目需求&#xff0c;需要返回字段为file_id&#xff0c;file_url&#xff0c;并且放入实体类中&#xff0c;实体…...

Linux 挂载

挂载需要挂载源和挂载点 虚拟机本身就有的挂源 添加硬件 重启虚拟机 操作程序 sudo fdisk -l //以管理员权限查看电脑硬盘使用情况sudo mkfs.ext4 /dev/sdb //以管理员身份格式化硬盘sudo mkdir guazai //创建挂载文件夹 sudo mount /dev/sdb/guazai //将挂载源接上挂载点 s…...

[面试] 15道最典型的k8s面试题

文章目录 在 Kubernetes 中&#xff0c;有以下常见的资源对象&#xff1a;1.什么是 Kubernetes&#xff1f;它的主要特点是什么&#xff1f;2. Kubernetes 中的 Pod 是什么&#xff1f;它的作用是什么&#xff1f;3.Kubernetes 中的 Deployment 和 StatefulSet 有何区别&#x…...

lintcode 552 · 创建最大数 【算法 数组 贪心 hard】

题目 https://www.lintcode.com/problem/552/description 描述 给出两个长度分别是m和n的数组来表示两个大整数&#xff0c;数组的每个元素都是数字0-9。从这两个数组当中选出k个数字来创建一个最大数&#xff0c;其中k满足k < m n。选出来的数字在创建的最大数里面的位置…...

ModbusTCP服务端

1在Device下&#xff0c;添加设备net&#xff1a; 公交车。 2在net下添加 ModbusTCP...

Middleware ❀ Hadoop功能与使用详解(HDFS+YARN)

文章目录 1、服务概述1.1 HDFS1.1.1 架构解析1.1.1.1 Block 数据块1.1.1.2 NameNode 名称节点1.1.1.3 Secondary NameNode 第二名称节点1.1.1.4 DataNode 数据节点1.1.1.5 Block Caching 块缓存1.1.1.6 HDFS Federation 联邦1.1.1.7 Rack Awareness 机架感知 1.1.2 读写操作与可…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

docker详细操作--未完待续

docker介绍 docker官网: Docker&#xff1a;加速容器应用程序开发 harbor官网&#xff1a;Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台&#xff0c;用于将应用程序及其依赖项&#xff08;如库、运行时环…...

ubuntu搭建nfs服务centos挂载访问

在Ubuntu上设置NFS服务器 在Ubuntu上&#xff0c;你可以使用apt包管理器来安装NFS服务器。打开终端并运行&#xff1a; sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享&#xff0c;例如/shared&#xff1a; sudo mkdir /shared sud…...

连锁超市冷库节能解决方案:如何实现超市降本增效

在连锁超市冷库运营中&#xff0c;高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术&#xff0c;实现年省电费15%-60%&#xff0c;且不改动原有装备、安装快捷、…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

今日科技热点速览

&#x1f525; 今日科技热点速览 &#x1f3ae; 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售&#xff0c;主打更强图形性能与沉浸式体验&#xff0c;支持多模态交互&#xff0c;受到全球玩家热捧 。 &#x1f916; 人工智能持续突破 DeepSeek-R1&…...

scikit-learn机器学习

# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...

【JVM】Java虚拟机(二)——垃圾回收

目录 一、如何判断对象可以回收 &#xff08;一&#xff09;引用计数法 &#xff08;二&#xff09;可达性分析算法 二、垃圾回收算法 &#xff08;一&#xff09;标记清除 &#xff08;二&#xff09;标记整理 &#xff08;三&#xff09;复制 &#xff08;四&#xff…...