-
[TIL] Grid 사용이노베이션-실전플젝 2023. 8. 1. 14:10
- Fact (사실: 무슨 일이 있었나?)
- Feeling (느낌: 무슨 느낌이 들었나?)
- Finding (배운 점: 어떤 인사이트를 얻었나?)
- Future action (향후 행동: 앞으로 무엇을 해야 할까?)
- Feedback (피드백: 앞서 정한 향후 행동을 실천해본 뒤, 이에 대해 어떤 피드백을 받았나?)
3. Finding
- CSS : Grid
- Flex와 비교해봤을 때, Grid로 화면을 구성하는 게 장점이 크다 판단, Gird를 통해 화면을 구성해보기로 했다
- Grid의 장점
1) 2차원임
: Flex는 1차원적으로 구성되지만, Grid를 사용하면 2차원적으로 사용할 수 있음
2) gap 주기가 좋음, 즉 간격설정하기가 좋음
: 직접 사용해보며 느낀 건데, flex와 달리 행열사이에 모두 gap을 균일하게 줄 수 있다는 점이 좋았음 flex에서는 margin으로 해야했을 일인데
3) 반응형 웹 만들기 좋음
- 그리고 flex랑 걍 합쳐서 쓰면 됨. 그니까 화면 배치와 구성하는데 최적화되었다는 말임
- 사용방법: 아래 사이트 참고함
https://studiomeal.com/archives/533
이번에야말로 CSS Grid를 익혀보자
이 포스트에는 실제 코드가 적용된 부분들이 있으므로, 해당 기능을 잘 지원하는 최신 웹 브라우저로 보시는게 좋습니다. (대충 인터넷 익스플로러로만 안보면 된다는 이야기) 이 튜토리얼은 “
studiomeal.com
- 직접 활용한 내용
<GridBox $gtc="repeat(auto-fill, minmax(25%, auto))" $gar="minmax(200px, auto)"> <GridMergedSpaceFlex $mergedgcs={2} $mergedgce={5} $mergedgrs={4} style={{ backgroundColor: "red" }}>나요 </GridMergedSpaceFlex> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> <FlexBox style={{ backgroundColor: "lightcoral" }}>아</FlexBox> </GridBox>
styled로 정의해놓은 것들을 사용함. 아래와 같이
const GridMergedSpace = sc.styled.div<Partial<Styled>>` grid-column-start: ${({$mergedgcs}) => $mergedgcs ? $mergedgcs : "auto"}; grid-column-end: ${({$mergedgce}) => $mergedgce ? $mergedgce : "auto"}; // span 2; grid-row-start: ${({$mergedgrs}) => $mergedgrs ? $mergedgrs : "auto"}; grid-row-end: ${({$mergedgre}) => $mergedgre ? $mergedgre : "auto"}; // span 3; `
- 연습한 영상
이런 식으로, 위치만 잘 지정해주면 얘가 알아서 휙휙 자리를 바꾼다 똑똑함;;
'이노베이션-실전플젝' 카테고리의 다른 글
[TIL] React Develop Tools 사용 (0) 2023.08.18 [TIL] Ts : setState의 타입은 뭘까? (0) 2023.08.16 [TIL] useNavigate , replace : 브라우저 히스토리 제거 (0) 2023.08.16 [TIL] 함수 커링, hook, Blob 및 회고 (0) 2023.08.01