CSS 속성 154개 사전
속성마다 무엇을 하는지, 자주 쓰는 값은 무엇인지, 자식에게 물려주는지를 한 줄로 정리했습니다.
배치11
요소를 어떤 상자로 다룰지, 넘칠 때 어떻게 할지 정하는 속성들입니다.
플렉스·그리드24
요소를 줄 세우고 격자에 앉히는 속성들입니다. 오늘날 배치는 대부분 이 둘로 합니다.
상자와 여백16
크기와 여백입니다. 바깥 여백은 겹쳐 합쳐지고, 안쪽 여백에는 배경색이 칠해집니다.
글자25
글꼴과 줄 간격, 정렬처럼 읽히는 모양을 정합니다. 대부분 자식에게 물려집니다.
색과 배경13
글자색과 배경색, 그러데이션과 투명도입니다.
테두리13
테두리와 모서리, 그림자입니다. outline은 자리를 차지하지 않습니다.
효과7
흐림·자르기·채우기처럼 다 그린 뒤에 거는 효과입니다.
변형과 움직임14
옮기고 돌리고 부드럽게 잇습니다. 배치를 건드리지 않아 화면이 덜 흔들립니다.
위치7
요소를 흐름에서 떼어 원하는 자리에 놓습니다. 앞뒤는 z-index로 정합니다.
표4
표의 테두리와 칸 너비를 다루는 속성들입니다.
목록4
목록 기호의 모양과 자리를 정합니다.
조작9
마우스와 손가락, 스크롤에 어떻게 반응할지 정합니다.
인쇄·기타7
인쇄와 자동 번호 매기기처럼 나머지 쓰임입니다.
읽는 방법
- 상속되는 속성은 부모에 한 번만 적으면 자식이 모두 물려받습니다. 글자에 관한 속성이 대부분 그렇습니다.
- 단축 속성은 적지 않은 값을 기본값으로 되돌립니다. background: red만 쓰면 앞서 넣은 배경 그림도 함께 지워집니다.
- 같은 요소에 규칙이 겹치면 더 구체적인 선택자가 이깁니다. 구체성이 같을 때만 나중에 적힌 것이 이깁니다.
- 움직임은 transform과 opacity로 만드는 편이 부드럽습니다. width나 top을 바꾸면 배치를 다시 계산해야 합니다.
자주 묻는 질문
Q. CSS 속성은 모두 몇 개인가요?
표준에 올라 있는 것만 500개가 넘지만, 실제로 손이 가는 것은 그중 일부입니다. 여기에는 화면을 만들 때 반복해서 쓰게 되는 154개를 갈래별로 실었습니다.
Q. 상속된다는 게 무슨 뜻인가요?
부모에 적으면 자식이 따로 적지 않아도 같은 값을 쓴다는 뜻입니다. 글꼴·글자색·줄 간격처럼 글에 관한 속성이 대부분 그렇고, 여백이나 테두리는 물려주지 않습니다.
Q. 단축 속성을 쓰면 뭐가 달라지나요?
한 줄로 여러 값을 정할 수 있지만, 적지 않은 값은 기본값으로 되돌아갑니다. background: red만 쓰면 앞서 넣은 배경 그림이 함께 지워지는 것이 그 때문입니다.
Q. 같은 속성을 두 번 적으면 어느 쪽이 이기나요?
선택자가 얼마나 구체적인지를 먼저 봅니다. id가 class보다, class가 태그보다 셉니다. 구체성이 같을 때만 나중에 적힌 것이 이깁니다. !important는 그 판을 뒤집지만 쓰지 않는 편이 낫습니다.
Q. px과 rem 중 무엇을 써야 하나요?
rem은 뿌리 글자 크기의 배수라, 사용자가 브라우저에서 글자를 키우면 함께 커집니다. 글자와 여백에는 rem이 안전하고, 얇은 테두리처럼 늘 같아야 하는 값에는 px이 낫습니다.