`grid-template-columns: repeat(auto-fit, minmax(140px, 1fr))`은 auto-fit·auto-fit-vs-fill 항목에서 설명한 메커니즘의 가장 흔한 실전 적용입니다. `minmax(140px, 1fr)`은 "각 카드는 최소 140px, 남는 공간은 균등하게 나눠 가져라"는 뜻이고, `auto-fit`은 화면이 넓어지면 카드가 더 많이 들어갈 자리를 스스로 계산해 열 수를 늘립니다 — 미디어 쿼리에 "이 폭에서는 3열, 저 폭에서는 4열" 같은 걸 손으로 정의할 필요가 없습니다.
`minmax`의 최솟값이 카드 그리드 디자인의 실제 손잡이입니다. 최솟값을 키우면(예: 220px) 같은 화면 폭에서 열이 적게 잡히고 카드가 커지며, 줄이면(예: 100px) 더 많은 열이 촘촘하게 들어갑니다. 최댓값을 `1fr` 대신 고정 px로 주면 카드가 무한정 넓어지지 않도록 상한을 걸 수도 있습니다.
이 패턴의 한계는 "카드 높이"까지는 맞춰주지 않는다는 것입니다 — 같은 행의 카드들은 기본적으로 `align-items: stretch`(그리드 기본값) 덕분에 높이가 맞춰지지만, 내용 길이가 카드마다 다르면 여전히 부자연스러워 보일 수 있습니다. 그럴 땐 카드 내부에 `line-clamp`로 텍스트 줄 수를 맞추거나, 정말 높이가 들쭉날쭉해야 한다면 메이슨리로 바꾸는 게 낫습니다.
언제 쓰나
블로그 글 목록, 상품 목록, 팀원 소개처럼 개수가 가변적이고 카드 크기가 대체로 균일한 콘텐츠의 사실상 기본값입니다.