style prop
상태가 곧 스타일 값이 될 때
active, percent, colorMap처럼 JavaScript 값 하나가 곧 CSS 값으로 연결되는 경우에 읽기 쉽다.
코드 위치
const boxStyle = { backgroundColor: isActive ? blue : gray }
인라인 스타일은 컴포넌트 안에서 계산되는 작은 값에 붙이고, CSS 클래스는 선택자와 재사용 규칙이 필요한 화면 스타일을 맡긴다.
active, percent, colorMap처럼 JavaScript 값 하나가 곧 CSS 값으로 연결되는 경우에 읽기 쉽다.
const boxStyle = { backgroundColor: isActive ? blue : gray }
hover, media query, transition, 여러 컴포넌트가 공유하는 레이아웃은 CSS 파일에 두는 편이 안정적이다.
<button className={isActive ? "btn active" : "btn"}>
props와 state에서 바로 계산되면 인라인 후보가 된다.
hover나 반응형 조건은 CSS 클래스가 더 자연스럽다.
같은 패턴이 두 번 이상 나오면 이름 있는 클래스로 옮긴다.
클래스 이름 충돌이 보이면 CSS 모듈로 경계를 좁힌다.