• 首页
  • 说说
  • 友人
  • 留言
  • 赞赏
  • 建站史
  • 搜索
  • 夜间模式
    ©2025  Feng的小屋 Theme by OneBlog
    搜索
    标签
    # HTML # CSS # JS # 代码 # 分享 # 美化 # 感悟 # 小游戏 # 摄影 # 摄影知识
    🧑‍💻 代码

    3D电子数字时钟项目分享

    2025.07.06 / 49 阅读 / 0 评论 / 3557 字
    🧑‍💻 代码

    3D电子数字时钟项目分享

    阅读 49 评论 0 发表于2025.07.06
    AI摘要

    摘要:这篇文章介绍了一个使用HTML和CSS实现的3D电子数字时钟项目,该项目包括多个数字容器和表面容器,表面容器内含有众多方块元素,采用CSS样式和动画实现3D效果和动态展示,展示了HTML和CSS在创建复杂视觉效果方面的能力。

    HTML与CSS打造的3D数字时钟

    在网页开发的世界里,HTML 和 CSS 是构建网页基础与样式的强大工具。今天,我们要深入剖析一个由 HTML 和 CSS 实现的极具创意的项目,它包含了 3D 数字和方块动画效果,为网页增添了独特的视觉魅力。

    代码演示

    点击即可转跳至在线预览~

    项目概述

    这个项目主要由一个包含多个数字容器和一个表面容器组成,表面容器内有众多方块元素。通过精心设计的 CSS 样式和动画,实现了 3D 效果和动态展示。整体项目的代码包含在 runoob - test.html 文件中,它充分展示了 HTML 和 CSS 在创建复杂视觉效果方面的能力。

    HTML 结构分析

    数字容器

    <div class="container">
        <div class="digit"></div>
        <div class="digit"></div>
        <div class="digit"></div>
        <div class="digit"></div>
        <div class="digit"></div>
        <div class="digit"></div>

    container 类的 div 元素是整个项目的容器,它采用绝对定位并居中显示。内部的多个 digit 类的 div 元素可能用于后续展示数字效果,不过目前代码中未对其进行详细的样式和内容设置。

    表面容器与方块元素

    <div class="surface">
        <!-- 众多的方块元素,如 b1 - b94 -->
        <div class="block b1">
            <div class="block-outer">
                <div class="block-inner">
                    <div class="bottom"></div>
                    <div class="front"></div>
                    <div class="left"></div>
                    <div class="right"></div>
                </div>
            </div>
        </div>
        <!-- 其他方块元素... -->
    </div>

    surface 类的 div 元素用于承载众多的方块元素。每个方块元素由 block 类的 div 包裹,内部又分为 block-outer 和 block-inner 两层。block-inner 包含了 bottom、front、left 和 right 四个面,用于构建 3D 方块的外观。

    CSS 样式与动画效果

    全局样式

    * {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
    }
    
    body {
        background: radial-gradient(circle at center, transparent, #000 95%), linear-gradient(#444 2px, transparent 0) 0 0/20px 20px, linear-gradient(90deg, #444 2px, #000 0) 0 0/20px 20px;
        height: 100vh;
        margin: 0;
        overflow: hidden;
    }

    全局样式设置了所有元素的盒模型为 border-box,并为 body 元素设置了独特的背景,包括径向渐变和线性渐变,营造出一种网格状的黑暗背景效果。同时,将 body 的高度设置为视口高度,并隐藏溢出部分。

    3D 效果与容器样式

    .container, .surface, .block, .block-outer, .block-inner {
        transform-style: preserve-3d;
    }
    
    .container {
        animation: bounce 2s cubic-bezier(0.4, 0.1, 0.6, 0.9) infinite;
        display: flex;
        margin: auto;
        overflow: hidden;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 594px;
        height: 200px;
        perspective: 800px;
    }

    通过 transform-style: preserve-3d 属性,确保容器和内部元素能够正确呈现 3D 效果。container 元素使用了 bounce 动画,实现了上下弹跳的效果。同时,通过 perspective 属性设置了透视效果,增强了 3D 视觉感受。

    表面容器样式

    .surface {
        animation: tilt 2s -1.5s cubic-bezier(0.4, 0.1, 0.6, 0.9) infinite;
        display: block;
        width: 540px;
        height: 20px;
        margin: auto;
        transform: translateY(50px) rotateX(105deg) rotateZ(0deg);
        will-change: transform;
    }

    surface 元素使用了 tilt 动画,使其产生倾斜的动态效果。通过 transform 属性对其进行位置和角度的调整,让表面呈现出特定的 3D 姿态。

    方块样式

    .block-inner div {
        background-color: #74d447;
    }
    .block-inner > div {
        display: flex;
        flex-wrap: wrap;
        align-content: flex-start;
        position: absolute;
        width: 20px;
        height: 20px;
    }

    方块的内部元素使用绿色背景色,通过 position: absolute 进行绝对定位,并使用 flexbox 布局进行内部元素的排列。

    动画效果

    @keyframes bounce {
        0%, 100% {
            transform: translateY(0);
        }
        50% {
            transform: translateY(-50px);
        }
    }
    
    @keyframes tilt {
        0%, 100% {
            transform: translateY(50px) rotateX(105deg) rotateZ(0deg);
        }
        50% {
            transform: translateY(50px) rotateX(105deg) rotateZ(10deg);
        }
    }

    bounce 动画使 container 元素在垂直方向上上下弹跳,tilt 动画使 surface 元素在一定角度内倾斜,为整个项目增添了生动的动态效果。

    本文著作权归作者 [ Feng ] 享有,未经作者书面授权,禁止转载,封面图片来源于 [ 互联网 ] ,本文仅供个人学习、研究和欣赏使用。如有异议,请联系博主及时处理。
    代码HTMLCSSJS
    取消回复

    发表留言
    回复

    首页说说友人留言赞赏建站史
    Copyright©2025  All Rights Reserved.  Load:0.013 s
    Theme by OneBlog V3.6.3
    夜间模式

    开源不易,请尊重作者版权,保留基本的版权信息。