Sass 的 & 符號(ampersands)

重複聲明

有時您須要擊敗第三方 CSS 庫的聲明來獲取樣式的全部權:css

.parent.parent {}

這種方式比使用和 ID,內聯樣式或!important的壓倒性弱,而且它可能比使用任意父元素限定選擇器有好處。 聲明的權重不是基於選擇器的上下文引起的,而是僅由其自身引起。 使用你能夠作一樣的事情。web

.parent {
  &#{&} { }
}

這裏須要用 插值括號#{},由於兩個相鄰的&符號在 Sass 中是無效的。sass

注:#{&}會表示整個路徑,上面的方法沒法用在嵌套的結構裏code

.parent1 {
  .parent2 { 
    &#{&} {
      font-size: 12px;
    }
  }
}

// 結果
.parent1 .parent2.parent1 .parent2 {
    font-size: 12px;
}

參見

The Sass Ampersand | CSS-Tricksget

相關文章
相關標籤/搜索