CSS样式覆盖顺序

  • 内部style标签里的样式和外联link的css文件的样式其实是同等优先级的,关键就是看谁在下,优先级就高。下面的样式会覆盖上面样式里出现过的样式。

  • 如果css里又引用了一个另外的css,也就是css的头顶上写了一个 @import "xxx.css",则先加载这个css里面的内容,再加载本css里面的内容,所以如果有重复的话,后加载的会覆盖以前的。

  • 如果有多个css引用了很多个二级css,很多二级css都引用了三级css,构成了一个树结构,那么加载(覆盖)顺序就是(文件行)从上到下,深度优先遍历的顺序。

  • 用js赋予某个元素样式是赋予该元素的内联样式,优先级比较高

  • 如果多个script代码,会按照从html文件里从上往下的顺序算,但是不能先于元素标签出现。

  • 如果要先于元素标签出现的位置写js代码,给该元素赋样式,外面要用 onload包起来

    window.onload = function () {
        let a1 = document.querySelector(".a1");
        a1.style.setProperty("color", "yellow", "important");
        console.log("end");
    }
    
  • 还可以用延迟设置来覆盖加载完毕的js赋予的样式

    setTimeout(() => {
        let a1 = document.querySelector(".a1");
        a1.style.setProperty("color", "red", "important");
        console.log("end red");
    }, 1); // 延迟0.001s后 覆盖以前的样式
    

    这从时间角度来看,也算是一种覆盖吧。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值