티스토리 뷰
그리드를 잡다 보면 margin을 통해 각 컨텐츠 간의 간격을 조절하는 경우가 많음
위아래 값을 줘야 해 처음엔 margin-bottom으로 조절했는데 맨 마지막 행에서는 margin-bottom이 필요하지 않고, 마지막 행에서 컨텐츠의 개수가 유동적으로 바뀌므로 margin-top이 더 적합함
방법은 두 가지가 있는데
① 레이아웃을 감싼 wrap에 마진 마이너스를 줘서 상쇄시킴
② 계산해서 마진이 없어지도록 함
두 번째 방법을 PC 4열, TB 2열, MB 1열로 가정하면 다음과 같다
PC ver
li {width: calc((100% - 61px)/4); margin-left: 20px; margin-top: 20px;}
li:nth-child(4n+1) {margin-left: 0;}
li:nth-child(-n+4) {margin-top: 0;}
-> PC 버전에서는 4개니까 4개의 맨 윗줄에서 margin-top을 0으로
TB ver
li:nth-child(4n+1) {margin-left: 20px;}
li:nth-child(-n+4) {margin-top: 20px;}
li:nth-child(2n+1) {margin-left: 0;}
li:nth-child(-n+2) {margin-top: 0;}
-> TB에서는 2개이므로 PC에서 4개로 잡았던 것들 풀어주고 2로 다시 잡음
MB ver
li {float: none; width: 100%; height: auto; margin-left: 0;}
li:nth-child(2n+1) {margin-left: 0;}
li:nth-child(-n+2) {margin-top: 20px;}
li:first-child {margin-top: 0;}
-> MB에서는 1개이므로 2개로 잡았던 것들 중 left는 없애주고 top만 살린 뒤 맨 첫 번째에서만 top 삭제
'WebPublisher' 카테고리의 다른 글
[javaScript] 제이쿼리 없이 자바스크립트 top 버튼 만들기 (0) | 2021.02.20 |
---|---|
[iOS] 아이폰에서 버벅거리는 CSS animation 오류 잡기 (0) | 2021.02.20 |
[frameset] 프레임셋으로 감싼 홈페이지 (+iOS 모바일 모멘텀 스크롤 오류) (0) | 2021.02.07 |
[카카오맵] 카카오지도 반응형으로 삽입하기 (0) | 2021.01.31 |
[웹폰트-나눔스퀘어] 웹에서 깨지는 현상 (0) | 2021.01.31 |