다크모드가 필요한 이유
- 눈의 피로 감소 : 어두운 화면은 장시간 사용 시, 밝은화면에 비해 눈이 덜 피곤함
- 배터리 절약 : OLED 디스플레이에서는 검은색 픽셀이 전력 소모를 줄임
- 개인화된 사용자 경험 제공
다크모드 적용 방법
1️⃣ CSS 변수 (Custom Properties) 활용
CSS 변수를 사용하면 테마 변경이 매우 간단해집니다.
:root {
--bg-color: #ffffff;
--text-color: #333333;
}
.dark-mode {
--bg-color: #222222;
--text-color: #ffffff;
}
body {
background-color: var(--bg-color);
color: var(--text-color);
transition: background-color 0.3s, color 0.3s;
}
2️⃣ JavaScript로 다크모드 토글 기능 구현
const toggleButton = document.querySelector("#darkModeToggle");
toggleButton.addEventListener("click", () => {
document.body.classList.toggle("dark-mode");
// 사용자 설정을 localStorage에 저장
if (document.body.classList.contains("dark-mode")) {
localStorage.setItem("theme", "dark");
} else {
localStorage.setItem("theme", "light");
}
});
// 페이지 로드 시 저장된 테마 적용
window.onload = () => {
if (localStorage.getItem("theme") === "dark") {
document.body.classList.add("dark-mode");
}
};
3️⃣ HTML 버튼 추가
<button id="darkModeToggle">🌙 다크모드 전환</button>
4️⃣ 사용자의 시스템 설정에 따라 자동 적용
CSS prefers-color-scheme 를 활용하면 사용자의 운영체제에 따라 다크모드 설정을 반영할 수 있습니다.
@media (prefers-color-scheme: dark) {
:root {
--bg-color: #222222;
--text-color: #ffffff;
}
}
이렇게 간단하고 손쉽게 다크모드를 적용해보세요!