https://webplatform.news/issues/2017-10-03
https://output.jsbin.com/netopay/quiet
https://thinkforthink.tistory.com/364
grid를 이용해 두개의 컬럼을 1fr씩 나누고
하나의 컬럼에 가로로 길게 나열될 리스트들을 그 1fr크기 안에서 overflow scroll 할 생각이였다.
그런데 overflow:scroll이 안먹고 가로로 쫙 나열되면서 1fr의 크기가 무시되고 같이 늘어났다.
<div class="grid-container">
<div class="left"></div>
<div class="right">
<ul>
<li class="item">1</li>
<li class="item">2</li>
<li class="item">3</li>
<li class="item">4</li>
<li class="item">5</li>
<li class="item">6</li>
<li class="item">7</li>
<li class="item">8</li>
<li class="item">9</li>
<li class="item">10</li>
<li class="item">11</li>
</ul>
</div>
</div>
.grid-container {
display: grid;
grid-template-columns: 1fr 1fr;
}
.left {
background-color: tomato;
}
.right {
background-color: blue;
/* overflow-x: auto; */
/* 해결 : 1fr의 길이를 고정시켜주게 됨 */
}
ul {
display: flex;
width: 100%;
}
.item {
width: 50px;
height: 50px;
background-color: yellowgreen;
}
1fr이 늘어나지 않기위해 그리드 item(.right)에 overflow-x: auto
를 넣어 길이를 1fr로 확정시켜준다.
→ 그럼 그리드 컨테이너에 스크롤이 생긴다.
1fr이 늘어나지 않기위해 그리드 item(.right)에 overflow-x: auto
를 넣고, 그 안에 있는 코드블록에 overflow-x: scroll
를 넣으면
→ 그럼 해당 코드블록에 스크롤이 생긴다.
item의 내용이 이미지라면 그 이미지의 width에 max-width: 100%
를 넣은다.
→ 이미지 사이즈가 컨테이너에 맞게 줄어든다.