다크 모드 만들기 - 1

· 2022-02-27 (일) 23:50:58 · 7836 · 22

테마적용을 기준으로 합니다.

 

1. js폴더에 업로드

링크에서 다운받아서 업로드 합니다.

js/dark-mode-bootstrap

 

2. 적용할 버튼을 보이기

fontawesome-free-6.0.0-web을 다운받아서 업로드 후 적용해 줍니다.

https://fontawesome.com/download

head.sub.php

add_stylesheet('<link rel="stylesheet" href="'.G5_JS_URL.'/font-awesome/css/font-awesome.min.css">', 0);
add_stylesheet('<link rel="stylesheet" href="'.G5_JS_URL.'/fontawesome-free-6.0.0-web/css/all.min.css">', 0); 

 

3. 버튼추가

head.php추가

 

<li><a href="<?php echo G5_BBS_URL ?>/current_connect.php" class="visit">접속자<strong class="visit-num"><?php echo connect('theme/basic'); // 현재 접속자수, 테마의 스킨을 사용하려면 스킨을 theme/basic 과 같이 지정  ?></strong></a></li>
<li>
<input type="checkbox" class="" id="darkSwitch" style="display:none">
<label class="custom-control-label text-center" for="darkSwitch"><span id="data-theme-mod"></span></label>
<script src="<?php echo G5_JS_URL?>/dark-mode-bootstrap/dark-mode-switch.js"></script>
</li>

**************************

참고

dark-mode-switch.js의 파일 내부

var darkSwitch = document.getElementById("darkSwitch");
//window.addEventListener("load", function () {
  if (darkSwitch) {
    initTheme();
    darkSwitch.addEventListener("change", function () {
      resetTheme();
    });
  }
//});

사이트 변화에 따른 속도 향샹을 위해 load를 주석해 줍니다.

 

3. 스킨의 CSS파일을 추가 합니다

default.css 상단에 추가

@charset "utf-8";
@import url("./default_dark.css");

 

default_dark.css 파일을 만든후

[data-theme="dark"] 모든스타일에 붙여주기
 

각각의 모든 스킨을 만들어서 적용해 주세요.

참조 : 미완성된 css 파일 첨부

 

**********************************

팝업이나 head가 없는 페이지 적용을 위해 위치를 수정합니다.

head.sub.php

<body<?php echo isset($g5['body_script']) ? $g5['body_script'] : ''; ?>>
<?php
if ($is_member) { // 회원이라면 로그인 중이라는 메세지를 출력해준다.
    $sr_admin_msg = '';
    if ($is_admin == 'super') $sr_admin_msg = "최고관리자 ";
    else if ($is_admin == 'group') $sr_admin_msg = "그룹관리자 ";
    else if ($is_admin == 'board') $sr_admin_msg = "게시판관리자 ";

    echo '<div id="hd_login_msg">'.$sr_admin_msg.get_text($member['mb_nick']).'님 로그인 중 ';
    echo '<a href="'.G5_BBS_URL.'/logout.php">로그아웃</a></div>';
}
?>

<input type="checkbox" class="" id="darkSwitch" style="display:none">

<script src="<?php echo G5_JS_URL?>/dark-mode-bootstrap/dark-mode-switch.js"></script>

*********

head.sub.php

페이지이동시 반짝이는 현상때문에 스크립 파일을 이동합니다.

 

tail.sub.php

<script src="<?php echo G5_JS_URL?>/dark-mode-bootstrap/dark-mode-switch.js"></script>
<?php run_event('tail_sub'); ?>

첨부파일

default.css (26.3 KB) 54회 2022-02-27 23:53
default_dark.css (34 KB) 39회 2022-02-27 23:53
|

댓글 22개

테마를 바꿀수도 없고.. 다크모드는 탐나고.. 그림에 떡이네요.. ㅠ.ㅠ
2022-02-28 (월) 01:28:56
@티스탁 사용하시는 테마에도 적용이 가능합니다..기본형을 가지고 예시를 들인것입니다.
@제로나라 정말요.. 와~~ 도전해 봐야 겠네요
감사 합니다.
감사합니다.
2022-02-28 (월) 12:37:35
감사합니다.
어우 감사합니다
2022-03-01 (화) 17:43:37
팁을 사용하여 다크모드를 하고자 하시는 분들이 있으시면
제가 적용한 다크모드용 CSS파일을 올려드리겠습니다.
제로나라 사이트는 최대한 기본그누만을 사용하고 있습니다.
@제로나라 감사합니다 잘적용했습니다 다크모드 일때 태양아이콘이 보이는데 다크모드아닐때 달아이콘이 안뜰땐 어떡해야할까요? css파일 받을수 있을까요?
2022-03-01 (화) 20:23:13
@위솔루션 default.css
#data-theme-mod:before {font-family: "Font Awesome 6 Free"; font-weight: 900; content: "\f699";position:absolute;margin-top:-3px;cursor:pointer;color:#ddd}

default_dark.css
[data-theme="dark"] #data-theme-mod:before {font-family: "Font Awesome 6 Free"; font-weight: 900; content: "\f185";position:absolute;margin-top:-3px;cursor:pointer}

이걸 확인해 보세요
@제로나라 감사합니다 제로나라님
2022-03-02 (수) 15:48:50
@들레아빠 고생하셧습니다..
잘사용하겠습니다. 감사합니다.
감사합니다!!
탐은나네요 저같은 초보는 아예 꿈도못꾸겠죠
잘보고 갑니다 즐거운시간되세요
멋집니다. 따라가기라도 해야 하는데 아직 코린이라서..
2022-03-08 (화) 12:51:46
감사합니다. 우선 스크랩 해놓으려구요.
2023-09-08 (금) 01:59:42
초기 접속시 기본모드를 다크모드 상태로 할 려면 어디를 손봐야 할 까요..ㅠ
2023-12-03 (일) 01:03:07

혹시 이건 버전이랑은 상관없으려나요...그누보드 5.33 을 쓰는데

일딴 감사히 스크랩해갑니다

 default.css (26.3K) 

 default_dark.css (34.0K) 

 

는 어디다가 업로드 시키고, 다크모드 버튼 소스는 어디있죠? ㅠㅠ

어떤 파일을 어디에 넣고 설명만 좀더 해주시면 설치가 편할거같은데 넘 어렵네요 ㅠㅠ

댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

2,788건
+
제목 글쓴이 날짜 조회
22-03-01 조회 6,115
22-02-27 조회 7,837
22-02-24 조회 5,413
22-02-20 조회 5,441
22-02-17 조회 6,380
22-02-16 조회 5,083
22-02-15 조회 5,327
22-02-15 조회 4,829
22-02-14 조회 5,074
22-02-13 조회 6,757
22-02-11 조회 4,332
22-02-06 조회 5,938
22-02-05 조회 5,001
22-02-04 조회 5,094
22-02-04 조회 4,331
22-02-02 조회 4,898
22-01-27 조회 5,858
22-01-27 조회 5,248
22-01-26 조회 4,935
22-01-25 조회 8,290
22-01-24 조회 5,798
22-01-23 조회 5,743
22-01-20 조회 7,795
22-01-18 조회 5,690
22-01-16 조회 5,703
22-01-14 조회 4,717
22-01-11 조회 5,130
22-01-10 조회 6,471
22-01-09 조회 4,217
22-01-07 조회 5,789