как наследовать кратный класс через sass

#sass

#sass

Вопрос:

 I have a scenario in sass
.A{
    background-color: red;
    Padding :20px;

    h4{ padding-bottom :20px;}
}
// another class

.B{ 
    background-color : blue; 
    padding : 20px

    h4{ padding-bottom:20px}

}
  

Вопрос: как я могу объединить padding и h4 вместе в SASS, не повторяя свойства padding и h4

Комментарии:

1. padding: 20px включает padding-bottom: 20px . h4 Объявление является избыточным.

Ответ №1:

Самый простой способ — использовать @extend .

 %common_properties {
    padding: 20px;

    h4 {
        padding-bottom: 20px;
    }
}

.a {
    @extend %common_properties; 
    background-color: red;
}

.b { 
    @extend %common_properties; 
    background-color: blue; 
}
  

Ответ №2:

Вы действительно не экономите много, используя sass / scss для такой небольшой избыточности

Решение с помощью scss:

   .a, .b {
    padding: 20px;
    background-color: red;
    amp; h4 {
      padding-bottom: 20px;
    }
  }
  .b{
    background-color:blue;
  }
  

Это решение в простом css:

   .a, .b {
    padding: 20px;
    background-color: red;
  }
  .a h4, .b h4 {
    padding-bottom: 20px;
  }
  .b {
    background-color: blue;
  }
  

Вот как это будет выглядеть:
http://codepen.io/cawoelk/pen/Ciqyw