好玩的水表电表

c34cededdfd6495b9edecf6901cd50a2.gif

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>水表电表</title><style>* {margin: 0;padding: 0;box-sizing: border-box;}body {background-color: #0a1f19;color: #ffffff;text-shadow: 1px 1px 1px #000000;text-align: center;}.meter-row,.date-row {width: 100%;margin: 20px auto;min-width: 420px;max-width: 600px;border-radius: 30px 30px 0 0px;padding: 12px;border-radius: 30px;box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2),0 0 1px 2px black,inset 0 2px 2px -2px white,inset 0 0 2px 9px #47434c,inset 0 0 2px 10px #ff0000;}.meter-row {display: flex;}.date-column {display: flex;align-items: center;justify-content: space-evenly;background-color: #144756;margin: 0 10px;}/*日期标题 */.date {transform: scale(1);margin: -180px 10px 0px -95px;}.year {position: relative;top: 35px;left: 6px;padding: 15px 16px 25px 12px;border-radius: 10px 10px 0 0;color: rgb(234, 255, 0);background-color: #ff0000;}h1 {position: absolute;border: 5px solid #333;width: 135px;line-height: 115px;font-size: 60px;letter-spacing: -3px;-webkit-text-fill-color: transparent;border-radius: 20px 10px 10px 10px;box-shadow: inset 4px 4px 4px rgba(255, 255, 255, 0.6), inset -4px -4px 5px rgba(0, 0, 0, 0.6);}.month1 {clip-path: polygon(0% 0%, 100% 0%, 100% 50%, 0% 50%);text-shadow: 1px 1px 1px #d1ec04;-webkit-text-stroke: #fffbfb 1px;}.month2 {clip-path: polygon(0% 50%, 100% 50%, 100% 100%, 0% 100%);transform: translateY(1px);z-index: 20;text-shadow: 1px 1px 1px #ff0303;-webkit-text-stroke: #ffffff 1px;}/*日期标题 结束*/.common-span {color: #ffff00;position: relative;border-radius: 3px;font-size: 30px;padding: 0 5px;font-weight: bold;box-shadow: inset -2px -2px 3px rgba(255, 255, 255, 0.589), inset 2px 2px 3px rgba(0, 0, 0, 0.6);}.common-span::before {content: "";background: linear-gradient(white, transparent 3%) 50% 50%/97% 97%,linear-gradient(rgba(255, 255, 255, 0.5), transparent 50%, transparent 80%, rgba(255, 255, 255, 0.5)) 50% 50%/97% 97%;width: 100%;height: 100%;position: absolute;top: 0;left: 0;border-radius: 5px;transform: scale(0.9);}.common-h2 {background-color: #28a7462e;color: white;border-radius: 0 0 2px 2px;}/* 水表 */.water-meter {width: 90px;height: 90px;margin: 0 10px;border-radius: 75px;background: #e0f7fa;border: 5px solid #0288d1;position: relative;box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);}.water-meter h2 {color: white;background: linear-gradient(to top, #0091ea, #00bcd4);border-radius: 0 0 75px 75px;}.water-meter p {animation: backgroundChange2 10s infinite;margin: 4px;font-size: 25px;font-weight: bold;padding: 0 7px 3px 5px;}/* 电表 */.electric-meter {border: 5px solid #333;border-radius: 10px;background: #fff;box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);}.electric-meter h2 {background-color: #28a745;color: white;border-radius: 0 0 2px 2px;}.electric-meter p {margin: 4px;font-size: 25px;font-weight: bold;padding: 0 7px 3px 5px;}.water-meter p {animation: backgroundChange2 10s infinite;}.electric-meter p {animation: backgroundChange 10s infinite;}@keyframes backgroundChange2 {0%,10%,20%,30%,40%,50%,60%,70%,80%,90%,100% {box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2), 0 0 1px 2px black,inset 0 2px 2px -2px white, inset 0 0 2px 7px #47434c,inset 0 0 2px 22px #ff0000;color: #cfd601;border-radius: 33px 33px 0 0;}5%,15%,25%,35%,45%,55%,65%,75%,85%,95% {box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2), 0 0 1px 2px black,inset 0 2px 2px -2px white, inset 0 0 2px 7px #47434c,inset 0 0 2px 22px #f6ff00;color: #ffffff;border-radius: 30px 30px 0 0;}}@keyframes backgroundChange {0%,10%,20%,30%,40%,50%,60%,70%,80%,90%,100% {box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2), 0 0 1px 2px black,inset 0 2px 2px -2px white, inset 0 0 2px 7px #47434c,inset 0 0 2px 22px #ff0000;color: #cfd601;border-radius: 2px;}5%,15%,25%,35%,45%,55%,65%,75%,85%,95% {box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2), 0 0 1px 2px black,inset 0 2px 2px -2px white, inset 0 0 2px 7px #47434c,inset 0 0 2px 22px #f6ff00;color: #ffffff;border-radius: 5px;}}.remarks,.total-cost {background-color: #28a745;border-radius: 30px 30px 0 0;margin: 10px 10px 0 10px;padding-left: 50px;}.total-cost sub {background-color: #285ba79d;border-radius: 3px;}/* 备注 */.remarks {border-radius: 0 0 30px 30px;}.remarks b {color: #ffff00;}/* 备注 结束 *//* 下面的电表 */.meter {width: 300px;height: 150px;border: 5px solid #333;border-radius: 10px;background: linear-gradient(to bottom, #fff, #e6e6e6);box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);position: relative;text-align: center;font-family: 'Arial', sans-serif;}.meter .dial {width: 80%;height: 80%;border: 3px solid #333;border-radius: 50%;position: absolute;top: 10%;left: 10%;display: flex;justify-content: center;align-items: center;}.needle {width: 2px;height: 40%;background: red;position: absolute;bottom: 50%;transform-origin: bottom;transition: transform 0.5s ease-out;}.reading {font-size: 24px;margin-top: 20px;}.button {padding: 10px 20px;margin-top: 20px;background-color: #28a745;color: white;border: none;border-radius: 5px;cursor: pointer;}.button:hover {background-color: #218838;}.water-meter2 {width: 150px;height: 150px;border-radius: 75px;background: #e0f7fa;border: 10px solid #0288d1;position: relative;box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);}.water-level {position: absolute;bottom: -10px;left: 0%;width: 100%;background: linear-gradient(to top, #0091ea, #079aad);border-radius: 0 0 75px 75px;transition: height 0.3s ease;height: 0;animation: wave 1s infinite ease-in-out;}@keyframes wave {0% {background-position: 0% 0%;}100% {background-position: 100% 20%;}}.indicator {position: absolute;width: 10px;height: 10px;background: red;border-radius: 50%;top: 50%;left: 50%;transform: translate(-50%, -50%);z-index: 10;}/* 添加波浪效果背景 */.water-level {position: absolute;bottom: -10px;left: 0%;width: 100%;background: linear-gradient(to top, #00bcd4, #00695c);/* 修改了颜色 */border-radius: 0 0 75px 75px;transition: height 0.3s ease;height: 0;animation: wave 1s infinite ease-in-out;background-size: 20% 20%;/* 背景大小用于波动效果 */}</style>
</head>
<body><div class="date-row"><div class="total-cost"><sub>总房租0元</sub><sub>总水费 0元</sub><sub>总电费0元</sub><sub>总合计 0元</sub></div><div class="date-column"><div class="date"><div class="year-month"><sub class="year">2024年</sub><h1 class="month1">10月</h1></div><h1 class="month2">10月</h1></div><div class="water-meter"><p>71</p><h2>水表</h2></div><div class="electric-meter"><p class="common-span">2600</p><h2>电表</h2></div></div><div class="remarks"><b>备注:</b><span>哔哩吧啦哔哩吧啦</span></div></div><div class="meter-row"><div class="meter"><div class="dial"><div class="needle" id="needle"></div></div><div class="reading" id="reading">0 kWh</div></div><div class="meter"><div class="reading" id="meterReading">0 kWh</div><button class="button" onclick="increaseReading()">增加用电量</button></div><div class="water-meter2"><div class="water-level" style="height: 60%; animation: wave 1s infinite ease-in-out;"><span></span></div><div class="indicator"></div></div></div>
</body>
<script>const needle = document.getElementById('needle');const reading = document.getElementById('reading');// 随机生成电表读数function updateMeter() {const value = Math.floor(Math.random() * 100); // 0-99 kWhconst angle = (value / 100) * 180; // 转换为角度 (0-180度)needle.style.transform = `rotate(${-90 + angle}deg)`; // 调整方向reading.innerText = `${value} kWh`; // 更新读数}// 每隔2秒更新一次读数setInterval(updateMeter, 2000);let currentReading = 0;function increaseReading() {currentReading += Math.floor(Math.random() * 10) + 1; // 随机增加1到10之间的用电量document.getElementById('meterReading').innerText = currentReading + ' kWh';}
</script>
</html>

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

从Fast-UMI到Diff-Control:分别改进刷盘机器人UMI的硬件及其所用的扩散策略

前言 24年9.28日下午&#xff0c;微信上的好友丁研究员和我说 hi 周总&#xff0c;我们基于umi改进了一下——弄了一个用户友好的采集系统(当然&#xff0c;现在这个版本还比较初级 后续不断迭代)项目网站为&#xff1a;https://fastumi.com/ 技术报告见&#xff1a;https://…

“洗盘后的曙光:利用通达信选股器捕捉二次拉升股”

在一波上涨行情之后&#xff0c;投资者往往会遇到股票的回调。这时&#xff0c;市场上的两种声音开始交织&#xff1a;一种是认为这是洗盘&#xff0c;即主力在为下一轮拉升做准备&#xff1b;另一种则认为这是出货&#xff0c;主力在悄悄撤离。如何分辨这两者&#xff0c;给大…

基于Leaflet和天地图的细直箭头和突击方向标绘实战

目录 前言 一、细直箭头和突击方向的类设计 1、总体类图 2、对象区别 二、标绘绘制的具体实现 1、绘制时序图 2、相关点的具体绘制 3、最终的成果 三、总结 前言 今天是10月1日国庆节&#xff0c;迎来我们伟大祖国75周年的华诞。有国才有家&#xff0c;在这里首先祝我们…

Python 如何使用 Pandas 进行数据分析

Python 如何使用 Pandas 进行数据分析 在数据分析领域&#xff0c;Python 是非常流行的编程语言&#xff0c;而 Pandas 是其中最重要的库之一。Pandas 提供了高效、灵活的数据结构和工具&#xff0c;专门用于处理和分析数据。对于数据分析新手来说&#xff0c;理解如何使用 Pa…

Linux数据备份

1、Linux服务器中哪些数据需要备份 1&#xff09;Linux系统重要数据&#xff1a; ①/root/目录&#xff0c;管理员家目录 ②/home/目录&#xff0c;普通用户家目录 ③/etc/目录 &#xff0c;系统重要的配置文件保存目录 2&#xff09;安装服务的数据&#xff1a;例apache①…

MySQL安装与环境配置(Windows系统 MySQL8.0.39)

目录 MySQL8.0.39工具下载安装开启方式可视化开启命令方式开启 环境配置 MySQL8.0.39 工具 系统&#xff1a;Windows 11 参考视频&#xff1a; 黑马程序员 MySQL数据库入门到精通&#xff0c;从mysql安装到mysql高级、mysql优化全囊括 P3 https://www.bilibili.com/video/BV1…

NodeJS下载、安装及环境配置教程,内容详实

文章目录 概述关于本文NodeJS介绍 安装步骤 概述 关于本文 本文讲解如何在Windows系统中安装NodeJS并配置相关环境。 NodeJS介绍 Node.js&#xff08;通常简称为Node&#xff09;是一个开源、跨平台的JavaScript运行时环境&#xff0c;它允许开发者在服务器端运行JavaScrip…

番茄间的一分钟休息

很多人喜欢使用番茄工作法&#xff0c;在25分钟内集中工作。这种方法提高了25分钟内的工作效率&#xff0c;但是也增加了自己的疲劳程度。 我建议&#xff0c;在25分钟的工作时间内&#xff0c;要保持对自己身体的觉察。如果感觉呼吸短促&#xff0c;有一些紧张&#xff0c;用…

英语音标与重弱读

英语中&#xff0c;比较重要的是音标。但事实上&#xff0c;我们对音标的学习还是比较少的&#xff0c;对它的理解也是比较少的。 一、音标 2个半元音 [w][j] 5个长元音&#xff1a;[i:] [ə:] [ɔ:] [u:] [ɑ:] 7个短元音&#xff1a;[i] [ə] [ɔ] [u] [] [e] [ʌ] 8个双元音…

Windows 环境下 MySQL5.5 安装与配置详解

Windows 环境下 MySQL5.5 安装与配置详解 目录 Windows 环境下 MySQL5.5 安装与配置详解一、MySQL 软件的下载二、安装 MySQL三、配置 MySQL1、配置环境变量2、安装并启动 MySQL 服务3、设置 MySQL 字符集4、为 root 用户设置登录密码 一、MySQL 软件的下载 1、登录网址&#…

计算两点结构的斜率

在行列可自由变换的条件下&#xff0c;平面上的2点结构只有3个 (A,B)---6*n*2---(0,1)(1,0) 分类A和B&#xff0c;A是3个2点结构&#xff0c;让B全是0。当收敛误差为7e-4&#xff0c;收敛199次取迭代次数平均值。让隐藏层节点数n分别为10&#xff0c;15&#xff0c;20&#xf…

单调队列应用介绍

单调队列应用介绍 定义应用场景实现模板具体示例滑动窗口最大值问题描述问题分析代码实现带限制的子序列和问题描述问题分析代码实现跳跃游戏问题描述问题分析代码实现定义 队列(Queue)是另一种操作受限的线性表,只允许元素从队列的一端进,另一端出,具有先进先出(FIFO)的特…

hdlbits系列verilog解答(Exams/2012 q1g)-78

文章目录 一、问题描述二、verilog源码三、仿真结果一、问题描述 实现下面卡诺图中的逻辑功能。 模块声明 module top_module ( input [4:1] x, output f ); 思路: 写出积之和表达式,再做简化。 二、verilog源码 module top_module (input [4:1] x,output f)

RabbitMQ的相关题

一、 MQ的作⽤及应⽤场景 类似问题: 项⽬什么场景下使⽤到了MQ, 为什么需要MQ? RabbitMQ 的作⽤?使⽤场景有哪些? RabbitMQ…

idea 同一个项目不同模块如何设置不同的jdk版本

在IntelliJ IDEA中&#xff0c;可以为同一个项目中的不同模块设置不同的JDK版本。这样做可以让你在同一个项目中同时使用多个Java版本&#xff0c;这对于需要兼容多个Java版本的开发非常有用。以下是设置步骤&#xff1a; 打开项目设置&#xff1a; 在IDEA中&#xff0c;打开你…

虚拟机安装keil、JLink过程

本文仅交流学习使用 虚拟机安装keil、JLink过程 1.安装虚拟机 主机系统&#xff1a;Ubuntu 20.04 使用软件&#xff1a;virtualbox 7.0.6 虚拟机系统&#xff1a;windows10 iso下载链接&#xff1a;百度网盘 根据需要的条件完成虚拟机配置&#xff0c;等待windows安装即可…

我博客网站又遭受CC攻击了,记录一下

2024.9.29凌晨4点攻击开始&#xff0c;攻击目标是我的图床tc.zeruns.tech和博客blog.zeruns.tech&#xff0c;图床用的cdn是多吉云融合CDN&#xff0c;流量被刷了20GB左右就触发峰值关闭CDN了&#xff0c;HTTPS请求次数被刷了1.1亿次&#xff0c;因为设置了QPS&#xff0c;实际…

【SpringCloud】 统⼀服务⼊⼝-Gateway

统⼀服务⼊⼝-Gateway 1. ⽹关介绍1.1 问题1.2 什么是API⽹关1.3 常⻅⽹关实现ZuulSpring Cloud Gateway 2. 上手 1. ⽹关介绍 1.1 问题 前⾯的课程中, 我们通过Eureka, Nacos解决了服务注册, 服务发现的问题, 使⽤Spring Cloud LoadBalance解决了负载均衡的问题, 使⽤OpenFe…

《安富莱嵌入式周报》第343期:雷电USB4开源示波器正式发布,卓越的模拟前端低噪便携示波器,自带100W电源的便携智能烙铁,NASA航空航天锂电池设计

周报汇总地址&#xff1a;嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 更新一期视频教程 【授人以渔】CMSIS-RTOS V2封装层专题视频&#xff0c;一期视频将常用配置和用法梳理清楚&#xff0…

二叉树:总结篇!【需要掌握的二叉树技能都在这里啦】

文章目录 前言二叉树理论基础二叉树理论基础二叉树的遍历方式深度优先遍历广度优先遍历 N叉树的遍历方式求二叉树的属性二叉树&#xff1a;是否对称二叉树&#xff1a;求最大深度二叉树&#xff1a;求最小深度二叉树&#xff1a;求有多少个节点二叉树&#xff1a;是否平衡二叉树…