• js改变css样式


    CreateTime--2017年10月31日15:14:12

    Author:Marydon

    js改变css样式

    1.js改变单个css样式

      HTML部分

    <div id="test" style="display:none">测试js改变单个css样式</div>

      JAVASCRIPT部分

    document.getElementById('test').style.display = 'none';

    2.js改变多个css样式

      HTML部分

    <div id="test">测试js改变多个css样式</div>

      方法一:通过操作style属性实现

    $get("test").style.height = '100px';
    $get("test").style.width = '100px';
    $get("test").style.border = '1px solid red';

      方法二:通过cssText属性实现(推荐使用)

    $get("test").style.cssText = "height:100px;500px;border:1px solid red;";

      说明:需要通过js改变多个css样式时,推荐使用第二种方式

      注意:使用cssText有2个注意事项

      a.会覆盖之前的样式;

      举例:

    <div id="test" style="height:100px;500px;border:1px solid red;">测试cssText</div>

      效果:想在此基础上加个背景色

    $get("test").style.cssText = "background-color:yellow;"  

      结果:但是实现效果却是加上了背景色,其他样式被覆盖掉了

      b.ie8及ie8以下结尾没有分号。

      通过cssText属性给标签设置行内样式时, ie8及ie8以下浏览器会自动去掉样式中的最后一个封号

      解决方案:使用cssText时应该采用叠加的方式以保留原有的样式  

    var cssText = $get("test").style.cssText;            
    // 不以;号结尾
    if(cssText.lastIndexOf(';') != cssText.length - 1) {
        cssText += ";"
    }
    cssText += "background-color:yellow;color:green;";
    // 追加多个样式
    $get("test").style.cssText = cssText; 

    小结:

      使用js改变单个css样式,通过调用style属性来实现;

      使用js改变多个css样式,通过调用cssText属性来实现,注意避免bug的出现。

    3.js改变名称带有-的样式

      使用javascript操作CSS样式时,遇到样式名称中带有-的,第二个首字母大写即可  

    $get("test").style.backgroundColor = "yellow";
  • 相关阅读:
    Hive中将文件加载到数据库表失败解决办法
    Hive安装及配置
    Hadoop下MapReduce实现Pi值的计算
    CentOS下Hadoop运行环境搭建
    kettle案例实现
    假期周总结报告03
    假期周总结报告02
    假期周进度报告01
    阅读笔记6
    阅读笔记5
  • 原文地址:https://www.cnblogs.com/Marydon20170307/p/7761770.html
Copyright © 2020-2023  润新知