Programming > CSS

[css] 변수사용하기 (var)

선언 및 사용

선언

--myval-color: red;

변수 사용하기

color: var(--myval-color);

변수가 선언되어 있지 않았을 경우를 대비해 디폴트값을 지정가능하다.

var(--name, value);

※ 선언이 안되어 있을경우, 대체값을 설정
color: var(--myval-color,  yellow);

※ 여러 대체값을 설정가능하다 
color: var(--myval-background,  var(--myval-border-color, cyan));

변수범위 설정

전역변수 ( :root )

:root { --blue: #0000FF; }

지역변수 설정 또는 재정의

.div1 {
    --blue: #1111FF;   // 설정 또는 재정의된다.
    background: var(--blue); 
}

javascript 에서 변수 취득 및 변경

var r = document.querySelector(":root"); // 전역
    
var rs = getComputedStyle(r);
var color = rs.getPropertyValue("--blue");    // 값취득
r.style.setProperty("--blue","red");    // 전역값변경

미디어별 값을 유동적으로 사용하기

    Media Queries (미디어마다 해당 셀렉터내 변수를 재정의한다.)
    .container{ --fontSize: 25px; }
    
    .container { font-size: var(--fontSize); }
    
    @media screen and (min-width: 450px) {
      .container {
        --fontsize: 50px;
      }
    }