使用HTML5和CSS3实现生日蛋糕的制作

这篇文章主要介绍了关于使用HTML5和CSS3实现生日蛋糕的制作,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

“祝你生日快乐,祝你生日快乐……”,过生日有生日歌,生日蛋糕也是必不可少的,这篇文章主要为大家详细介绍了程序员利用纯HTML5+CSS3制作的生日蛋糕,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

以一个前端开发的身份绘制一个简单的蛋糕庆祝一下今天这个好日子吧,程序员庆生的乐趣与哀愁啊。写的比较简陋,感兴趣的看一下吧。

先发个效果图吧

使用HTML5和CSS3实现生日蛋糕的制作

蛋糕分为三个部分,底部蛋糕,顶层蛋糕和蜡烛部分。html的布局结构也是按照这三部分布局的。另外就是使用css定位和css3的rotate,内外阴影等效果调整部分dom元素样式。比较简单,相信码农都懂的。

不赘述其它有的没的了。

下面给出完整的的HTML代码和CSS代码

                    .birthday .container{            width:600px;            height:600px;            margin:0px auto;            background: #fafafa;            border-radius:5px;            position: relative;        }        /**       ** 顶层的       **/        .birthday .top-one{            position: absolute;            width:280px;            height: 280px;            bottom: 200px;            left:160px;        }        .birthday .top-one .bottom{            position: absolute;            width:280px;            height: 280px;            bottom:-30px;            border:1px solid #3e2001;            border-radius: 140px;            transform: rotateX(60deg);            z-index: 4;            background: #3e2001;            box-shadow: 0px 0px 20px #3e2001;        }        .birthday .top-one .top{            position: absolute;            width:280px;            height: 280px;            top:-50px;            border-radius: 140px;            background: #FFFFFF;            transform: rotateX(60deg);            box-shadow: 2px 2px 20px #b7b7b7;            z-index: 6;            background: -webkit-repeating-radial-gradient(circle, #783d01, #3e2001 10px, #914909 10px,white 20px);            background: -moz-repeating-radial-gradient(circle, #783d01, #3e2001 10px,#914909 10px,white 20px);        }        .birthday .top-one .side{            position: absolute;            top:95px;            width:280px;            height: 70px;            border:1px solid #3e2001;            border-top-width: 0px;            border-bottom-width: 0px;            background: #FFFFFF;            z-index: 5;            background: #3e2001;        }        /**        ** 底层的        **/        .birthday .bottom-one{            position: absolute;            width:400px;            height: 400px;            bottom: 0px;            left:100px;        }        .birthday .bottom-one .bottom{            position: absolute;            width:400px;            height: 400px;            bottom:-30px;            border:1px solid #914909;            border-radius: 200px;            transform: rotateX(60deg);            box-shadow: 2px 2px 20px #914909;            z-index: 1;            background: #3e2001;            overflow: hidden;        }        .birthday .bottom-one .line{            position: absolute;            width:400px;            height: 400px;            border-radius: 200px;            z-index: 1;        }        .birthday .bottom-one .line1{            bottom: 30px;            border:5px solid #783d01;            left:-5px;            z-index: 1;        }        .birthday .bottom-one .top{            position: absolute;            width:400px;            height: 400px;            top:-100px;            border:1px solid #3e2001;            border-radius: 200px;            background: #FFFFFF;            transform: rotateX(60deg);            z-index: 3;            background: #783d01;            box-shadow: inset 0px 0px 20px #3e2001;        }        .birthday .bottom-one .side{            position: absolute;            top:100px;            width:400px;            height: 130px;            border:1px solid #3e2001;            border-top-width: 0px;            border-bottom-width: 0px;            background: #3e2001;            z-index: 2;        }        /**        ** 底层的文字        **/        .birthday .flower{            position: relative;            text-align: justify;            z-index: 9;            top:200px;            font-size: 32px;            font-family: "Helvetica Neue", "Noto Sans CJK SC", "Source Han Sans CN";            color:#FFFFFF;            font-weight: bold;        }        .birthday .flower:after{            content:"";            display:inline-block;            position: relative;            width:100%;        }        .birthday .flower i{            position: relative;            width:80px;            line-height: 80px;            display: inline-block;            border-radius: 50%;            border:2px solid #783d01;            text-align: center;        }        /**        ** 顶层的文字        **/        .birthday .top-one .text{            width:100%;            text-align: center;            position: absolute;            top:165px;            z-index: 9;            margin:0px auto;            font-size: 30px;            color:#FFFFFF;            transform: rotateX(60deg) skew(10deg,20deg);        }        /**         ** 蜡烛        **/        .birthday .candle{            width:10px;            height:80px;            margin:0px auto;            position: absolute;            left:295px;            top:130px;            z-index: 9;        }        .birthday .candle .body{            width:10px;            height:70px;            margin:0px auto;            background: red;            border-bottom-width: 0px;        }        .birthday .candle .top{            width:10px;            height: 10px;            border-radius: 5px;            transform: rotateX(60deg);            position: relative;            top:5px;            background: red;        }        .birthday .candle .bottom{            width:10px;            height: 10px;            border-radius: 5px;            transform: rotateX(60deg);            position: relative;            bottom:5px;            background: red;            box-shadow: 1px 1px 10px red;        }        .birthday .candle .fire{            position: absolute;            width:6px;            height: 6px;            left:2px;            transform: rotate(45deg);            background: #ffd507;            box-shadow: 0px 0px 20px #ffff00, 2px 2px 10px red;        }        

Happy Birthday

okay,庆生开发的小Demo,以后可以尝试用Canvas画布或SVG试着在做一下,感谢阅读。

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

立即学习“前端免费学习笔记(深入)”;

相关推荐:

如何使用jQuery和HTML5实现手机摇一摇的换衣特效

html5的63行代码实现贪吃蛇游戏

以上就是使用HTML5和CSS3实现生日蛋糕的制作的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1610231.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 01:19:54
下一篇 2025年12月24日 01:20:08

相关推荐

  • 使用HTML和CSS3模拟心跳的实现方法

    本文通过代码给大家介绍了html+css3模拟心的跳动的实现方法,非常不错,具有参考借鉴价值,需要的朋友参考下吧 废话不多说了,直接给大家贴代码了,具体代码如下所示: 模拟心的跳动 * { margin: 0; padding: 0;}body { background-color: #D4CECE…

    好文分享 2025年12月24日
    000
  • CSS3实现预载动画效果的几种方法

    本篇文章主要介绍了css3动画:5种预载动画效果实例,内容挺不错的,现在分享给大家,也给大家做个参考。 实现如图所示的动画效果: 预载动画一:双旋圈 在两个不同方向旋转的圆圈。我们对内圈的转速定义了一个CSS代码,即内圈比外圈的速率快2倍。 实现如图所示: 立即学习“前端免费学习笔记(深入)”; h…

    2025年12月24日 好文分享
    000
  • 关于css3的单位vw和vh的使用

    这篇文章主要介绍了css3新单位vw、vh的使用教程,本文通过实例代码给大家介绍vw、vh、vmin、vmax 的含义及vw、vh与%百分比的区别,感兴趣的朋友一起看看吧 响应式布局的单位我们第一时间会想到通过rem单位来实现适配,但是它还需要内嵌一段脚本去动态计算跟元素大小。 比如: (funct…

    好文分享 2025年12月24日
    000
  • CSS3的default伪类选择器的解析

    css3 :default 伪类选择器只能作用在表单元素上,表示默认状态的表单元素。接下来通过本文给大家介绍css3 :default伪类选择器使用简介,感兴趣的朋友跟随本站小编一起看看吧 一、CSS3 :default伪类选择器简介 CSS3 :default 伪类选择器只能作用在表单元素上,表示…

    2025年12月24日 好文分享
    000
  • 使用CSS3画基本的图形

    这篇文章主要介绍了CSS3 画基本图形,圆形、椭圆形、三角形等的相关资料,需要的朋友可以参考下  CSS3 圆形 #css3-circle{ width: 150px; height: 150px; border-radius: 50%; background-color: #232323;} CS…

    好文分享 2025年12月24日
    000
  • CSS3中not()选择器实现最后一行li去除某种css样式的代码

    这篇文章主要介绍了关于css3中not()选择器实现最后一行li去除某种css样式的代码,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 在日常开发中经常会遇到在循环中的最后一个li不同于其他的li,要去除某种css样式,本文介绍的是利用CSS3新增的:not()伪类选择符,实现起来非…

    2025年12月24日
    000
  • 使用CSS3点击按钮实现背景渐变动画的效果

    这篇文章给大家介绍的是,利用css3实现当点击按钮的时候,按钮的背景是渐变动画的效果,实现后的效果非常好,开发的时候利用这种效果的按钮会给用户一种非常酷炫的感受,感兴趣的朋友们下面来一起看看吧。 效果图如下: 实例代码如下: css3给按钮添加背景渐变动画button {color:#FFF;fon…

    2025年12月24日
    000
  • CSS3的Flexbox骰子布局的实现及分析

    这篇文章主要介绍了关于css3的flexbox骰子布局的实现及分析,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 骰子布局顾名思义,就是好比骰子的一面最多可以放置9个点,而每个面放置的点数正好就是一个布局的模型图,这里我们就带来CSS3的Flexbox骰子布局的实现及问题讲解: 本文…

    好文分享 2025年12月24日
    000
  • CSS3的图层阴影和文字阴影的使用

    这篇文章主要介绍了关于css3的图层阴影和文字阴影的使用,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 box-shadow图层阴影属性和text-shadow文字阴影属性在用法上差不多,都以X轴和Y轴坐标系来控制阴影扩展,这里我们就来详解CSS3的图层阴影和文字阴影效果使用: bo…

    2025年12月24日 好文分享
    000
  • 用CSS3实现图片翻转效果

    这篇文章主要介绍了css3制作翻转效果的方法,css3打造3d翻牌效果,适用于扑克翻牌等游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 CSS3制作的翻牌效果,就是鼠标移到元素上,感觉可以看到元素背后的信息。大家如果制作考验记忆力的连连看、扑克类的游戏神马的,甚至给女朋友写一些话语,放在使用…

    2025年12月24日 好文分享
    000
  • 使用纯CSS3截取字符串

    这次给大家带来使用纯CSS3截取字符串,的注意事项有哪些,下面就是实战案例,一起来看一下。 代码实例如下: CSS #first{ width:120px; height:30px; background-color:#F30; overflow:hidden; text-overflow:clip…

    好文分享 2025年12月24日
    000
  • CSS3 实现侧边栏展开收起动画

    这篇文章主要介绍了如何使用css3 实现侧边栏展开收起动画,并附上了示例代码,非常的详细,推荐给需要的小伙伴。 @keyframes 规则用于创建动画。 @keyframes 中规定某项 CSS 样式,就能创建由当前样式逐渐改为新样式的动画效果 @keyframes 中创建动画时,请把它捆绑到某个选…

    好文分享 2025年12月24日
    000
  • 在CSS3中常用的几种颜色渐变模式

    现在html5  css3已经越来越流行,用css3实现p渐变已经不是什么难事了,这篇文章给大家整理了现在常用的三种颜色渐变模式,包括线性渐变、径向渐变和重复的线性渐变,文中通过示例代码介绍的很详细,有需要的朋友们可以参考借鉴,下面来一起看看吧。 一、线性渐变:linear-gradient 语法:…

    2025年12月24日 好文分享
    000
  • 如何通过CSS3进行2D转换

    转换是使元素改变形状、尺寸和位置的一种效果,CSS3包括2D转化和3D转化,在这里我们只接受2D转化! 1、translate()方法      通过 translate() 方法,元素从其当前位置移动,根据给定的位置参数进行转化      代码实现:    实际效果: 2.rotate() 方法 …

    2025年12月24日 好文分享
    000
  • css3的transform中scale缩放的分析

    这篇文章主要介绍了css3的transform中scale缩放的使用方法,需要的朋友可以参考下 下面我们从3个方面开始介绍: 1、scale(x,y) 对元素进行缩放 X表示水平方向缩放的倍数 | Y表示垂直方向的缩放倍数Y是一个可选参数,没有设置的话,则表示X,Y两个方向的缩放倍数是一样的。并以X…

    好文分享 2025年12月24日
    000
  • 利用CSS3编写类似iOS中的复选框及带开关的按钮的代码

    这篇文章主要介绍了使用css3编写类似ios中的复选框及带开关的按钮,需要的朋友可以参考下 checkbox多选 最近写了一个适合移动端的checkbox,如图: ps:中间的勾勾是iconfont,iOS风格的。 具体的HTML: 立即学习“前端免费学习笔记(深入)”; 默认未选中 默认选中 橘黄…

    2025年12月24日
    000
  • 如何用css3绘制一个圆的loading转圈动画

    这篇文章主要介绍了css3如何绘制一个圆圆的loading圈的相关资料,内容挺不错的,现在分享给大家,也给大家做个参考。 如何绘制一个圆圆的loading圈 小程序里需要一个像下面的loading,原生的没有,引入别的组件库又太大,所有决定自己写个。 1.基本原理 动态的实现原理是给8个小圆圈设置透…

    2025年12月24日
    000
  • 关于CSS3中Animation动画属性的用法解析

    这篇文章主要为大家详细介绍了css3中animation动画属性用法,教大家如何使用animation动画,感兴趣的小伙伴们可以参考一下 要使用animation动画,先要熟悉一下keyframes,Keyframes的语法规则:命名是由”@keyframes”开头,后面紧接着是这个“动画的名称”加…

    2025年12月24日
    000
  • CSS3区域模块region的相关代码

    这篇文章主要介绍了css3区域模块region相关编写示例,对页面排版相关部分的工作非常有帮助意义,需要的朋友可以参考下 印刷媒体,例如一本杂志或一份报纸,相比网站最大的优势是完全灵活的安排页面和段落布局。例如,印刷媒体已经能够优雅地在多个列中填充内容,甚至复杂到如下面屏幕截图所示。 然而,由于We…

    2025年12月24日 好文分享
    000
  • 如何利用CSS3的线性渐变linear-gradient制作边框

    这篇文章主要介绍了关于如何利用css3的线性渐变linear-gradient制作边框,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 linear-gradient线条用来制作边框还是比较给力的,尤其是利用其描边可以制作一些复制的边框效果,这里我们就来看一下利用CSS3的线性渐变li…

    好文分享 2025年12月24日
    000

发表回复

登录后才能评论
关注微信