SASS Mixin 값이 CSS 속성이 될 수 있나요?
문제:
범용 여백 만들기 /padding mixin, 잘못된 코드 구조로 인해 실패했습니다:
[class*="shift"] { $sft-o: 10px; @mixin shift_stp($val) { &[class*="_sml"]{ $val: $sft-o; } &[class*="_mid"]{ $val: $sft-o * 2; } &[class*="_big"]{ $val: $sft-o * 3; } } &[class*="_m"]{ @include shift_stp(margin); } &[class*="_p"]{ @include shift_stp(padding); } }
해결책:
mixin 값에서 변수를 CSS 속성 이름으로 사용하려면 , 문자열 보간이 필요하며 #{$var} 구문을 사용하여 수행됩니다.
[class*="shift"] { $sft-o: 10px; @mixin shift_stp($val) { &[class*="_sml"]{ #{$val}: $sft-o; } &[class*="_mid"]{ #{$val}: $sft-o * 2; } &[class*="_big"]{ #{$val}: $sft-o * 3; } } &[class*="_m"]{ @include shift_stp(margin); } &[class*="_p"]{ @include shift_stp(padding); } }
참고: 속성 선택기 구조를 다시 평가하여 선택기 특정성을 확인하세요.
위 내용은 SASS 믹스인 값이 동적 CSS 속성이 될 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!