20 太空漫游

效果演示

20-太空漫游.gif

实现了一个太空漫游的动画效果,其中包括火箭、星星和月亮。当鼠标悬停在卡片上时,太阳和星星会变成黄色,火箭会变成飞机,月亮会变成小型的月亮。整个效果非常炫酷,可以让人想起科幻电影中的太空漫游。

Code

  <div class="card"><div class="star star-1"></div><div class="star star-2"></div><div class="star star-3"></div><div class="star star-4"></div><div class="star star-5"></div><div class="star star-6"></div><div class="star star-7"></div><div class="card-info"><span>To the moon!</span></div><svg class="moon" viewBox="0 0 20 20"><pathd="M 10 9 z z M 7.007 6.552 c 0 -2.259 0.795 -4.33 2.117 -5.955 C 4.34 1.042 0.594 5.07 0.594 9.98 c 0 5.207 4.211 9.426 9.406 9.426 c 2.94 0 5.972 -1.354 7.696 -3.472 c -0.289 0.026 -0.987 0.044 -1.283 0.044 C 11.219 15.979 7.007 11.759 7.007 6.552 z"></path></svg><svg class="rocket" viewBox="48.0129 48.1783 416 415.6"><pathd="M461.81,53.81a4.4,4.4,0,0,0-3.3-3.39c-54.38-13.3-180,34.09-248.13,102.17a294.9,294.9,0,0,0-33.09,39.08c-21-1.9-42-.3-59.88,7.5-50.49,22.2-65.18,80.18-69.28,105.07a9,9,0,0,0,9.8,10.4l81.07-8.9a180.29,180.29,0,0,0,1.1,18.3,18.15,18.15,0,0,0,5.3,11.09l31.39,31.39a18.15,18.15,0,0,0,11.1,5.3,179.91,179.91,0,0,0,18.19,1.1l-8.89,81a9,9,0,0,0,10.39,9.79c24.9-4,83-18.69,105.07-69.17,7.8-17.9,9.4-38.79,7.6-59.69a293.91,293.91,0,0,0,39.19-33.09C427.82,233.76,474.91,110.9,461.81,53.81ZM298.66,213.67a42.7,42.7,0,1,1,60.38,0A42.65,42.65,0,0,1,298.66,213.67Z"></path></svg></div>
body {height: 100vh; /* 设置body的高度为视口高度的100% */display: flex; /* 使用flexbox将内容垂直和水平居中 */justify-content: center; /* 水平居中内容 */align-items: center; /* 垂直居中内容 */background-color: #e8e8e8; /* 设置body的背景颜色 */
}.card {width: 290px; /* 设置卡片的宽度 */height: 350px; /* 设置卡片的高度 */background: linear-gradient(135deg, rgba(48, 48, 48, 1) 48%, rgba(0, 0, 0, 1) 100%); /* 设置卡片的线性渐变背景 */background-size: 300%, 300%; /* 设置背景的尺寸为300% */display: flex; /* 使用flexbox将内容垂直和水平居中 */align-items: center; /* 垂直居中内容 */justify-content: center; /* 水平居中内容 */position: relative; /* 设置卡片的定位为相对定位 */border-radius: 15px; /* 设置卡片的圆角边框 */box-shadow: 5px 5px 15px 5px #000000; /* 设置卡片的阴影效果 */overflow: hidden; /* 隐藏卡片内容溢出部分 */transition: all 1s ease; /* 设置卡片的过渡效果 */
}.moon {width: 70px; /* 设置月亮图标的宽度 */height: 70px; /* 设置月亮图标的高度 */top: 15%; /* 设置月亮图标距离卡片顶部的位置 */right: 120px; /* 设置月亮图标距离卡片右侧的位置 */position: absolute; /* 设置月亮图标的定位为绝对定位 */fill: white; /* 设置月亮图标的填充颜色为白色 */transform: rotate(-20deg); /* 设置月亮图标的旋转角度为-20度 */transition: all 1s ease; /* 设置月亮图标的过渡效果 */
}.rocket {width: 70px; /* 设置火箭图标的宽度 */height: 70px; /* 设置火箭图标的高度 */bottom: -2%; /* 设置火箭图标距离卡片底部的位置 */left: -2%; /* 设置火箭图标距离卡片左侧的位置 */position: absolute; /* 设置火箭图标的定位为绝对定位 */fill: white; /* 设置火箭图标的填充颜色为白色 */transition: all 1.9s ease; /* 设置火箭图标的过渡效果 */
}.star {position: absolute; /* 设置星星图标的定位为绝对定位 */background: radial-gradient(circle, rgba(251, 239, 63, 1) 0%, rgba(255, 253, 212, 1) 100%); /* 设置星星图标的径向渐变背景 */clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%); /* 设置星星图标的剪裁路径 */
}.star-1 {width: 100px; /* 设置星星1的宽度 */height: 100px; /* 设置星星1的高度 */bottom: 90px; /* 设置星星1距离卡片底部的位置 */left: -15px; /* 设置星星1距离卡片左侧的位置 */transition: all 1s ease; /* 设置星星1的过渡效果 */
}.star-2 {width: 150px; /* 设置星星2的宽度 */height: 150px; /* 设置星星2的高度 */top: -10%; /* 设置星星2距离卡片顶部的位置 */left: -10%; /* 设置星星2距离卡片左侧的位置 */transition: all .5s ease; /* 设置星星2的过渡效果 */
}.star-3 {width: 100px; /* 设置星星3的宽度 */height: 100px; /* 设置星星3的高度 */bottom: 5%; /* 设置星星3距离卡片底部的位置 */right: -15px; /* 设置星星3距离卡片右侧的位置 */transition: all .3s ease; /* 设置星星3的过渡效果 */
}.star-4 {width: 20px; /* 设置星星4的宽度 */height: 20px; /* 设置星星4的高度 */top: 4%; /* 设置星星4距离卡片顶部的位置 */right: 5px; /* 设置星星4距离卡片右侧的位置 */transition: all 1.4s ease; /* 设置星星4的过渡效果 */
}.star-5 {width: 20px; /* 设置星星5的宽度 */height: 20px; /* 设置星星5的高度 */bottom: 24%; /* 设置星星5距离卡片底部的位置 */right: 45%; /* 设置星星5距离卡片右侧的位置 */animation: rotate 3s normal linear infinite; /* 设置星星5的旋转动画 */
}.star-6 {width: 20px; /* 设置星星6的宽度 */height: 20px; /* 设置星星6的高度 */top: 14%; /* 设置星星6距离卡片顶部的位置 */right: 25%; /* 设置星星6距离卡片右侧的位置 */animation: rotate 5s normal linear infinite; /* 设置星星6的旋转动画 */
}.star-7 {width: 40px; /* 设置星星7的宽度 */height: 40px; /* 设置星星7的高度 */top: 34%; /* 设置星星7距离卡片顶部的位置 */right: 65%; /* 设置星星7距离卡片右侧的位置 */animation: rotate 5s normal linear infinite; /* 设置星星7的旋转动画 */
}.card-info span {font-size: 1.2em; /* 设置卡片信息中span元素的字体大小 */color: white; /* 设置卡片信息中span元素的字体颜色为白色 */font-weight: 600; /* 设置卡片信息中span元素的字体粗细为600 */text-transform: uppercase; /* 将卡片信息中span元素的文本转换为大写 */transition: all 1s ease; /* 设置卡片信息中span元素的过渡效果 */
}.card:hover {background: rgb(48, 48, 48); /* 设置鼠标悬停时卡片的背景颜色 */background: linear-gradient(135deg, rgba(48, 48, 48, 1) 10%, rgba(0, 0, 0, 1) 90%); /* 设置鼠标悬停时卡片的线性渐变背景 */background-size: 100%, 100%; /* 设置鼠标悬停时背景的尺寸为100% */
}.card:hover .star-1,
.card:hover .star-3 {background: linear-gradient(90deg, rgba(255, 241, 0, 1) 0%, rgba(246, 249, 93, 1) 77%, rgba(238, 255, 0, 1) 100%); /* 设置鼠标悬停时星星1和星星3的背景颜色 */transform: scale(1.2) rotate(10deg); /* 设置鼠标悬停时星星1和星星3的缩放和旋转效果 */
}.card:hover .star-2,
.card:hover .star-4,
.card:hover .star-5 {background: linear-gradient(90deg, rgba(255, 241, 0, 1) 0%, rgba(246, 249, 93, 1) 77%, rgba(238, 255, 0, 1) 100%); /* 设置鼠标悬停时星星2、星星4和星星5的背景颜色 */transform: scale(1.2) rotate(-150deg); /* 设置鼠标悬停时星星2、星星4和星星5的缩放和旋转效果 */
}.card:hover .rocket {transform: scale(.3) translate(450px, -730px) rotate(-260deg); /* 设置鼠标悬停时火箭图标的缩放、平移和旋转效果 */
}.card:hover .moon {width: 50px; /* 设置鼠标悬停时月亮图标的宽度 */height: 50px; /* 设置鼠标悬停时月亮图标的高度 */
}.card:hover span {font-size: 1.5em; /* 设置鼠标悬停时卡片信息中span元素的字体大小 */
}@keyframes rotate {0% {-webkit-transform: rotate3d(0, 0, 1, 0deg); /* 设置旋转动画的初始状态 */transform: rotate3d(0, 0, 1, 0deg);}25% {-webkit-transform: rotate3d(0, 0, 1, 90deg); /* 设置旋转动画的25%状态 */transform: rotate3d(0, 0, 1, 90deg);}50% {-webkit-transform: rotate3d(0, 0, 1, 180deg); /* 设置旋转动画的50%状态 */transform: rotate3d(0, 0, 1, 180deg);}75% {-webkit-transform: rotate3d(0, 0, 1, 270deg); /* 设置旋转动画的75%状态 */transform: rotate3d(0, 0, 1, 270deg);}100% {-webkit-transform: rotate3d(0, 0, 1, 360deg); /* 设置旋转动画的结束状态 */transform: rotate3d(0, 0, 1, 360deg);}
}

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

淘宝商品详情API接口(item_get-获得淘宝商品详情)主图,属性,sku,价格,搜索商品列表

淘宝开放平台提供了API接口&#xff0c;允许开发者获取淘宝商品的相关信息。为了获取商品详情&#xff0c;您可以使用 item_get API接口。以下是如何使用此API接口来获取商品的主图、属性、SKU、价格以及搜索商品列表的简要说明&#xff1a; 公共参数 名称类型必须描述keyStr…

面试之线程状态

1.线程有哪些状态 1.1Java线程的六种状态 Java 线程六种状态 新建 当一个线程对象被创建&#xff0c;但还未调用 start 方法时处于新建状态 此时未与操作系统底层线程关联 可运行 调用了 start 方法&#xff0c;就会由新建进入可运行 此时与底层线程关联&#xff0c;由操作…

【Turtle库】圣诞树

在寒冷的冬季&#xff0c;没有什么比一棵亮丽的圣诞树更能带给我们温暖和快乐。而现在&#xff0c;我们将使用Python编程语言来绘制这样一棵美丽的圣诞树。 首先&#xff0c;我们需要导入Python的turtle模块&#xff0c;它可以帮助我们绘制图形。然后&#xff0c;我们可以定义一…

深入Pandas(二):高级数据处理技巧

文章目录 系列文章目录引言时间序列分析可视化示例 高级数据分析技术分组与聚合操作时间序列分析 高级数据操作数据合并与重塑示例&#xff1a;数据合并merge示例&#xff1a;数据合并concat示例&#xff1a;数据重塑 - 透视表 高级索引技巧 结论 系列文章目录 Python数据分析…

Springcloud 微服务实战笔记 Eureka

服务治理 服务注册 在服务治理框架中&#xff0c;通常都会构建一个注册中心&#xff0c;每个服务单元向注册中心登记自己提供的服务&#xff0c;将主机与端口号、版本号、通信协议等一些附加信息告知注册中心&#xff0c;注册中心按服务名分类组织服务清单。当服务启动后&…

docker kingbase

docker kingbase run 命令 docker run -tid \ -e ENABLE_CIyes \ -e NEED_STARTyes \ -e DB_MODEoracle \ -e DB_USERkingbase \ -e DB_PASSWORD123456 \ --privileged \ -p 4321:54321 \ -v /home/admin/SoftWare/volume/kingbase/userdata/data:/home/kingbase/userdata/da…

Unity组件开发--传送点

本组件仅实现A传送点到B传送的功能&#xff0c;是可以双向传送的&#xff0c;如果只要单向传送&#xff0c;可以另外改脚本实现&#xff1b; 先看效果&#xff1a; unity组件传送点演示 1.传送组件shader是怎么写的&#xff1a;这种效果的实现方案 shader编辑器是这样的&#…

HTML 使用 ruby 给汉字加拼音

使用 ruby 给汉字加拼音 兼容性 使用 ruby 给汉字加拼音 大家有没有遇到过要给汉字头顶上加拼音的需求? 如果有的话, 你是怎么解决的呢? 如果费尽心思, 那么你可能走了很多弯路, 因为 HTML 原生就有这样的标签来帮我们实现类似的需求. <ruby> ruby 本身是「红宝石」…

test mutation-01-变异测试 PITest PIT 是一种先进的变异测试系统,为 Java 和 JVM 提供黄金标准的测试覆盖率。

拓展阅读 test 系统学习-04-test converate 测试覆盖率 jacoco 原理介绍 test 系统学习-05-test jacoco 测试覆盖率与 idea 插件 test 系统学习-06-test jacoco SonarQube Docker learn-29-docker 安装 sonarQube with mysql Ubuntu Sonar PITest 实际应用的变异测试 …

Linux操作实例 – 输入输出重定向

Linux操作实例 – 输入输出重定向 Input & Output Redirection Examples in Linux By Jackson 1. 前言 在操作计算机的时候&#xff0c;我们能够很容易通过键盘、鼠标给计算机输入信息&#xff08;例如&#xff1a;写公文、邮件&#xff0c;同时通过显示器得到输出。这就…

C++Qt6 多种排序算法的比较 数据结构课程设计 | JorbanS

一、 问题描述 在计算机科学与数学中&#xff0c;一个排序算法&#xff08;英语&#xff1a;Sorting algorithm&#xff09;是一种能将一串资料依照特定排序方式排列的算法。最常用到的排序方式是数值顺序以及字典顺序。有效的排序算法在一些算法&#xff08;例如搜索算法与合…

如何下载 ASTR 数据

ASTR (Advanced Spaceborne Thermal Emission and Reflection Radiometer) 卫星是由美国宇航局 (NASA) 和日本国家航空航天局 (JAXA) 合作开发和运营的。ASTR 主要用于地球观测&#xff0c;其主要仪器包括三个子系统&#xff1a; VNIR (Visible and Near Infrared) 子系统&…