본문 바로가기

개발/HTML | CSS

[code school] sass

그 동안 잘 활용 안 했던 것만 정리



scss에서 주석처리

//      --> css로 변환시 안 보임

/**/   --> 보임


-----------

.scss

.sidebar {

.users & {

}

}


.css

.sidebar {}

.users .sidebar {}

-------------

3, 4lv로 내려가지 말것



변수 선언

$a: 5px;

$a: 10px !default! ;


a는 5px임


button.scss에는

$a: 10px !default; 일때


import.scss에서

$a: 5px;

@import "button"; 이런식으로 활용


@mixin a( $radius, $x: border-box) { arg가 안 넘어오면 border-box로 세팅, 디폴트값있는게 뒤로 와야함

}


매개변수 값에 커마가 들어가는 경우 @mixin a($val...) 으로 받아주면 된다.  //dot 세개


@mixin highlight($color, $side) {

border-#{$side}-color: $color;

}


@include highlight(#fff, right);


.btn-a {}

.btn-b {@extend .btn-a;}


.side .btn-a {} 가 추가될 경우,,

extend 때문에 css로 컴파일되면

.sidebar .btn-a, .sidebar .btn-b {} 가 됨..


--> 완전 공통인거만 btn 으로 빼서 .btn-a와 .btn-b에 extend 해주자

%btn { 공통 프로퍼티들 }

.btn-a { @extend %btn; }




@function fluidize($target, $context) {

@return ($target / $context) * 100%;

}

.sidebar { width : fluidize(350px, 1000px); }


== != > >= < <=

header {

@if $them == dark {내용} @else if {} @else {}

}


$index: 1 2 3 4;

@each $number in $index {

.homeimg-#{@number} {backgound: url(homeimg-#($number));}

}


.item {

@for $i from 1 through 3 {

&.item-#{$i} {

top: $i * 30px;

}

}

}

또는 $i: 1; 정의 후, @white $i < 4 {&.item-#{$i} { top: $i * 30px;} $i: $i+1;}


@mixin utton($color, $rounded: false) {@if $rounded { border-radius: $rounded}}



내장함수 

percentage

rgba( #fffff, 0.8);

lighten(#fff, 20%);

darken





미디어쿼리

@mixin respond-to ($val, $query) {

@media ($val: $query) { @content}}


.side {  @include responnd-to(max-width, 900px) {} }

'개발 > HTML | CSS' 카테고리의 다른 글

flex  (0) 2017.03.26
[SVG] codeschool: You, Me & SVG  (0) 2016.11.12
svg vs canvas  (0) 2016.08.02
IE rgba: background에 opacity 적용  (0) 2015.06.20
IE7 이하 li disply: inline-block  (0) 2015.06.20