als982001 2022. 12. 22. 20:40

CSS (Cascading Style Sheets)

CSS란 웹 페이지 스타일 및 레이아웃을 정의하는 스타일시트 언어

CSS 구조

CSS 파일 추가하기

여러 개의 class를 하나의 엘리먼트에 적용하기

 

클래스끼리 띄어쓰기로 구분한다

id와 클래스의 차이점

id: # 으로 선택, 한 문서에 단 하나의 요소만, 특정 요소에 이름을 붙임

class: . 으로 선택, 동일한 값을 가질 수 있음, 스타일 분류에 사용

color: 글자 색상 변경

font-family: 글꼴 변경

font-size: 글자 크기 변경

font-weight: 글자 굵기 변경

text-decoration: 밑줄, 가로즐 등 글자 꾸미기

letter-spacing: 자간 조정

line-height: 행간 조절

text-align: 글자 정렬 가능

 

크기의 단위

절대 단위: px, pt 등

상대 단위: %, em, rem, ch, vw, vh 등


px: 기기나 브라우저 사이즈 등, 환경에 영향을 받지 않는 절대적인 크기로 정하는 경우 사용

rem: 브라우저의 기본 글자 크기가 1rem. 사용자가 설정한 기본 글꼴 크기를 따르므로, 접근성에 유리

 

박스

block: 줄 바꿈이 일어남. 기본적으로 갖는 너비(width)는 100%, width, height 사용 가능

inline: 줄 바꿈이 일어나지 않음, 기본적으로 갖는 너비는 글자가 차지하는 만큼임. width, height 사용 불가능

inline-block: 줄 바꿈이 일어나지 않음, 기본저긍로 갖는 너비는 글자가 차지하는 만큼, width, height 사용 가능

 

박스를 구성하는 요소

border (테두리)

각 영역이 차지하는 크기를 파악하기 위해, 레이아웃을 만들면서 그 크기를 시각적으로 확인할 수 있게 함

border-width(테두리 두께), border-style(테두리 스타일), border-color(테두리 색상) 등

margin (바깥 여백)

margin: 10px 20px 30px 40px은 상, 우, 하, 좌 순으로 적용(시계 방향)

margin: 10px 20px 의 경우, 상하는 10px, 좌우는 20px 적용

margin: 10px 의 경우, 상하좌우 모두 10px 적용ㄴ

padding (안쪽 여백)

값의 순서에 따른 방향은 margin과 동일

border-box

 

모든 박스에서 여백과 테두리를 포함한 크기로 계산됨

전체 셀렉터

* { }

문서의 모든 요소를 선택

태그 셀렉터

h1 { } div { } section, h1 { }

같은 태그명을 가진 모든 요소 선택, 복수로도 선택 가능

ID 셀렉터

#only { }

#id이름 으로 선택 가능

class 셀렉터

.widget { }

.class이름 으로 입력하여 선택, 같은 class를 가진 모든 요소 선택

attribute 셀렉터

a[href] { }

같은 속성을 가진 요소 선택

자식 셀렉터

첫 번째로 입력한 요소의 바로 아래 자식 요소만 선택

후손 셀렉터

첫 번째로 입력한 요소의 모든 후손 선택

형제 셀렉터

같은 부모 요소를 공유하며 첫 번째로 입력한 요소 뒤에 오는 요소들 모두 선택

인접 형제 셀렉터

같은 부모 요소를 공유하며 첫 번째로 입력한 요소 바로 뒤에 오는 요소만 선택