<…">
当前位置:首页 > CSS

css怎么制作钟

2026-01-28 12:23:30CSS

使用CSS制作钟表

通过CSS和少量HTML可以创建一个简单的钟表效果,结合动画实现指针的旋转。以下是具体实现方法:

css怎么制作钟

HTML结构

<div class="clock">
  <div class="clock-face">
    <div class="hand hour-hand"></div>
    <div class="hand min-hand"></div>
    <div class="hand sec-hand"></div>
  </div>
</div>

CSS样式

.clock {
  width: 200px;
  height: 200px;
  border: 10px solid #333;
  border-radius: 50%;
  margin: 50px auto;
  position: relative;
}

.clock-face {
  width: 100%;
  height: 100%;
  position: relative;
}

.hand {
  width: 50%;
  height: 6px;
  background: #333;
  position: absolute;
  top: 50%;
  transform-origin: 100%;
  transform: rotate(90deg);
  transition: all 0.05s;
  transition-timing-function: cubic-bezier(0.1, 2.7, 0.58, 1);
}

.hour-hand {
  width: 30%;
  left: 20%;
}

.min-hand {
  width: 40%;
  left: 10%;
}

.sec-hand {
  height: 2px;
  background: red;
}

JavaScript动态更新

function updateClock() {
  const now = new Date();
  const sec = now.getSeconds();
  const min = now.getMinutes();
  const hour = now.getHours();

  const secDeg = (sec / 60) * 360 + 90;
  const minDeg = (min / 60) * 360 + (sec / 60) * 6 + 90;
  const hourDeg = (hour / 12) * 360 + (min / 60) * 30 + 90;

  document.querySelector('.sec-hand').style.transform = `rotate(${secDeg}deg)`;
  document.querySelector('.min-hand').style.transform = `rotate(${minDeg}deg)`;
  document.querySelector('.hour-hand').style.transform = `rotate(${hourDeg}deg)`;
}

setInterval(updateClock, 1000);
updateClock();

关键点说明

  • transform-origin: 100%:确保指针围绕中心点旋转
  • cubic-bezier:添加指针跳动的弹性效果
  • 角度计算:将时间转换为旋转角度(360度对应12小时/60分钟/60秒)
  • 实时更新:通过setInterval每秒更新一次指针位置

扩展功能

  • 添加钟表刻度:通过伪元素在钟面边缘添加12个刻度标记
  • 样式美化:使用阴影、渐变或背景图片增强视觉效果
  • 数字显示:在钟表下方添加当前时间的数字显示

完整代码可直接复制到HTML文件中运行,无需额外依赖库。

标签: css
分享给朋友:

相关文章

css制作表单

css制作表单

使用CSS制作表单的基本方法 创建一个美观且功能完善的表单需要结合HTML结构和CSS样式。以下是关键步骤和示例代码: HTML基础结构 <form class="my-form"&…

vue制作css

vue制作css

在Vue中制作CSS的方法 Vue提供了多种灵活的方式来编写和管理CSS,可以根据项目需求选择适合的方法。 使用内联样式 内联样式可以直接在Vue组件的模板中编写,适用于简单的样式需求。 <…

css 制作报表

css 制作报表

CSS 制作报表的方法 使用 CSS 制作报表主要涉及表格样式的设计、布局优化以及响应式处理。以下是几种常见的方法和技巧: 基础表格样式 通过 CSS 可以增强 HTML 表格的视觉效果,使其更符合…

css制作圆

css制作圆

使用CSS制作圆形元素 通过CSS的border-radius属性可以轻松将元素变为圆形。以下是具体实现方法: 基本圆形实现 .circle { width: 100px; height:…

怎么制作css表格

怎么制作css表格

使用HTML和CSS创建表格 HTML提供<table>标签用于创建表格结构,CSS用于控制样式。以下是一个基础示例: <table class="styled-table">…

css制作春季踏青

css制作春季踏青

使用CSS制作春季踏青主题效果 背景设计 通过渐变背景模拟春日天空,使用柔和的色调如浅蓝、淡绿和粉色。可以添加云朵或小鸟的剪影作为装饰元素。 body { background: linear-…