갈푸라떼
갈푸라떼는 개발중
갈푸라떼
전체 방문자
오늘
어제
  • 분류 전체보기 (232)
    • CS (0)
      • CSinfo (0)
    • Frontend (15)
      • HTML,CSS (1)
      • Javascript (2)
      • React (0)
      • React Hook (12)
    • Backend (0)
      • Python (0)
      • Node.js (0)
      • php (0)
    • DB (2)
      • MySQL (2)
      • BigQuery (0)
      • Mongodb (0)
    • Study (186)
      • JavaScript (72)
      • JavaScript(Clean code) (50)
      • Node.js (11)
      • HTML,CSS (13)
      • React (30)
      • TypeScript (10)
      • React-Native (0)
    • Error (2)
      • error (2)
    • Git (22)
      • Git (22)
    • Help Coding (4)
      • Useful websites (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • Github

공지사항

인기 글

태그

  • symbol
  • nodemon
  • ECMAScript
  • 심볼
  • 오버라이딩
  • this
  • 객체타입
  • 스코프 체인
  • 인터프리터
  • Arrow
  • SPREAD
  • 정적 레벨
  • structure
  • 호이스팅
  • 함수
  • class
  • 상속
  • Babel
  • 네이밍
  • 프로토타입
  • function
  • prototype
  • 이터러블
  • 싱글스레드
  • 원시타입
  • 자바스크립트엔진
  • 렉시컬 환경
  • 컴파일러
  • PM2
  • 실행 컨텍스트

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
갈푸라떼

갈푸라떼는 개발중

Study/HTML,CSS

[CSS_study] display : grid_4 grid-template & fr (fraction)

2022. 5. 17. 02:27

* fr(fraction)

  • fr(fraction)은 사용 가능한 공간을 의미한다.
  • 즉 기본적으로 grid에서 가질 수 있는 만큼의 공간을 차지한다.
  • fr값은 비율로 공간을 나눈다. ex) grid의 width가 작아지면 1fr의 값도 작아진다.
  • 따라서 화면 크기가 변해도 비율은 그대로이다.
  • 모바일에서도 호환되는 유연한 layout을 만들 수 있다.

 

* fr은 전역으로 결정되는 것이 아닌 grid container에서 결정된다.
따라서 fr을 쓰기 위해서는 grid container에 height을 명시해야 한다.


block은 width와 height가 주어져 있지 않은 경우에는 width는 가능한 한 최댓값, height은 0이다.
따라서 fr을 쓰려면 grid container에 height만 써도 동작하지만, width만 쓰면 동작하지 않는 이유가 이것이다.

 

* grid-template 사용방법

"(grid-area name)" (row높이)
"(grid-area name)" (row높이)
"(grid-area name)" (row높이)/ (각 column의 너비);

 

(참고) grid-template에서 repeat는 적용되지 않는다.

 

* gird-template 예시 코드

.grid {
  display: grid;
  gap: 5px;
  height: 50vh;
  grid-template:
    "header header header header" 1fr
    "content content content nav" 2fr
    "footer footer footer footer" 1fr / 1fr 1fr 1fr 1fr;
}

.header {
  background-color: #2ecc71;
  grid-area: header;
}
.content {
  background-color: #3498db;
  grid-area: content;
}
.nav {
  background-color: #8e44ad;
  grid-area: nav;
}
.footer {
  background-color: #f39c12;
  grid-area: footer;
}

 

* naming 사용도 가능하다.

.grid {
  display: grid;
  gap: 5px;
  height: 50vh;
  grid-template:
    [header-start] "header header header header" 1fr [header-end]
    [content-start] "content content content nav" 2fr [content-end]
    [footer-start] "footer footer footer footer" 1fr [footer-end] / 1fr 1fr 1fr 1fr;
}

.header {
  background-color: #2ecc71;
  grid-area: header;
}
.content {
  background-color: #3498db;
  grid-area: content;
}
.nav {
  background-color: #8e44ad;
  grid-area: nav;
}
.footer {
  background-color: #f39c12;
  grid-area: footer;
}

'Study > HTML,CSS' 카테고리의 다른 글

[CSS_study] display : grid_6 place-self & auto columns and rows  (0) 2022.05.17
[CSS_study] display : grid_5 place-items & place-content  (0) 2022.05.17
[CSS_study] display : grid_3 (Line Naming)  (0) 2022.05.14
[CSS_study] display : grid_2 (grid-column)  (0) 2022.05.14
[CSS_study] display : grid  (0) 2022.05.13
    'Study/HTML,CSS' 카테고리의 다른 글
    • [CSS_study] display : grid_6 place-self & auto columns and rows
    • [CSS_study] display : grid_5 place-items & place-content
    • [CSS_study] display : grid_3 (Line Naming)
    • [CSS_study] display : grid_2 (grid-column)
    갈푸라떼
    갈푸라떼

    티스토리툴바