selectors, selectors심화 시험에 잘나옴.
bootstrap 문제가 대다수
grid 시스템 , 카드 배치
rgba => a : 투명도
display : none 과 visibility : hidden 의 차이
visibility : 자리는 차지하고 있지만 보이지 않음
display : none : 자리도 차지하고 있지 않음
padding : 컨텐츠와 border 사이의 간격
margin : 간격
box-sizing 은 기본 default 가 content-box
따라서 box-sizing 을 border-box로 하면 padding이 바껴도 크기는 똑같음
margin : 0 auto => 박스 가운데 정렬
수평정렬
text - align : center
수직 정렬
line - height : height
화면 위에서 뜨게 된다. (ex) 신문기사 )
모든 요소에 부여를 할 수 있다,
/* Clearing이 필수적 */
.clearfix::after{
content : "";
display : block;
/* 양 옆에 클리어링 */
clear: both;
}
/* Clearing이 필수적 */
.float된 부모클래스::after{
content : "";
display : block;
/* 양 옆에 클리어링 */
clear: both;
}
영역 내부 안에서 박스들을 배치할 수 있게 됨.
행과 열 형태로 아이템들을 배치하는 1차원 레이아웃 모델
축
구성요소
Flex 박스 사용 이유?
ex) row : 왼쪽에서 오른쪽 column : 아래방향
flex - start -> 컨테이너를 왼쪽에서 부터 오른쪽으로 이동, 남은 영역은 채움 : 아이템을 axis 시작점으로
flex - end -> 남은 영역을 먼저 채운 뒤, 컨테이너를 채운다. : 아이템을 axis 끝쪽으로
center -> 가운데 컨테이너를 두고, 양옆에 남은 영역을 채울 수 있다. : 아이템들을 axis 중앙으로
space - around 와 space - evenly의 차이점
아이템을 둘러싼 영역을 균일하게 분배 (반반 나눠서)
전체 영역에서 아이템 간 간격을 균일하게 분배
div > p
div의 자식요소로 p태그를 만든다.
div.box > div * 3 #hello
box라는 클래스로 div 클래스를 만든뒤 클래스가 hello인 div 태그를 3개 만든다.
- `>` 태그를 만들고 들여쓰기
- `*n` 반복
- `+` 줄바꿈 + 다음 태그 추가
- `.` class 지정
- `#` id 지정
- `{content}` 내용 입력
.mt-1 ?
-> margin - top : 0.25rem !important
m-2 -> 0.5rem (8px) m3 -> 1rem(16px)
.mx-0 ?
-> margin - right : 0
margin - left : 0
.mx -auto => 수평 중앙 정렬
py-0
-> padding - top: 0
padding - bottom : 0
요소들의 디자인과 배치에 도움을 주는 시스템
기본요소
container , row ,column으로 컨텐츠를 배치하고 정렬
반드기 기억
12개의 column
12개로 이루어진 이유? 약수가 많기 때문
12개를 넘어가면 ? 넘쳐서 다음행에 붙게 된다.
Container
- row ( 행 )
- col - " [breakpoint] " - "[숫자]"
sm
md
lg