如何用CSS实现地球和月亮的公转
发表于:2025-02-21 作者:千家信息网编辑
千家信息网最后更新 2025年02月21日,如何用CSS实现地球和月亮的公转,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。纯CSS实现日地月的公转前言为了这次掘金的
千家信息网最后更新 2025年02月21日如何用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安全错误
数据库的锁怎样保障安全
关于网络安全事件视频
数据库 替换 sql
乐陵软件开发报价
风暴战区服务器断开链接
临时文件存到服务器
数据库基础技术总结报告
可以在数据库中看做数据的是
激战2服务器时间
服务器的管理网口
在银行总行做软件开发工资如何
数据库入库用例
小程序注册需要服务器吗
服务器电池报警一直响
银行应用软件开发和维护
滴滴网络安全审查要持续多久
不属于数据库安全性控制的是
建 代理服务器
邵阳网络安全日
快三软件开发
央行网络安全
广州万户网络技术有...
软件开发行业现状与前景
海南大数据时钟监控网管服务器
sql服务器搭建
坦克世界亚服有什么服务器
博山oa软件开发
我的世界数据库链接
天门网络安全委员会
赛季服务器阵营比例
为了提高企业内部服务器的安全性