首页 > 其他分享 >使用CSS3模拟太阳、地球、月球旋转的特效

使用CSS3模拟太阳、地球、月球旋转的特效

时间:2024-12-22 09:20:27浏览次数:7  
标签:CSS3 特效 top 50% moon 月球 height margin left

要使用CSS3模拟太阳、地球和月球的旋转,你可以利用CSS3的动画和转换功能。以下是一个简单的示例,展示了如何使用HTML和CSS来模拟这个系统。

HTML

<div class="solar-system">
    <div class="sun"></div>
    <div class="earth-orbit">
        <div class="earth">
            <div class="moon-orbit">
                <div class="moon"></div>
            </div>
        </div>
    </div>
</div>

CSS

.solar-system {
    position: relative;
    width: 800px;
    height: 800px;
    margin: 50px auto;
}

.sun {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100px;
    height: 100px;
    margin-top: -50px;
    margin-left: -50px;
    background-color: gold;
    border-radius: 50%;
}

.earth-orbit {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 500px;
    height: 500px;
    margin-top: -250px;
    margin-left: -250px;
    border: 1px dashed #000; /* Orbit path, optional */
    animation: rotate 10s linear infinite;
}

.earth {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100px;
    height: 100px;
    margin-top: -50px;
    background-color: blue;
    border-radius: 50%;
}

.moon-orbit {
    position: absolute;
    top: 50%;
    left: 150px; /* Adjust this to change moon's orbit radius */
    width: 200px;
    height: 200px;
    margin-top: -100px;
    border: 1px dashed #000; /* Orbit path, optional */
    animation: rotate 2.5s linear infinite; /* Faster rotation for moon */
}

.moon {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 50px;
    height: 50px;
    margin-top: -25px;
    margin-left: -25px;
    background-color: gray;
    border-radius: 50%;
}

/* CSS Animation for rotation */
@keyframes rotate {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

这个示例中,.solar-system 是整个太阳系的容器。.sun 代表太阳,位于容器的中心。.earth-orbit 代表地球的轨道,它是一个以太阳为中心的圆形路径。.earth 是地球,它沿着 .earth-orbit 旋转。同样,.moon-orbit 是月球的轨道,它以地球为中心,而 .moon 则沿着这个轨道旋转。

通过调整CSS中的动画时长、轨道大小等参数,你可以进一步自定义这个太阳系模型的动态行为。

标签:CSS3,特效,top,50%,moon,月球,height,margin,left
From: https://www.cnblogs.com/ai888/p/18621730

相关文章

  • 使用CSS3制作立体式3D旋转的动画效果
    要使用CSS3制作立体式3D旋转的动画效果,你可以使用CSS3的3D转换(transforms)和动画(animations)特性。以下是一个简单的示例,展示如何创建一个围绕Y轴旋转的3D立方体动画:<!DOCTYPEhtml><html><head><style>.scene{width:200px;height:20......
  • 使用HTML5制作一个螺旋的动画特效
    制作一个螺旋动画特效可以通过多种方式来实现,这里我将为你提供一个基于HTML5<canvas>元素和JavaScript的简单示例。以下是一个简单的螺旋动画特效的示例代码:<!DOCTYPEhtml><html><head><title>螺旋动画特效</title><style>body{margin:0;}......
  • 使用纯CSS3实现大象走路的动画
    创建一个完整的大象走路动画仅使用CSS3是一个相当复杂的任务,因为它涉及到多个部分的动画,如大象的四肢、身体、头部等。以下是一个简化的示例,说明如何使用CSS3的@keyframes和animation属性来制作一个大象走路的基本动画。首先,我们需要定义大象的基本HTML结构:<divclass="elephant......
  • 使用CSS3写一个图片左右切换的弹性动画
    要使用CSS3创建一个图片左右切换的弹性动画,你可以使用@keyframes来定义动画,并利用animation属性将其应用到元素上。以下是一个简单的示例,展示了如何实现这样的动画效果:HTML:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"co......
  • 【Unity粒子特效分享-卡通魔法特效】
    卡通魔法特效前言回顾效果图前言回顾可以点击传送门预览。传送门:【Unity粒子特效分享-宇宙星系】.传送门:【Unity粒子特效分享-魔法粒子特效超炫大招】.传送门:【Unity粒子特效分享-刀光特效】.传送门:【Unity粒子特效分享-技能特效】.传送门:【Unity粒......
  • 写一个鼠标经过头像时,头像旋转180度并放大2位,离开时恢复原样的特效
    为了实现这个效果,你可以使用HTML、CSS和JavaScript。下面是一个简单的示例,展示了如何使用这些技术来创建一个鼠标经过头像时旋转180度并放大2倍,离开时恢复原样的特效。HTML<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"conte......
  • 实现一个动态的星空特效
    要实现一个动态的星空特效,你可以使用HTML的<canvas>元素和JavaScript。下面是一个简单的示例,展示如何创建一个动态的星空背景:HTML:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="widt......
  • 零代码生成管道+粒子特效!炫酷智慧管廊可视化!
    本系统通过数字孪生技术,实现智慧管廊可视化管理,系统打破了传统管理模式下数据分散、孤立的壁垒,将GIS地理信息数据与城市管道、设备数据深度融合,实现了数据的互联互通与共享协同,助力管理者做出科学决策。1.丰富的标绘功能丰富的标绘功能是本系统的一大亮点,其创新性地实现了零......
  • css3的动画你觉得难吗?为什么?
    CSS3的动画功能为前端开发带来了丰富的动态效果和交互体验。关于CSS3动画的难度,这实际上取决于个人的经验、技能水平和具体需求。以下是对CSS3动画难度的一些观点:基础入门相对简单:对于已经熟悉CSS的前端开发者来说,CSS3动画的基础入门并不困难。例如,通过简单的属性如transition和......
  • jquery多国语言切换特效
    这是一款实现多国语言切换的jquery特效。在这个示例中,通过简单的js代码,实现包括中文和英文在内的7种不同国家语言的切换效果。 在线预览 下载 使用方法在页面中引入jquery和style.css。<linkrel="stylesheet"href="css/style.css"><scripttype="text/javascr......