[React] 다크 모드가 어디서 설정되는지 모르겠을때
2023. 7. 17. 21:55ㆍReact
분명 index.html, js 파일을 샅샅이 뒤져봐도 다크모드가 될 만한 요소가 없을 때
답은 tailwind.css에 있었다. 밑의 prefers-color-scheme: dark 이 녀석 때문에 저녁만 되면 자동으로 dark 모드가 되었던 것이다.
이 친구를 제거해주니 dark 모드가 적용이 안되었다.
반대로 다크모드를 시간에 따라 자동으로 변경되도록 하고 싶다면 이 요소를 추가하면 되겠다.
@media (prefers-color-scheme: dark) {
.dark\:border-white\/20 {
border-color: rgb(255 255 255 / 0.2);
}
.dark\:bg-gray-800 {
--tw-bg-opacity: 1;
background-color: rgb(31 41 55 / var(--tw-bg-opacity));
}
.dark\:bg-white\/5 {
background-color: rgb(255 255 255 / 0.05);
}
.dark\:text-gray-100 {
--tw-text-opacity: 1;
color: rgb(243 244 246 / var(--tw-text-opacity));
}
.dark\:text-white {
--tw-text-opacity: 1;
color: rgb(255 255 255 / var(--tw-text-opacity));
}
.dark\:hover\:bg-gray-700:hover {
--tw-bg-opacity: 1;
background-color: rgb(55 65 81 / var(--tw-bg-opacity));
}
.dark\:hover\:bg-gray-900:hover {
--tw-bg-opacity: 1;
background-color: rgb(17 24 39 / var(--tw-bg-opacity));
}
}
추가) css 파일에서 지우면 rebuilding이 되면 좀비같이 다시 태어날 거다. 이를 막기 위해서 tailwind.config.js에서 다음과 같이 설정해주면 된다.
module.exports = {
darkMode: 'class',
// ...
}
기존에는 'media'로 되어 있는 걸 'class'로 바꾸게 되면 수동적으로 바꿀 수 있게 된다. 즉 자동으로 안바뀐다.
'React' 카테고리의 다른 글
[React] axios 요청을 성공할 때까지 보내야 할 때 (0) | 2023.07.22 |
---|---|
[React] Error: ENOSPC: System limit for number of file watchers reached (watchers 에러 뜰때) (0) | 2023.07.22 |
[React] response할 때 주의사항 (0) | 2023.07.21 |
[React] 환경 세팅 (0) | 2023.07.20 |
[React] 페이지 간 이동 (0) | 2023.07.19 |