스크롤바 때문에 화면이 밀려요
nabongsun.shop css패치를 하는김에 버그? 도 발견한것 같다. 바로 스크롤바가 생기면, 스크롤바의 width떄문에 App 크기가 작아져 화면이 밀려보였다.
여러가지 방법을 찾아보다가 한곳에 정리해두면 좋을것 같았다.
해결책
1. display:none
해결책중에 하나는 그냥 모든경우에 안보이게 하는방법이다.
// global.css
/* 크롬, 사파리, 오페라 스크롤바 옵션 */
::-webkit-scrollbar {
display: none;
}
body {
/* 익스플로러 스크롤바 옵션 */
-ms-overflow-style: none;
/* 파이어폭스 스크롤바 옵션 */
scrollbar-width: none;
...
}
출처: [트러블슈팅] 스크롤바 width 때문에, 왼쪽으로 밀리는 이슈
이러면 되긴하는데, 그래도 PC에서는 스크롤바가 있는게 좋아보여서 다른방법을 찾아보았다
2. overflow-y: scroll
이번엔 모든경우에 보이게 하는방법이다.
ㅋㅋㅋㅋㅋㅋ
// global.css
body {
...
overflow-y: scroll;
}
overflow-y 는 y축방향으로 오버플로우가 발생했을때 어떻게 해결할건지 설정하는 것인데,
이걸 scroll로 하게되면 스크롤로 해결하게하고, 그냥 스크롤바가 계속 보인다.
이제 스크롤바를 커스텀하면 될것 같다.
nabongsun.shop의 스크롤바
//global.css
/* 스크롤바 설정*/
::-webkit-scrollbar {
width: 8px;
}
/* 스크롤바 막대 설정*/
::-webkit-scrollbar-thumb {
background: #393c42;
}
/* 스크롤바 뒷 배경 설정*/
::-webkit-scrollbar-track {
background-color: rgb(209, 241, 156);
}
aloa블랙(#393c42)과 aloa그린(#d1f19c)을 사용하였다.
안타깝게도 테마색은 App에 있어서 body에 먹히는 스크롤에적용을 못했다.
나중에 nextJS에서 테마를 App바깥에 먹일 수 있는 방법을 한번 찾아봐야겠다.