最近有小伙伴问网页的夜间模式怎么实现,一瞬间又感觉到微信炒热的夜间模式备受大家喜欢,现在分享的夜间模式教程,主要适用于Handsome主题,还支持一键切换模式,支持跟随设备深色模式,其他网页程序也通用,自行修改darkmode.css文件即可。

夜间模式效果

一、夜间模式js和css文件下载上传

下载上面的文件,js和css分开上传到Handsome主题对应目录下,路径如下:

  • /usr/themes/handsome/assets/css/darkmode.css
  • /usr/themes/handsome/assets/js/darkmode.js

二、Handsome主题需要修改的文件

  • 打开/usr/themes/handsome/component/footer.php,找到

    <!--主题核心js-->
      <script src="<?php echo STATIC_PATH ?>js/function.min.js?v=<?php echo Handsome::$version.Handsome_Config::$versionTag
      ?>"></script>
      <script src="<?php echo STATIC_PATH ?>js/core.min.js?v=<?php echo Handsome::$version.Handsome_Config::$versionTag
    ?>"></script>

    在下面加入

    <!--darkmode.js-->
      <script src="<?php echo STATIC_PATH ?>js/darkmode.js?v=dedediy"></script>
  • 打开/usr/themes/handsome/component/header.php,找到

      <style type="text/css">
          <?php echo Content::exportCss($this) ?>
      </style>

    在下面加入

      <!--darkmode.css-->
      <link rel="stylesheet" href="<?php echo STATIC_PATH; ?>css/darkmode.css?v=dedediy" type="text/css" />
  • 打开/usr/themes/handsome/component/headnav.php,找到(搜索)

              <?php if (!in_array('hideLogin',$this->options->featuresetup)): ?>

    在上面加入

              <!--darkmode start-->
              <li>
                  <a class="nav-switch-dark-mode" href="javascript:">
                    <span class="icon-light-mode" data-toggle="tooltip" data-placement="bottom" title="" data-original-title=" 夜晚模式 ">
                        <i data-feather="sun"></i>
                    </span>
                    <span class="icon-dark-mode" data-toggle="tooltip" data-placement="bottom" title="" data-original-title=" 日间模式 ">
                        <i data-feather="moon"></i>
                    </span>
                  </a>
              </li>
              <!--darkmode end--> 

    完成以上操作,夜间模式和跟随系统深色模式就实现了,小伙伴快去试试看吧。

三、怎么修改、增加CSS样式和深色模式

  • 夜间模式的修改
    打开/usr/themes/handsome/assets/css/darkmode.css文件,找到

    /*跟随系统模式*/
    @media (prefers-color-scheme: dark) {
  • 在它上面增加或者修改你需要的样式即可

    跟随系统模式的修改(其实就是增加@media (prefers-color-scheme: dark)样式),找到

    /*跟随系统模式*/
    @media (prefers-color-scheme: dark) {

    在大括号后面(或者文件最后一个大括号上面)增加或者修改你需要的样式即可,注意每一个样式前面尽量加上body (后面的空格注意,参考我写的样式即可)。

四、怎样修改自动进入夜间模式的时间

打开darkmode.js,找到

        if(new Date().getHours() > 22 || new Date().getHours() < 6){

数字22和6就是表示在晚上22点和早上6点之间为夜间模式,修改为你需要的时间数字即可。

五、盒子模型下背景不进入夜间模式问题

  • 打开/usr/themes/handsome/assets/css/darkmode.css文件,找到

      /*夜间模式*/ 

    在它下面加入

    html.bg.night {
     background: #151617;
    }

    继续找到

    /*跟随系统模式*/
    @media (prefers-color-scheme: dark) {

    在它下面加入,即:

    /*跟随系统模式*/
    @media (prefers-color-scheme: dark) {
    html.bg.night {
     background: #151617;
    }
最后修改:2020 年 04 月 05 日
如果觉得我的文章对你有用,请随意赞赏