如何用CSS实现地球和月亮的公转
发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,如何用CSS实现地球和月亮的公转,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。纯CSS实现日地月的公转前言为了这次掘金的
千家信息网最后更新 2025年01月16日如何用CSS实现地球和月亮的公转HTML
如何用CSS实现地球和月亮的公转,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
纯CSS实现日地月的公转
前言
为了这次掘金的中秋活动,我也算是苦思冥想了两天,终于想到了一个在掘金没见人做过的东西(应该没做过吧,我也不知道)-- 用 HTML+CSS 模拟日地月的公转。
我们都知道中秋的月亮又大又圆,是因为太阳地球月亮在公转过程中处在了一条直线上,地球在中间,太阳和月球分别在地球的两端,这天的月相便是满月。这段可以略过,是为了跟中秋扯上关系。
但因为我根本没咋学过前端,这两天恶补了一下重学了 flexbox 和 grid ,成果应该说还挺好看(如果我的审美没有问题的话)。
配色我挺喜欢的,希望你也喜欢。
源码我放到了 CodePen 上,链接https://codepen.io/Mancuoj/pen/zYzwwEg
HTML
重点是CSS,HTML放上三个div
就OK了。
Mancuoj Mancuoj
背景和文字
导入我最喜欢的Lobster
字体,然后设为白色,字体细一点。
@import url("https://fonts.googleapis.com/css2?family=Lobster&display=swap");h2 { color: white; font-size: 60px; font-family: Lobster, monospace; font-weight: 100;}
背景随便找了一个偏黑紫色,然后把画的内容设置到中间。
body { margin: 0; height: 100vh; display: flex; align-items: center; justify-content: center; background-color: #2f3141;}.container { font-size: 10px; width: 40em; height: 40em; position: relative; display: flex; align-items: center; justify-content: center;}
日地月动画
众所周知:地球绕着太阳转,月球绕着地球转。
我们画的是公转,太阳就直接画出来再加个阴影高光,月亮地球转就可以了。
最重要的其实是配色(文章末尾有推荐网站),我实验好长时间的配色,最终用了三个渐变色来表示日地月。
日: linear-gradient(#fcd670, #f2784b);地: linear-gradient(#19b5fe, #7befb2);月: linear-gradient(#8d6e63, #ffe0b2);
CSS 应该难不到大家,随便看看吧。
轨道用到了border
,用银色线条当作公转的轨迹。
动画用到了自带的animation
,每次旋转一周。
.sun { position: absolute; width: 10em; height: 10em; background: linear-gradient(#fcd670, #f2784b); border-radius: 50%; box-shadow: 0 0 8px 8px rgba(242, 120, 75, 0.2);}.earth { --diameter: 30; --duration: 36.5;}.moon { --diameter: 8; --duration: 2.7; top: 0.3em; right: 0.3em;}.earth,.moon { position: absolute; width: calc(var(--diameter) * 1em); height: calc(var(--diameter) * 1em); border-width: 0.1em; border-style: solid solid none none; border-color: silver transparent transparent transparent; border-radius: 50%; animation: orbit linear infinite; animation-duration: calc(var(--duration) * 1s);}@keyframes orbit { to { transform: rotate(1turn); }}.earth::before { --diameter: 3; --color: linear-gradient(#19b5fe, #7befb2); --top: 2.8; --right: 2.8;}.moon::before { --diameter: 1.2; --color: linear-gradient(#8d6e63, #ffe0b2); --top: 0.8; --right: 0.2;}.earth::before,.moon::before { content: ""; position: absolute; width: calc(var(--diameter) * 1em); height: calc(var(--diameter) * 1em); background: var(--color); border-radius: 50%; top: calc(var(--top) * 1em); right: calc(var(--right) * 1em);}
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
地球
月亮
太阳
三个
内容
动画
字体
文章
月球
背景
帮助
好看
清楚
重要
众所周知
苦思冥想
东西
两端
前端
前言
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
如何查看服务器端口是否开放
达梦安全数据库管理系统v82
机器学习服务器安装教程
服务器12v开关电源安全吗
计算机网络技术 包括
大连软件园软件开发企业
415国家安全日网络安全知识
上国外网站的代理服务器
网络技术课程笔记
skynet游戏服务器架构
宝宝巴士网络技术有限公司
宜昌考拉云网络技术有限公司
北京仿真软件开发
英雄联盟手游不同服务器
10月12日网络安全校园日
网络安全保密管理员职责
软件开发记账
网络安全 执法主体
软件开发周报月报用什么模块
arm嵌入式软件开发流程
imap服务器怎么设置
网络安全行业如何造势
天津天听网络技术有限公司
长沙网络安全产业园工程
pl sql数据库修改数据
sql数据库 关闭语句
服务器怎么打补丁安全模式
把网络安全进行到底演讲稿
pdf转word服务器
火山视窗软件开发平台 破解版