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:内联和外链样式的更多相关文章

  1. CSS 四种样式表 六种规则选择器 五种常用样式属性

    新的html程序要在VS中编写了,在vs中安装ASP.NET和Web开发,并用ASP.NET Web 应用程序(.NETFramework)创建一个网页程序.添加一个html页 后面的代码都是在htm ...

  2. bootstrap 基础表单 内联表单 横向表单

    bootstrap 基础表单 内联表单 横向表单 <!DOCTYPE html> <html> <head> <title></title> ...

  3. [荐]使用Js操作注册表

    使用Js操作注册表 要操作注册表需要通过ActiveX控件调用WScript.shell对象,通过该对象的一些方法来操作. WshShell对象:可以在本地运行程序.操纵注册表内容.创建快捷方式或访问 ...

  4. JavaScript获取css 行间样式,内连样式和外链样式的方式

    [行间样式获取] <div id='div1' style="backgroud:red">测试</div> <script> var odiv ...

  5. js获取元素的外链样式

    一般给元素设置行内样式,如<div id="div1" style="width:500px;"></div>.如要获取它的样式,即可d ...

  6. Jquery元素选取、常用方法;js只能获取内联样式,jquery内联内嵌都可以获取到;字符串.trim();去字符串前后空格

    一:常用的选择器: 基本选择器 $("#myDiv") //匹配唯一的具有此id值的元素 $("div") //匹配指定名称的所有元素 $(".myC ...

  7. 深度理解CSS样式表,内有彩蛋....

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. [每日一题] OCP1z0-047 :2013-07-30 表连接――内联视图当作表使用

    用sys用户登录,给oe用户授权dba,以便可以用oe用户查看执行计划: oe@OCM> conn / as sysdba Connected. sys@OCM> grant dba to ...

  9. 在JS中将指定表单内的“具有name数据的表单元素的值”封装为Get形式的字符串

    //封装post时候,表单中所有具有name数据的表单元素的值,并返回“n=1&p=a” function serialize(formid) { var arr = []; var ipts ...

随机推荐

  1. Android 快速开发框架:推荐10个框架:afinal、ThinkAndroid、andBase、KJFrameForAndroid、SmartAndroid、dhroid..

    对于Android初学者以及对于我们菜鸟,这些大神们开发的轻量级框架非常有用(更别说开源的了). 下面转载这10个框架的介绍:(按顺序来吧没有什么排名). 一.  Afinal 官方介绍: Afina ...

  2. 知乎大牛的关于JS解答

    很多疑惑一扫而空.... http://www.zhihu.com/question/35905242?sort=created JS的单线程,浏览器的多进程,与CPU,OS的对位. 互联网移动的起起 ...

  3. Codeforces Round #363 Fix a Tree(树 拓扑排序)

    先做拓扑排序,再bfs处理 #include<cstdio> #include<iostream> #include<cstdlib> #include<cs ...

  4. <转>ORA-06413 连接未打开错误

    ORA-06413 Connection not open.Cause: Unable to establish connection.Action: Use diagnostic procedure ...

  5. SPI-软件开发注意事项

    01 PD ,设置数据库前一定把模板设置号,命名规则规划清楚.

  6. maven web启动报错java.lang.ClassNotFoundException: org.springframework.web.util.Log4jConfigListener

    问题描述 SEVERE: Error configuring application listener of class org.springframework.web.util.Log4jConfi ...

  7. 本人经过测试认为最简单最好的popupwindow样式

    <shape xmlns:android="http://schemas.android.com/apk/res/android" > <!-- solid 设置 ...

  8. poj2533 LIS

    题目链接: http://poj.org/problem?id=2533 题意:第一个数n,接下来n个数,>  ....求最长上升子序列. 这道题有两种解法,第一种是通解,也适用于别的LIS. ...

  9. 键盘按钮keyCode大全,keyCode列表对照表

    目录 [显示] 1js获取键盘按键对应的keyCode 2字母和数字键的键码值 3数字键盘上的键的键码值和功能键键码值 4控制键键码值 js获取键盘按键对应的keyCode <!doctype ...

  10. 8VC Venture Cup 2016 - Final Round (Div. 2 Edition)

    暴力 A - Orchestra import java.io.*; import java.util.*; public class Main { public static void main(S ...