天天看點

Sass @extend 與 繼承

@extend 指令告訴 Sass 一個選擇器的樣式從另一選擇器繼承。

如果一個樣式與另外一個樣式幾乎相同,隻有少量的差別,則使用 @extend 就顯得很有用。

以下 Sass 執行個體中,我們建立了一個基本的按鈕樣式 .button-basic,接着我們定義了兩個按鈕樣式 .button-report 與 .button-submit,它們都繼承了 .button-basic ,它們主要差別在于背景顔色與字型顔色,其他的樣式都是一樣的。

.button-basic  {

  border: none;

  padding: 15px 30px;

  text-align: center;

  font-size: 16px;

  cursor: pointer;

}

.button-report  {

  @extend .button-basic;

  background-color: red;

.button-submit  {

  background-color: green;

  color: white;

将以上代碼轉換為 CSS 代碼,如下所示:

.button-basic, .button-report, .button-submit {

使用 @extend 後,我們在 HTML 按鈕标簽中就不需要指定多個類 class="button-basic button-report" ,隻需要設定 class="button-report" 類就好了。

@extend 很好的展現了代碼的複用。