zoukankan      html  css  js  c++  java
  • js中获取css样式

    获取行内样式

    > 注:只能获取和设置行内样式

    1. 获取值:obj.style.属性名

    2. 设置值:obj.style.属性名 = 属性值;

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <meta name="viewport" content="width=device-width, initial-scale=1.0">
     6     <title>Document</title>
     7 </head>
     8 <body>
     9     <div id='div1' style="color: red;"></div>
    10     <script type="text/javascript">
    11         let obj = document.getElementById('div1') ;
    12         console.log(obj.style.color);  // red
    13 
    14         obj.style.color = 'yellow';
    15         console.log(obj.style.color);  // yellow
    16     </script>
    17 </body>
    18 </html>

    获取全部样式

    > 注:可以设置全部样式(行内样式、内部样式、外部样式),但不能设置值

    1. 获取值:window.getComputedStyle(元素对象[, null/伪元素]); 如果不存在伪元素,第二个属性值可以省略不写

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <meta name="viewport" content="width=device-width, initial-scale=1.0">
     6     <title>Document</title>
     7     <style type="text/css">
     8         #div1 {
     9             width: 500px;
    10         }
    11     </style>
    12 </head>
    13 <body>
    14     <div id='div1' style="color: red;"></div>
    15     <script type="text/javascript">
    16         let obj = document.getElementById('div1') ;
    17         console.log(window.getComputedStyle(obj).color);  // rgb(255, 0, 0)
    18         console.log(window.getComputedStyle(obj).width);  // 500px
    19     </script>
    20 </body>
    21 </html>

        该属性在ie8以下无效,ie8以下可以通过:obj.currentStyle('color') 来获取

    js获取设置css属性兼容性写法:

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <meta name="viewport" content="width=device-width, initial-scale=1.0">
     6     <title>Document</title>
     7     <style type="text/css">
     8         #div1 {
     9             width: 500px;
    10         }
    11     </style>
    12 </head>
    13 <body>
    14     <div id='div1' style="color: red;"></div>
    15     <script type="text/javascript">
    16         /* 
    17          * 参数列表:
    18          *  ele:dom对象
    19          *  prop:属性名
    20          *  val:属性值
    21          */
    22         function getAndSetStyle(ele, prop, val) {
    23             if(val) {
    24                 // 设置值
    25                 ele.style[prop] = val;
    26             }else {
    27                 // 兼容ie8以下
    28                 if(ele.currentStyle) {
    29                     return ele.currentStyle[prop];
    30                 }else {
    31                     return window.getComputedStyle(obj)[prop];
    32                 }
    33             }
    34         }
    35 
    36         var obj = document.getElementById("div1");
    37         console.log(getAndSetStyle(obj, 'color'));  // red
    38         console.log(getAndSetStyle(obj, 'width'));  // 500px
    39 
    40         getAndSetStyle(obj, 'height', '200px');
    41         console.log(getAndSetStyle(obj, 'height'));  // 200px
    42     </script>
    43 </body>
    44 </html>
  • 相关阅读:
    ER图转关系模式, 强制参与和选择参与
    panoramio
    as3中flash的静态文本是可以直接访问的
    城市战3操作很失败
    20111120杭州天地行
    XNA 实用教程
    十、样式
    十三、“自己”的动画——图片转换
    十三、“导航”的动画——页面跳转
    十三、“自己”的动画——按钮
  • 原文地址:https://www.cnblogs.com/mengbing/p/12491777.html
Copyright © 2011-2022 走看看