翻转时钟效果

在这里插入图片描述
时分秒三个部分结构功能完全一致,均有四块构成,上下各两块。
在这里插入图片描述
正面可见,背面不可见,同时需要调整翻转过程中的z-index。
初始状态card2为已经翻转状态。

calendar.html

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./calendar.css">
</head><body><div class="calendar"><div class="card-container hour" data-number="00"><div class="card card1">00</div><div class="card card2">00</div><div class="card card3">00</div><div class="card card4">00</div></div><div class="a">:</div><div class="card-container minute" data-number="00"><div class="card card1">00</div><div class="card card2">00</div><div class="card card3">00</div><div class="card card4">00</div></div><div class="a">:</div><div class="card-container seconds" data-number="00"><div class="card card1">00</div><div class="card card2">00</div><div class="card card3">00</div><div class="card card4">00</div></div></div><script src="./calendar.js"></script>
</body></html>

calendar.css

*{margin: 0;padding: 0;
}body{background: #868383e6;
}
.calendar{margin: 100px auto;width: 400px;display: flex; font-size: 80px; /* 文本大小 */}
.a{margin-top: 90px;
}.card-container{    position: relative;width: 100px;height: 100px;margin: 100px auto;text-align: center;background: #868383e6;perspective: 100px;/* transform-style: preserve-3d; */color:#fff;border-radius: 10px;box-shadow: 006px rgba(0, 0, 0, .5);
}.card-container::before {content: '';position: absolute;bottom: 50%;left: 0;right: 0;height: 2px;background-color: #868383e6;z-index: 99;}.card{position: absolute;width: 100%;height: 50%;left: 0;top: 0;line-height: 100px;overflow: hidden;background: #000;z-index: 10;border-radius: 10px;}.card2{top: 50%;line-height: 0;background: #000;transform: rotateX(180deg);transform-origin: center top;backface-visibility: hidden;}.flip.card2{transform: rotateX(0deg);transform-origin: center bottom;backface-visibility: hidden;  //背面不可见transition: 0.5s;z-index: 12;background: #000;}.card3{top: 0%;line-height: 100px;background: #000;}.flip.card3{transition: 0.5s;transform: rotateX(-180deg);transform-origin: center bottom;backface-visibility: hidden;z-index: 13;background: #000;}.card4{top: 50%;line-height: 0;background: #000;z-index: 10;}

calender.js


const doms = {hour:document.querySelector('.hour'),minute:document.querySelector('.minute'),seconds:document.querySelector('.seconds'),
}function processTime(dom,time){const curTime = dom.dataset.numberconst nextTime = time.toString().padStart(2, "0");//当前时间与下一时间进行比较,相同则不更新if(nextTime === curTime){return;}dom.querySelector('.card1').innerHTML = nextTimedom.querySelector('.card2').innerHTML = nextTimedom.querySelector('.card3').innerHTML =  dom.dataset.numberdom.querySelector('.card4').innerHTML =  dom.dataset.numberdom.dataset.number = nextTimedom.querySelector('.card2').classList.remove("flip");dom.querySelector('.card3').classList.remove("flip");dom.querySelector('.card2').clientHeight;dom.querySelector('.card2').classList.add("flip");dom.querySelector('.card3').classList.add("flip");
}setInterval(function () {processTime(doms.hour,new Date().getHours());processTime(doms.minute,new Date().getMinutes())processTime(doms.seconds,new Date().getSeconds())
}, 1000)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/540344.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【算法】一类支持向量机OC-SVM(1)

【算法】一类支持向量机OC-SVM 前言一类支持向量机OC-SVM 概念介绍示例编写数据集创建实现一类支持向量机OC-SVM完整的示例输出 前言 由于之前毕设期间主要的工具就是支持向量机&#xff0c;从基础的回归和分类到后来的优化&#xff0c;在接触到支持向量机还有一类支持向量机的…

幸福金龄会携手广东文艺团队共谱文化新篇章《锦绣中华》第二届中老年文旅展演盛大开幕

近日&#xff0c;幸福金龄会携手广东省各支文艺团队及艺术家&#xff0c;开启了《锦绣中华》第二届中老年文旅游活动。此次活动得到了各大媒体对于老年旅游服务的深度关注&#xff0c;并获得了各地文旅企业的热情配合&#xff0c;共同为中老年朋友们打造了一场文化盛宴。 近期&…

01、JS实现:去除数组中重复项的算法之一

数组去除重复项的算法&#xff1a; Ⅰ、删除排序数组中的重复项(注意&#xff1a;是已经排好序的)&#xff1a;1、题目描述&#xff1a;2、解题思路&#xff1a;3、实现代码&#xff1a; Ⅳ、小结&#xff1a; Ⅰ、删除排序数组中的重复项(注意&#xff1a;是已经排好序的)&…

OJ_八皇后

题干 C实现 深度优先遍历&#xff0c;注意回溯打表法&#xff1a;先求出所有解&#xff0c;再存入一个容器中 #define _CRT_SECURE_NO_WARNINGS#include <iostream> #include <vector>using namespace std;vector<vector<int>> queenVec;//用来存在所…

基于SpringBoot+Vue的电商应用系统的设计与实现

1 绪论 1.1研究背景 当前社会各行业领域竞争压力非常大&#xff0c;随着当前时代的信息化&#xff0c;科学化发展&#xff0c;让社会各行业领域都争相使用新的信息技术&#xff0c;对行业内的各种相关数据进行科学化&#xff0c;规范化管理。这样的大环境让那些止步不前&…

梵宁教育是诈骗机构吗?是否存在坑人行为

近日&#xff0c;注意到网络上出现了一些关于梵宁教育涉嫌诈骗及虚假宣传的言论&#xff0c;这些言论严重损害了梵宁教育的声誉和形象。在此&#xff0c;我们郑重声明&#xff1a;梵宁教育始终坚守诚信原则&#xff0c;从未进行过任何诈骗或虚假宣传行为。 梵宁教育自成立以来&…

损失函数和反向传播

1. 损失函数的基础 import torch from torch.nn import L1Loss from torch import nninputs torch.tensor([1, 2, 3], dtypetorch.float32) targets torch.tensor([1, 2, 5], dtypetorch.float32)inputs torch.reshape(inputs, (1, 1, 1, 3)) targets torch.reshape(targe…

基于SSM+Vue的龙腾公司员工信息管理系统设计与实现

​ 1 绪论 1.1研究背景 当前社会各行业领域竞争压力非常大&#xff0c;随着当前时代的信息化&#xff0c;科学化发展&#xff0c;让社会各行业领域都争相使用新的信息技术&#xff0c;对行业内的各种相关数据进行科学化&#xff0c;规范化管理。这样的大环境让那些止步不前&a…

分享几套ArcGIS和CAD的三调符号库和使用

在粉丝群中呢&#xff0c;一直有朋友需要三调的符号库。今天就分享几套供大家学习使用&#xff01; 这次符号库有ArcGIS和CAD的&#xff0c;使用方法可参考我们的课程学习。 分享的三调符号库&#xff0c;也是粉丝群中收集的&#xff0c;分享给大家。符号库的质量还请大家自我斟…

Python·算法·每日一题(3月15日)合并两个有序链表

题目 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4]示例 2&#xff1a; 输入&#xff1a;l1 [], l2 [] 输出&am…

FreeRTOS操作系统学习——软件定时器

软件定时器介绍 软件定时器允许设置一段时间&#xff0c;当设置的时间到达之后就执行指定的功能函数&#xff0c;被定时器调用的这个功能函数叫做定时器的回调函数。回调函数的两次执行间隔叫做定时器的定时周期&#xff0c;简而言之&#xff0c;当定时器的定时周期到了以后就…

Linux 多进程开发(下)

第二章 Linux 多进程开发 2.6 进程间通信2.6.1 匿名管道2.6.2 有名管道2.6.3 内存映射2.6.4 信号2.6.5 共享内存 2.7 守护进程 网络编程系列文章&#xff1a; 第1章 Linux系统编程入门&#xff08;上&#xff09; 第1章 Linux系统编程入门&#xff08;下&#xff09; 第2章 L…