css权重导致的样式不生效问题

Posted cowboybusy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了css权重导致的样式不生效问题相关的知识,希望对你有一定的参考价值。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
    <title>Document</title>
    <script></script>
    <style>
        .flex-container 
            display: flex;
            color: white;
        
        
        .flex-container .flex-item 
            background-color: red;
            width: 100px;
        
        
        .sel 
            background-color: black;
        
    </style>

</head>


<body style="width: 100%">

    <div class="flex-container">
        <div class="flex-item sel">
            1
        </div>
        <div class="flex-item">
            2
        </div>
        <div class="flex-item">
            3
        </div>
    </div>

</body>

</html>

.sel不会生效,因为css先按权重排序,权重大的样式优先使用,权重一样的才按先后顺序

.flex-container .flex-item 有两个选择器,权重是两个相加,所以权重大

改成:

.flex-item
background-color: red;
width: 100px;
 
.sel
background-color: black;
 
或者:
.flex-container .flex-item
background-color: red;
width: 100px;
 
.flex-item.sel
background-color: black;
都可以使sel可以生效

 

以上是关于css权重导致的样式不生效问题的主要内容,如果未能解决你的问题,请参考以下文章

vue 全局css 路由刷新后不生效

css超过两行省略样式不生效

使用layui 自己单独写的css怎么不生效

animate.css不生效

ueditor编辑器中如何加样式,引入的css文件为啥不生效呢?

uniapp外部scss文件使用scss语法不生效