100行Html5+CSS3+JS代码实现元旦倒计时界面

一、前言二、圣诞树效果展示:三、步骤如果之前看过我这篇文章的1.下载VSCode下载链接:VSCode在Hbuilder、idea运行也是可以的,这里推荐使用VSCode2.配置插件三个插件对应的功能:改写标签后自动完善 切换成中文页面 让代码在网页中打开,默认键Alt+B3.构建三个文件在桌面新建一个空的文件夹,用VSCode打开 在VSCode新建三个文件index.htmldomtree….

大家好,又见面了,我是你们的朋友全栈君。

  一、前言   

100行Html5+CSS3+JS代码实现元旦倒计时界面

  • 2022年到了,祝大家虎年大吉喜气临,昂首摆尾迎春来。双眼圆睁看世界,万水千山尽开颜。胡须翘翘美姿态,人人开心祝平安。巨大身躯摇摆摆,坎坷困境当笑谈。愿你虎年万事顺,吉星高照旺旺旺!

 二、2022虎年计时

总体效果展示:

100行Html5+CSS3+JS代码实现元旦倒计时界面

局部计时效果展示:

100行Html5+CSS3+JS代码实现元旦倒计时界面

三、步骤

1.下载VSCode

100行Html5+CSS3+JS代码实现元旦倒计时界面

下载链接:VSCode

  • 在Hbuilder、idea运行也是可以的,这里推荐使用VSCode

2.配置插件

100行Html5+CSS3+JS代码实现元旦倒计时界面

三个插件对应的功能: 

  • 改写标签后自动完善
  • 切换成中文页面
  • 让代码在网页中打开,默认键Alt+B

3.构建三个文件

100行Html5+CSS3+JS代码实现元旦倒计时界面

  • 在桌面新建一个空的文件夹,用VSCode打开
  • 在VSCode新建三个文件 index .html   style.css   script.js  (文件名字要和这个一样,不然会出错),把上面的图片也加入到文件夹中,命名为2022.png(图片可以自己选择,文章中的图片放到文章最下面了),最后保存别忘了
  • 对于文件的层级问题,三个 index .html   style.css   script.js 在同一级文件夹内不要修改,如果在下一个层级或者上面一个层级需要改动选择
  • 在index.html代码界面,默认键Alt+B 或者 鼠标右击,选择倒数第三个Open In  Default  Browser默认浏览器打开

4.添加额外功能

更换背景图:

  • 在css代码的第八行,html的第六行,更改图片地址就行了

添加音乐:

  • 在index.html代码中添加下列代码:                                                                       <embed src=”song.mp3″ hidden=”false” autostart=”true” loop=”true”>
  • src=”音乐地址”,把想要播放的音乐,提前放到这个文件夹中,把这个音乐的命名填入src中就可以播放音乐
  • hidden=”true”表示隐藏音乐播放按钮,hidden=”false”开启音乐播放按钮
  • autostart=”true” 打开网页加载完后自动播放
  • loop=”true”循环播放 如仅想播放一次则为:loop=”false”

四、编码实现

CSS代码:

@import url('https://fonts.proxy.ustclug.org/css2?family=Lobster&display=swap');

*{
    box-sizing: border-box;
}

body{
    background-image: url("2022.png"); 
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 100vm;
    font-family: 'Lobster', cursive, sans-serif;
    margin: 0;
}

.big-text{
    color: rgb(255, 215, 0);
    font-size: 3rem;
    font-weight: bold;
    line-height: 0.5;
    margin: 3rem;
}

h1{
    color: gold;
    font-size: 3rem;
    margin-top: 3rem;
}

.countdown-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.countdel {
    color: black;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
}

Html代码: 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <!-- 下一行可以更换图片地址 -->
    <link rel="shortcut icon" href="2022.png" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="theme-color" content="#0000" />
    <link href="https://fonts.proxy.ustclug.org/css2?family=DM+Mono&family=Inter:wght@400;500&display=swap" rel="stylesheet">
    <title>Burmese New Year's Day Countdown</title>
    <link rel="stylesheet" href="style.css">
    <script src="script.js" defer></script>
    <meta name="author" content="Thiri San" />
    <meta name="keywords" content="Thiri San">
</head>
<body>
    <h1>2022新年倒计时</h1>
    <div  class="countdown-container">
        <div class="countdel days-c">
            <p class="big-text" id="days">0</p>
            <span>天</span>
        </div>
        <div class="countdel hours-c">
            <p class="big-text" id="hours">0</p>
            <span>时</span>
        </div>
        <div class="countdel minutes-c">
            <p class="big-text" id="minutes">0</p>
            <span>分</span>
        </div>
        <div class="countdel seconds-c">
            <p class="big-text" id="seconds">0</p>
            <span>秒</span>
        </div>
    </div>


</body>
</html>

JS代码: 

const daysEl = document.getElementById('days')
const hoursEl = document.getElementById('hours')
const minutesEl = document.getElementById('minutes')
const secondsEl = document.getElementById('seconds')

const x = new Date().getFullYear()
const y = x+1;
const newYear = new Date(y,0,1,0,0,0,0)

function countdown() {
    const newYearsDate = new Date(newYear);
    const currentDate = new Date();

    const totalSeconds = (newYearsDate - currentDate) / 1000;

    const days = Math.floor(totalSeconds / 3600 / 24);
    const hours = Math.floor(totalSeconds / 3600) % 24;
    const minutes = Math.floor(totalSeconds / 60) % 60;
    const seconds =  Math.floor(totalSeconds % 60);

    daysEl.innerHTML = days;
    hoursEl.innerHTML = formatTime(hours);
    minutesEl.innerHTML = formatTime(minutes);
    secondsEl.innerHTML = formatTime(seconds);

}

function formatTime(time){
    return time < 10 ? (`0${time}`) : time;
}

countdown();
setInterval(countdown,1000)


附录:

零基础必看的Html5+Css3+移动端前端教程(一)

零基础必看的Html5+Css3+移动端前端教程(二)

零基础必看的Html5+Css3+移动端前端教程(三)

零基础必看的Html5+Css3+移动端前端教程(四)

零基础必看的Html5+Css3+移动端前端教程(五)

100行Html5+CSS3+JS代码实现元旦倒计时界面

100行Html5+CSS3+JS代码实现元旦倒计时界面  

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126360.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月7日 下午6:20
下一篇 2022年4月7日 下午6:20


相关推荐

  • Elon Musk:同一时候颠覆几个行业的科技狂人

    Elon Musk:同一时候颠覆几个行业的科技狂人

    2021年12月2日
    46
  • 关于公网IP和私有IP的区别

    关于公网IP和私有IP的区别关于公网 IP 和私有 IP 的区别在百度直接搜索 IP 会显示公网 IP 在 cmd 中输入 ipconfig 或者在 Linux 终端下输入 ifconfig 会显示出私有 ip 这两个 ip 是不一样的 那么到底有什么区别呢 公网 IP 一般是运营商分配的 公网 ip 才能上网 但是不可能给每一个电脑分配一个 IP ipv4 肯定是不够的 所以需要私有 IP 这种 ip 一般是用于局域网的管理 不能直接连上互联网 必须通过公网 ip 上

    2026年3月26日
    3
  • python海龟绘图画树_python,递归函数画树,海龟作图,turtle

    python海龟绘图画树_python,递归函数画树,海龟作图,turtle原博文2020-04-0710:18−importturtleimporttimedeftree(t,trunk_length,pensize):iftrunk_length>5:t.pensize(pensize)t.forward(trunk_lengt…相关推荐2019-12-2409:01−用turtle函数画空心圆turtle.cir…

    2022年6月28日
    27
  • RestTemplate使用实战-exchange方法讲解

    RestTemplate使用实战-exchange方法讲解RestTemplate 是什么 RestTemple 是 Spring 提供的用于访问 Http 请求的客户端 RestTemple 提供了多种简洁的远程访问服务的方法 省去了很多无用的代码 为什么要用 RestTemplate 相信大家之前都用过 apache 的 HTTPClient 类 逻辑繁琐 代码复杂 还要自己编写使用类 HttpClientUt 封装对应的 post get delete 等方法 Rest

    2026年3月17日
    2
  • phpstrom2021.9激活码【2021最新】[通俗易懂]

    (phpstrom2021.9激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlS3…

    2022年3月26日
    49
  • GlobalMapper20如何更快速的浏览影像(mbt)【tif转mbt】

    GlobalMapper20如何更快速的浏览影像(mbt)【tif转mbt】一 影像的来源和类型 原理简介 大众用户使用的影像多数为单位购买的国家高分卫星 高景卫星的卫星影像 tif 无人机航拍的倾斜摄影高分数据 tif 下载器本地缓存的影像服务数据 tif tif 是大文件 本身可以创建金字塔索引 gdal 可以快速创建 但速度依旧很慢 它的金字塔只存在了缩略图 并不存在完整的分级瓦片切分 ArcGIS 的 img 格式的数据也可以包含金字塔 原理类似 二 地图服务 原理简介 自从谷歌上线网络地图后 地图服务开始遍地开花 只需要一个浏览器我们就能看到

    2026年3月16日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号