36纯 CSS 动画原理,在页面上表现日蚀现象

原文地址:https://segmentfault.com/a/1190000015070543

感想: 动画,背景颜色

HTML code:

<div class="sky">
    <div class="sun"></div>
    <div class="moon"></div>
</div>

CSS code:

html, body {
    margin: 0;
    padding: 0;
}
.sky{
    position: relative;
    width: 100vw;
    height: 100vh;
    /* 让子元素垂直居中 */
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: skyblue;
    animation: animate-sky 10s linear infinite;
    /* 隐藏滚动条 */
    overflow: hidden;
}
/* 太阳与月亮共同点 */
.sun,.moon{
    position: absolute;
    width: 50vmin;
    height: 50vmin;
    border-radius: 50%;
    animation: 10s linear infinite;
}
/* 太阳 */
.sun{
    background-color: gold;
    animation-name: animate-sun;
}
/* 月亮 */
.moon{
    background-color: slategray;
    animation-name: animate-moon;
   /*  transform: translateX(-55vmin);*/
}
@keyframes animate-sky{
    50%{
        background-color: black;
    }
}
@keyframes animate-sun{
    50%{
        box-shadow: 0 0 5em 1em white;
    }
}
@keyframes animate-moon{
    from{
        transform: translateX(-100vmin);
    }
    50%{
        background-color: black;
    }
    to{
        transform: translateX(100vmin);
    }
}

原文地址:https://www.cnblogs.com/FlyingLiao/p/10389110.html

时间: 2024-09-30 09:25:09

36纯 CSS 动画原理,在页面上表现日蚀现象的相关文章

外贸建站之纯CSS动画效果天之蓝滚动的白云代码分享

外贸建站之纯CSS动画效果天之蓝滚动的白云代码分享 /*改写chinaobd2.com Begin*/ /*如有定义header, footer 注意设置相应的位置,颜色等*/ body { padding-top: 0px; } @media (max-width: 577px) { body { padding-top: 35px; } } /*应用效果:未应用效果时可直接清除*/ @media (min-width: 768px) { header { background: #0064A

CSS动画原理及硬件加速

一.图层 图层即层叠上下文,具体概念和应用大家可以看我之前转自张鑫旭大神博客的<CSS层叠上下文和层叠顺序>,这里我们简单复习一下产生层叠上下文的原因. 1.根层叠上下文 指的是页面根元素,也就是滚动条的默认的始作俑者<html>元素.这就是为什么,绝对定位元素在left/top等值定位的时候,如果没有其他定位元素限制,会相对浏览器窗口定位的原因. 2.定位元素与传统层叠上下文 对于包含有position:relative/position:absolute的定位元素,以及Fire

vue中css动画原理

显示原理: <transition name='fade'> <div v-if='show'>hello world</div> </transition> 当一个元素被transition包裹了之后,vue会自动当分析元素的css样式,然后构建一个动画的流程,在动画即将被执行的一瞬间,vue会在内部标签上增加两个class名字,分别是fade-enter,fade-enter-active,在动画执行到第二帧的时候,也就是动画开始后,fade-enter

100多个纯CSS动画图标

我们在做页面开发的时候,可能要用到许多的小图标样式. 那么只要套用这个CSS的图标框架,在加上一些修饰,就可以得到非常棒的图标样式, 下面我们来看一下这些图标的样式. 图标样式图片 首先我们要引用写好的CSS文件,也就是框架 Icono.min.js 然后可以自己在样式上面做一些其他的修改,在我们这个图标展示当中, 加入了鼠标放上的样式. 改变了颜色 a:hover { color: #fff; } 透明度和大小 span:hover { transform: scale(1.5); } spa

纯CSS动画打造~会动的小球

会动的小球,设计html,css知识点,另外动画是完全用css做的,很简单便捷哦~这只是一个小小的案例 ,以后为大家提供更多的案例!!会动的小球<!DOCTYPE html> **<html> <head> <meta charset="UTF-8"> <title>CSS3 loading图标</title> <link rel="stylesheet" href="css/l

vue css动画原理

从隐藏到显现 从显现到隐藏 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Vue中的动画</title> 6 <style> 7 .fade-enter, 8 .fade-leave-to { 9 opacity: 0; 10 } 11 .fade-enter-active, 12 .fade-leave-ac

Web高性能动画及渲染原理(1)CSS动画和JS动画

目录 一. CSS动画 和 JS动画 1.1 CSS动画 1.2 JS动画 1.3 小结 二. 使用Velocity.js实现动画 示例代码托管在:http://www.github.com/dashnowords/blogs 博客园地址:<大史住在大前端>原创博文目录 华为云社区地址:[你要的前端打怪升级指南] 一. CSS动画 和 JS动画 Web动画的本质是元素状态改变造成的样式变更,CSS动画和JS动画的区别并不是由语言来决定的,而是由两者的特点和适用场景来判断的.CSS动画简洁高效,

15个来自 CodePen 的酷炫 CSS 动画效果【下篇】

CodePen 是一个在线的前端代码编辑和展示网站,能够编写代码并即时预览效果.你在上面可以在线分享自己的 Web 作品,也可以欣赏到世界各地的优秀开发者在网页中实现的各种令人惊奇的效果. 今天这篇文章为大家挑选了15个超炫的 CSS 动画效果的例子,这些 Demo 可以说都是艺术品.(为保证最佳的效果,请在 Chrome.Firefox 和 Safari 等现代浏览器中浏览) 9. 3D Synth Pure CSS 3D Synthesizer (mousedown for rotation

赞!15个来自 CodePen 的酷炫 CSS 动画效果

CodePen 是一个在线的前端代码编辑和展示网站,能够编写代码并即时预览效果.你在上面可以在线分享自己的 Web 作品,也可以欣赏到世界各地的优秀开发者在网页中实现的各种令人惊奇的效果. 今天这篇文章为大家挑选了15个超炫的 CSS 动画效果的例子,这些 Demo 可以说都是艺术品.(为保证最佳的效果,请在 Chrome.Firefox 和 Safari 等现代浏览器中浏览) 1. JavaScript Mickey Watch Apple watch like Mickey watch by