来自程序员的浪漫圣诞&纯CSS3打造的圣诞祝福【献给前端初学者】内附代码以及运行方法

简介: 来自程序员的浪漫圣诞&纯CSS3打造的圣诞祝福【献给前端初学者】内附代码以及运行方法

如果你想编一个简单的圣诞树送给你的男/女朋友的话, 这里也许有你要的东西,

对于你也许他很简单,不值一提。 但是对于小白,也许是他入门HTML、css3的极佳小项目 代码运行方式:代码运行很简单,解压缩文件夹,即可获得如下文件,只需要双击index.html即可运行。源代码的话可以用编辑器打开index.html即可查看或者修改。

a275628b2913338a68fd16e0134d4e1.png

代码我已分享,获取方式如下(文章底部有福利):

获取方式一:csdn下载

获取方式二:关注公众号:zhulin1028。回复:【css动画】即可免费获取。

上动图:

12ed30666f9b4fc3a6a7b4ac249e0a1.png

HTML部分:

<div class="header">
  <div class="wrapper">
    <div class="christmas-tree tree1"></div>
    <div class="christmas-tree tree2"></div>
    <div class="christmas-tree tree3"></div>
    <div class="snowman"></div> 
    <div class="christmas-tree tree4"></div>
    <div class="christmas-tree tree5"></div>
    <div class="christmas-tree tree6"></div>
  </div>
</div>
复制代码

CSS3部分

<style type="text/css"> 
body{margin:0;padding:0;list-style-type:none;}  
.header{
  margin: 0 0 30px;
  background: url(css/img/header-bg.png);
  background: url(css/img/snow-bg.png) repeat-y center, url(css/img/header-bg.png);
  -webkit-animation: animate-snow 9s linear infinite;
  -moz-animation: animate-snow 9s linear infinite;
  -ms-animation: animate-snow 9s linear infinite;
  animation: animate-snow 9s linear infinite;   
}
.zhulin{
  margin: 0 0 30px;
  background: url(css/img/zhulin1028.png) no-repeat;
  width:100%;
    height:300px; 
}
@-webkit-keyframes animate-snow
{
  0% { background-position: center 0, 0 0;}
  100% { background-position: center 885px, 0 0;}
}
@-moz-keyframes animate-snow
{
  0% { background-position: center 0, 0 0;}
  100% { background-position: center 885px, 0 0;}
}
@-ms-keyframes animate-snow
{
  0% { background-position: center 0, 0 0;}
  100% { background-position: center 885px, 0 0;}
}   
@keyframes animate-snow
{
  0% { background-position: center 0, 0 0;}
  100% { background-position: center 885px, 0 0;}
} 
.wrapper{ width: 960px; height: 315px; margin: auto; overflow: hidden; position: relative; background-image: url(css/img/wrapper-bg.png); background-repeat: no-repeat; background-position: bottom;    } 
@-moz-keyframes animate-drop {
  0% {opacity:0;-moz-transform: translate(0, -315px);}
  100% {opacity:1;-moz-transform: translate(0, 0);}
}
@-webkit-keyframes animate-drop {
  0% {opacity:0;-webkit-transform: translate(0, -315px);}
  100% {opacity:1;-webkit-transform: translate(0, 0);}
}
@-ms-keyframes animate-drop {
  0% {opacity:0;-ms-transform: translate(0, -315px);}
  100% {opacity:1;-ms-transform: translate(0, 0);}
}
@keyframes animate-drop {
  0% {opacity:0;transform: translate(0, -315px);}
  100% {opacity:1;transform: translate(0, 0);}
}   
.christmas-tree, .snowman {
  position: absolute;
  -moz-animation: animate-drop 1s linear;
  -webkit-animation: animate-drop 1s linear;
  -ms-animation: animate-drop 1s linear;
  animation: animate-drop 1s linear;
}
.christmas-tree {
  width: 112px;
  height: 137px;
  background: url(css/img/christmas-tree.png);
}
.snowman {
  width: 115px;
  height: 103px;
  top: 195px;
  left: 415px;
  background: url(css/img/snowman.png);
  -moz-animation-duration: .6s;
  -webkit-animation-duration: .6s;
  -ms-animation-duration: .6s;
  animation-duration: .6s;
} 
.tree1 {
  top: 165px;
  left: 35px;
  -moz-animation-duration: .6s;
  -webkit-animation-duration: .6s;
  -ms-animation-duration: .6s;
  animation-duration: .6s;    
}
.tree2 {
  left: 185px;
  top: 175px; 
  -moz-animation-duration: .9s;
  -webkit-animation-duration: .9s;
  -ms-animation-duration: .9s;
  animation-duration: .9s;    
}
.tree3 {
  left: 340px;
  top: 125px; 
  -moz-animation-duration: .7s;
  -webkit-animation-duration: .7s;
  -ms-animation-duration: .7s;
  animation-duration: .7s;    
}
.tree4 {
  left: 555px;
  top: 155px; 
  -moz-animation-duration: .8s;
  -webkit-animation-duration: .8s;
  -ms-animation-duration: .8s;
  animation-duration: .8s;    
}
.tree5 {
  left: 710px;
  top: 170px; 
  -moz-animation-duration: .7s;
  -webkit-animation-duration: .7s;
  -ms-animation-duration: .7s;
  animation-duration: .7s;    
}
.tree6 {
  left: 855px;
  top: 125px; 
  -moz-animation-duration: .6s;
  -webkit-animation-duration: .6s;
  -ms-animation-duration: .6s;
  animation-duration: .6s;    
} 
</style>


作者:zhulin1028

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关文章
|
16天前
|
缓存 前端开发 JavaScript
前端开发的必修课:如何让你的网页在弱网环境下依然流畅运行?
【10月更文挑战第30天】随着移动互联网的普及,弱网环境下的网页性能优化变得尤为重要。本文详细介绍了如何通过了解网络状况、优化资源加载、减少HTTP请求、调整弱网参数和代码优化等方法,提升网页在弱网环境下的加载速度和流畅性,从而改善用户体验。
93 4
|
14天前
|
Web App开发 前端开发 JavaScript
揭秘!前端大牛们如何巧妙利用CSS3,打造炫酷视觉效果!
【10月更文挑战第31天】前端开发面临复杂布局的挑战,本文介绍了几种提升开发效率和代码质量的工具和技术。基础的HTML和CSS可以应对大部分布局需求,而Firefox开发者工具、VS Code、Vue、React等则能应对更复杂的布局,帮助开发者构建高性能、用户友好的网页应用。
25 4
|
14天前
|
机器学习/深度学习 自然语言处理 前端开发
前端神经网络入门:Brain.js - 详细介绍和对比不同的实现 - CNN、RNN、DNN、FFNN -无需准备环境打开浏览器即可测试运行-支持WebGPU加速
本文介绍了如何使用 JavaScript 神经网络库 **Brain.js** 实现不同类型的神经网络,包括前馈神经网络(FFNN)、深度神经网络(DNN)和循环神经网络(RNN)。通过简单的示例和代码,帮助前端开发者快速入门并理解神经网络的基本概念。文章还对比了各类神经网络的特点和适用场景,并简要介绍了卷积神经网络(CNN)的替代方案。
|
1月前
|
存储 弹性计算 算法
前端大模型应用笔记(四):如何在资源受限例如1核和1G内存的端侧或ECS上运行一个合适的向量存储库及如何优化
本文探讨了在资源受限的嵌入式设备(如1核处理器和1GB内存)上实现高效向量存储和检索的方法,旨在支持端侧大模型应用。文章分析了Annoy、HNSWLib、NMSLib、FLANN、VP-Trees和Lshbox等向量存储库的特点与适用场景,推荐Annoy作为多数情况下的首选方案,并提出了数据预处理、索引优化、查询优化等策略以提升性能。通过这些方法,即使在资源受限的环境中也能实现高效的向量检索。
|
1月前
|
前端开发 JavaScript
CSS样式穿透技巧:利用scoped与deep实现前端组件样式隔离与穿透
CSS样式穿透技巧:利用scoped与deep实现前端组件样式隔离与穿透
163 1
|
2月前
|
前端开发
前端基础(五)_CSS文本文字属性、背景颜色属性
本文详细介绍了CSS中关于文本和背景颜色的样式属性。包括字体大小、字体族、字体加粗、字体样式、文本行高、`font`属性、文本颜色、文本对齐方式、文本装饰线、首行缩进等文本属性,以及背景颜色、背景图片、背景重复、背景位置等背景属性。文章通过示例代码展示了这些属性的具体应用和效果。
34 3
前端基础(五)_CSS文本文字属性、背景颜色属性
|
1月前
|
前端开发 容器
前端技术分享:利用CSS Grid布局实现响应式设计
【10月更文挑战第1天】前端技术分享:利用CSS Grid布局实现响应式设计
|
1月前
|
前端开发 UED 容器
前端技术分享:利用 CSS Grid 实现响应式布局
【10月更文挑战第1天】前端技术分享:利用 CSS Grid 实现响应式布局
54 2
|
26天前
|
NoSQL 前端开发 MongoDB
前端的全栈之路Meteor篇(三):运行在浏览器端的NoSQL数据库副本-MiniMongo介绍及其前后端数据实时同步示例
MiniMongo 是 Meteor 框架中的客户端数据库组件,模拟了 MongoDB 的核心功能,允许前端开发者使用类似 MongoDB 的 API 进行数据操作。通过 Meteor 的数据同步机制,MiniMongo 与服务器端的 MongoDB 实现实时数据同步,确保数据一致性,支持发布/订阅模型和响应式数据源,适用于实时聊天、项目管理和协作工具等应用场景。
|
2月前
|
前端开发 程序员
CSS前端学习(online tuorials)
CSS前端学习(online tuorials)
22 5