2012-09-07 3 views
1

다른 클래스를 생성하는 SASS에서 함수를 만들고 싶습니다. 이Compass/SASS에서 함수 호출

@function test($class-name) { 
    @for $i from 1 through $tot-class { 
     .#{$class-name}-#{$i} { 
      //some rules 
     } 
    } 
} 

같은 뭔가하지만 난이 함수를 호출하는 방법을 알아낼 수 없습니다. 내가

@test(red); 

또는

test(red); 

으로 시도했지만 작동하지 않는 것 같습니다. 올바른 방법은 무엇입니까?

+0

내가 오류 "를 @Test"후 잘못된 CSS입니다 또는 at-rule은 "("빨간색 ")," –

답변

4

여기서 중요한 문제는 function을 실제로 사용하고 싶지 않다는 것입니다. mixin을 원합니다. 차이점은 함수가 CSS 규칙을 포함하지 않는다는 것입니다. 단순히 값을 반환하기 만하면됩니다 (변수에 할당하거나 CSS 속성 선언에 사용할 수 있음). 한편, Mixins은 반환 값이 없으며 mixin이 SASS 문서에 포함될 때 추가되는 CSS 규칙을 포함 할 수 있습니다. 사용하여 나중에 당신은 믹스 인을 포함 다음 줄

@mixin test($class-name) { 
    @for $i from 1 through $tot-class { 
     .#{$class-name}-#{$i} { 
      //some rules 
     } 
    } 
} 

: 여기에 귀하의 예는 믹스 인으로 같을 것이다 무엇을 기대 선택 :

@include test(red); 
+0

그것은 작동합니다! 감사. –