JS:操作样式表3:内联和外链样式
var box = document.getElementById("box");
box.style.属性;只能读取修改行内样式。
//访问元素样式2,对外链样式表进行操作
document.styleSheets //得到的是样式表集合 styleSheetList
var sheet = document.styleSheets[0];//取得要修改的第一个样式表
一:操作
1.//非ie浏览器下可以识别一下方法和属性
alert(sheet.cssRules); //样式集合列表
sheet.deleteRule(0); //删除样式规则(此处上的是第一css样式)
sheet.insertRule("body {background-color:red}",0); //在第一个位置添加一个样式规则
2.//针对ie浏览器使用如下:
alert(sheet.rules);
sheet.removeRule(0);
sheet.addRule("body","background-color:red",0);
//操作样式表,兼容所有浏览器:将1和2结合在一起:
document.styleSheets;
var sheet = document.styleSheets[0];//CSSstyleSheet 取得要修改的样式表
cinsertRule(sheet,"div","background-color:green; color:pink; font-size:18px; width:200px;",0);//对已有的属性修改不成功
//添加css规则,并且兼容所有浏览器
function cinsertRule (sheet, selectorText,cssText,position) {
//如果是非IE
if (sheet.insertRule) {
sheet.insertRule(selectorText + "{"+cssText+"}", position);
} //如果是ie
else if (sheet.addRule) {
sheet.addRule(selectorText,cssText,position);
};
}
cdeteRule(sheet, 1); //将原来写的css规则删去,但上面新增加的并没有删去
//删除css规则,并且兼容所有浏览器
function cdeteRule (sheet,index) {
if (sheet.deleteRule) {
sheet.deleteRule(index);
}
else if (sheet.removeRule) {
sheet.removeRule(index);
};
}
二,取值
//通过外链形式,获取样式文本,选择器,样式值
var sheet3 = document.styleSheets[0];
var rules3 = sheet3.cssRules||sheet3.rules; //兼容ie和非ie
var crule = rules3[0];
alert(crule.cssText); //.div {color:red;font-size:20px;float:right;} 没有调用删除和添加规则函数
alert(crule.selectorText); //.box
alert(crule.style.color); //red
ps: 第二种写法更简洁。
JS:操作样式表3:内联和外链样式的更多相关文章
- CSS 四种样式表 六种规则选择器 五种常用样式属性
新的html程序要在VS中编写了,在vs中安装ASP.NET和Web开发,并用ASP.NET Web 应用程序(.NETFramework)创建一个网页程序.添加一个html页 后面的代码都是在htm ...
- bootstrap 基础表单 内联表单 横向表单
bootstrap 基础表单 内联表单 横向表单 <!DOCTYPE html> <html> <head> <title></title> ...
- [荐]使用Js操作注册表
使用Js操作注册表 要操作注册表需要通过ActiveX控件调用WScript.shell对象,通过该对象的一些方法来操作. WshShell对象:可以在本地运行程序.操纵注册表内容.创建快捷方式或访问 ...
- JavaScript获取css 行间样式,内连样式和外链样式的方式
[行间样式获取] <div id='div1' style="backgroud:red">测试</div> <script> var odiv ...
- js获取元素的外链样式
一般给元素设置行内样式,如<div id="div1" style="width:500px;"></div>.如要获取它的样式,即可d ...
- Jquery元素选取、常用方法;js只能获取内联样式,jquery内联内嵌都可以获取到;字符串.trim();去字符串前后空格
一:常用的选择器: 基本选择器 $("#myDiv") //匹配唯一的具有此id值的元素 $("div") //匹配指定名称的所有元素 $(".myC ...
- 深度理解CSS样式表,内有彩蛋....
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- [每日一题] OCP1z0-047 :2013-07-30 表连接――内联视图当作表使用
用sys用户登录,给oe用户授权dba,以便可以用oe用户查看执行计划: oe@OCM> conn / as sysdba Connected. sys@OCM> grant dba to ...
- 在JS中将指定表单内的“具有name数据的表单元素的值”封装为Get形式的字符串
//封装post时候,表单中所有具有name数据的表单元素的值,并返回“n=1&p=a” function serialize(formid) { var arr = []; var ipts ...
随机推荐
- C# 设计模式 提高可维护性的几点原则
为了提高软件的可维护性,应该遵循以下几点原则: 1.“开放--封闭”原则(OCP) 一个软件实体应该对扩展开放,对修改封闭. 2.里氏代换原则(LSP) 子类型必须能替换她们的基类型,反过来则不成立. ...
- HTML5学习之拖放(十)
l元素可以用于拖拽必须设置draggable="true"属性,img和a标签除外,她们两个默认就可以被拖拽 想做拖拽处理,就需要在Dom元素上监听拖放的事件:dragstart, ...
- select count(*)和select count(1)哪个性能高
select count(*).count(数字).count(字段名)在相同的条件下是没有性能差别的,一般我们在统计行数的时候都会把NULL值统计在内的,所以这样的话,最好就是使用COUNT(*) ...
- Delphi的枚举类型
参考:http://blog.csdn.net/kissdeath/article/details/2060573 Delphi程序不仅可以用于数值处理,还更广泛的用于处理非数值的数据.例如:性别.月 ...
- 【JAVA 文件概述】
一.概述 使用此类的原因: 该类将文件或者文件夹封装成对象.方便对文件与文件夹的属性信息进行操作.File对象作为参数传递给流的构造函数.要求:使用File类的常用方法. windows平台下,目录分 ...
- android 入门-控件 测量状态栏高度
private ViewTreeObserver viewTreeObserver; /** 获取可見区域高度 **/ WindowManager manager = getWindowManager ...
- Codeforces Round#250 D. The Child and Zoo(并差集)
题目链接:http://codeforces.com/problemset/problem/437/D 思路:并差集应用,先对所有的边从大到小排序,然后枚举边的时候,如果某条边的两个顶点不在同一个集合 ...
- Xcode 缓存 帮助文档 隐藏文件夹显示方法
删除Xcode的缓存路径是:/Users/用户名/Library/Developer/Xcode/DerivedData(默认情况下, 这是一个隐藏文件夹) 显示隐藏文件夹 指令如下:显示隐藏文件: ...
- WEB前端知识体系脑图
说在开始的话: 我上大学那会,虽说主要是学Java语言,但是web前端也稍微学了一些,那时候对前端也没多在意,因为涉入的不深,可以搞一个差不多可以看的界面就可以了,其他也没过多在意. 因为稍微了解一点 ...
- mysql中sql语句
<数据定义语言DDL> 一. create TABLE tableName 创建表 二. alter TABLE tableName 修改表 三. drop TBALE tableName ...