cari

Rumah  >  Soal Jawab  >  teks badan

Berbilang kelas pada elemen induk yang sama tidak berfungsi apabila digunakan serentak: BEM

Saya mempunyai dua kelas pada tajuk: .header-container 和一个主题类,例如 solid-greensolid-blue.

Penanda semasa berfungsi dengan baik dalam menggunakan gaya tema yang berkaitan, tetapi saya mahu menggunakan BEM, jadi semua CSS harus dibungkus dalam kelas header-container:

.header-container {
  // all component styles
}

.top-banner {
  height: 70px;
}

.main-banner {
  height: 140px;
}

.solid-green {
  .top-banner {
    background-color: green;
  }
  
  .main-banner {
    background-color: lightgreen;
  }
}

.solid-blue {
  .top-banner {
    background-color: blue;
  }
  
  .main-banner {
    background-color: lightblue;
  }
}
<header class="header-container solid-green">
  <div class="top-banner">Top banner</div>
  <div class="main-banner">Main banner</div>
</header>

Namun, apabila saya membungkus CSS dengan kelas header-container, kelas tema tidak lagi berfungsi. Bolehkah sesiapa memberitahu saya di mana silap saya?

P粉208469050P粉208469050431 hari yang lalu579

membalas semua(1)saya akan balas

  • P粉510127741

    P粉5101277412023-09-11 16:55:45

    .header-container {
      .top-banner {
        height: 70px;
      }
      
      .main-banner {
        height: 140px;
      }
    
      &.solid-green {
        .top-banner {
          background-color: green;
        }
        
        .main-banner {
          background-color: lightgreen;
        }
      }
      
      &.solid-blue {
        .top-banner {
          background-color: blue;
        }
        
        .main-banner {
          background-color: lightblue;
        }
      }
    }

    balas
    0
  • Batalbalas