Sass에서 "variation classes"를 어떻게 처리합니까? 예 :변형/테마 클래스를위한 SASS의 버블 업 규칙
.bookshelf {
color: brown;
height: 100px;
.panel {
trimmed: no;
height: 10px;
}
.door {
height: 100px;
.knob {
shape: circle;
height: 10px;
}
}
}
변형을 .bookshelf.small
으로 만들고 싶습니다. 믹스 인 (Mixin) 또는 데이터를 "버블 업 (bubble up)"하는 것을 사용하여 메인 엘리먼트 안에 변이 코드를 작성하는 방법이 있습니까?
.bookshelf {
color: brown;
height: 100px;
@include small-version {
height: 50px;
}
.panel {
trimmed: no;
height: 10px;
@include small-version {
height: 5px;
}
}
.door {
height: 100px;
@include small-version {
height: 50px;
}
.knob {
shape: circle;
height: 10px;
@include small-version {
height: 5px;
}
}
}
}
그리고 믹스 인의 출력이
.bookshelf.small {
height: 50px;
.panel {
height: 5px;
}
.door {
height: 50px;
.knob {
height: 5px;
}
}
여러 가지가 될 것이다는 등 @에서 루트 기능과 @content 기능으로, 유망 보였지만, 어느 쪽이 시나리오 일 것입니다. @media 설정을 쓰면 거품이 생길 것입니다. 그러나 나는 이것을 미디어 쿼리에 묶기를 원하지 않는다. 특정 클래스에 묶어두기를 바란다. (.bookshelf도 클래스가 작고,이 규칙을 적용한다.)
하나이 있지만 그들을 CONCAT 할 수있는 방법을 찾을 수 있다면, 사용 및은 "변화"클래스 이름 뒤에하는 것입니다 해결 될 수있는 방법입니다. 따라서 테마 특정 규칙이 필요한 곳에'.small & {/ ** /}'라고 써야합니다. 그러나 그것들을 연결할 방법이 없다면 .small.bookshelf 대신 .small .bookshelf가 생성 될 것입니다. – Ayub