Sass/Less에서 calc() 사용하기
css3 width속성 중 calc()
이라는유용한 단위 값이 있다.
이것은 너비에 대해 계산 된 값을 허용하는 방법인데, 보통은 아래와 같이 작성한다.
width: calc(100% - 10px);
그런데 Sass/Less로 위와 같이 작성하면 제대로 나오지 않는다. 둘 다 다른 방식으로 작성해야 한다.
Sass
@mixin calc($property, $expression) {
#{$property}: -moz-calc(#{expression});
#{$property}: -webkit-calc(#{expression});
#{$property}: calc(#{expression});
}
article {
@include calc(width, '100% - 10px')
}
만약 gulp에서 autoprefixer를 설정했다면 위의 두 줄은 생략해도 된다.
Less
width: ~"calc(100% - 10px)";
로 적어주거나
@article-width: 10px;
aritcle {
width: -webkit-calc(~"100% -" @article-width);
width: -moz-calc(~"100% -" @article-width);
width: calc(~"100% -" @article-width);
}
변수를 선언해서 사용해도 된다.