初级篇:如何用CSS3制作爱心加载(代码详解)

之前的文章《手把手教你使用CSS制作逼真的水波纹效果(附代码)》中,给大家介绍了怎么使用CSS制作逼真的水波纹效果。下面本篇文章给大家介绍如何用CSS3制作爱心加载,我们一起看看怎么做。

初级篇:如何用CSS3制作爱心加载(代码详解)

网页中常常有这样的CSS3爱心加载,给大家分享一下看效果图看完效果,我们来研究一下是怎么实现呢,给大家用于讲解html+css图片文字排版的基本流程。

效果大概长这样

21211.gif

1、首先html创建新文件,定义9个div标签。

立即学习“前端免费学习笔记(深入)”;

            
            
            
            
            
            
            
            

登录后复制

2、开始定义css样式来进行修饰添加background-color属性设置背景颜色,宽度设置为100%,高度设置为100%,margin属性设置所有外边距属性。

body {        width: 100%;        height: 100%;        margin: 0;        background-color: #ccc;    }

登录后复制

3、container标题文本样式,利用align-items属性居中对齐。

  .container {        display: flex;        width: 100%;        height: 100%;        justify-content: center;        align-items: center;

登录后复制

4、header标题文本样式,利用position属性指定一个元素定位。

.header {        position: relative;        width: 138px;        /* display: flex; */

登录后复制

5、class*=’header-‘标题文本样式,利用position属性定位元素,语法“position: absolute;top: -5px;border-radius: 5px”生成绝对定位的元素。

 [class*='header-']{        position: absolute;        width: 10px;        height: 10px;        top: -5px;        border-radius: 5px;     }

登录后复制

6、header0-8标题文本样式,利用animation(动画)属性绑定到每8个元素,让元素摆动起来。

 .header-0,    .header-8 {        animation: header-0 3.2s infinite;    }    .header-1,    .header-7 {        animation: header-1 3.2s infinite;    }    .header-2,    .header-6 {        animation: header-2 3.2s infinite;    }    .header-3,    .header-5 {        animation: header-3 3.2s infinite;    }    .header-4 {        animation: header-4 3.2s infinite;    }

登录后复制

7、使用4个@keyframes规则,给4个创建动画逐步改变0%是开头动画,100%。

@keyframes header-0 {    0%,    10%,    90%,    100% {        height: 10px;        top: -5px;    }    45%,    55% {        height: 30px;        top: -10px;    }}@keyframes header-1 {    0%,    10%,    90%,    100% {        height: 10px;        top: -5px;    }    45%,    55% {        height: 60px;        top: -31px;    }}@keyframes header-2 {    0%,    10%,    90%,    100% {        height: 10px;        top: -5px;    }    45%,    55% {        height: 80px;        top: -37px;    }}@keyframes header-3 {    0%,    10%,    90%,    100% {        height: 10px;        top: -5px;    }    45%,    55% {        height: 90px;        top: -31px;    }}@keyframes header-4 {    0%,    10%,    90%,    100% {        height: 10px;        top: -5px;    }    45%,    55% {        height: 94px;        top: -23px;    }

登录后复制

8、header0-8标题文本样式添加animation-delay属性等待1秒然后开始动画,background属性设置颜色绑定8个元素。

.header-0 {    left: 0;    animation-delay: 0s;    background: #92fe9d;}.header-1 {    left: 16px;    animation-delay: 0.15s;    background: #00c9ff;}.header-2 {    left: 32px;    animation-delay: 0.3s;    background: #ff758c;}.header-3 {    left: 48px;    animation-delay: 0.45s;    background: #ff7eb3;}.header-4 {    left: 66px;    animation-delay: 0.6s;    background: #fa71cd;}.header-5 {    left: 82px;    animation-delay: 0.75s;    background: #6f86d6;}.header-6 {    left: 98px;    animation-delay: 0.9s;    background: #f9f586;}.header-7 {    left: 114px;    animation-delay: 1.05s;    background: #b1f4cf;}.header-8 {    left: 130px;    animation-delay: 1.2s;    background: #fef9d7;}

登录后复制

代码效果出来了

21211.gif

下面完整代码

nbsp;html>        爱心加载        html,body {        width: 100%;        height: 100%;        margin: 0;        background-color: #ccc;    }    .container {        display: flex;        width: 100%;        height: 100%;        justify-content: center;        align-items: center;    }    .header {        position: relative;        width: 138px;        /* display: flex; */    }    [class*='header-']{        position: absolute;        width: 10px;        height: 10px;        top: -5px;        border-radius: 5px;            }    .header-0,    .header-8 {        animation: header-0 3.2s infinite;    }    .header-1,    .header-7 {        animation: header-1 3.2s infinite;    }    .header-2,    .header-6 {        animation: header-2 3.2s infinite;    }    .header-3,    .header-5 {        animation: header-3 3.2s infinite;    }    .header-4 {        animation: header-4 3.2s infinite;    }@keyframes header-0 {    0%,    10%,    90%,    100% {        height: 10px;        top: -5px;    }    45%,    55% {        height: 30px;        top: -10px;    }}@keyframes header-1 {    0%,    10%,    90%,    100% {        height: 10px;        top: -5px;    }    45%,    55% {        height: 60px;        top: -31px;    }}@keyframes header-2 {    0%,    10%,    90%,    100% {        height: 10px;        top: -5px;    }    45%,    55% {        height: 80px;        top: -37px;    }}@keyframes header-3 {    0%,    10%,    90%,    100% {        height: 10px;        top: -5px;    }    45%,    55% {        height: 90px;        top: -31px;    }}@keyframes header-4 {    0%,    10%,    90%,    100% {        height: 10px;        top: -5px;    }    45%,    55% {        height: 94px;        top: -23px;    }}.header-0 {    left: 0;    animation-delay: 0s;    background: #92fe9d;}.header-1 {    left: 16px;    animation-delay: 0.15s;    background: #00c9ff;}.header-2 {    left: 32px;    animation-delay: 0.3s;    background: #ff758c;}.header-3 {    left: 48px;    animation-delay: 0.45s;    background: #ff7eb3;}.header-4 {    left: 66px;    animation-delay: 0.6s;    background: #fa71cd;}.header-5 {    left: 82px;    animation-delay: 0.75s;    background: #6f86d6;}.header-6 {    left: 98px;    animation-delay: 0.9s;    background: #f9f586;}.header-7 {    left: 114px;    animation-delay: 1.05s;    background: #b1f4cf;}.header-8 {    left: 130px;    animation-delay: 1.2s;    background: #fef9d7;}                            
            
            
            
            
            
            
            
            
            

登录后复制

推荐学习:CSS视频教程

以上就是初级篇:如何用CSS3制作爱心加载(代码详解)的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2871623.html

(0)
上一篇 2025年3月10日 18:36:48
下一篇 2025年3月1日 19:02:18

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 新手篇:如何用CSS实现简单骨骼动画(代码分享)

    之前的文章《教你怎么使用shell脚本实现服务器快速设置(附代码)》中,给大家介绍了怎么使用shell脚本实现服务器快速设置。下面本篇文章给大家介绍如何用CSS实现简单骨骼动画,我们一起看看怎么做。 1、背景 某天设计师来找我说,“这个心愿…

    2025年3月10日 编程技术
    200
  • 深入解析CSS中的绝对定位,彻底理解它!

    本篇文章给大家解析一下css中的绝对定位,带大家彻底理解它,希望对大家有所帮助! 与其说定位一个元素是定位元素自身的位置,不如说是元素的容器位置。为了能够定位自己,它必须知道自己将相对于哪个父div 来定位。【相关推荐:《css》】 下面的…

    2025年3月10日 编程技术
    200
  • 如何利用CSS background系列属性实现一些花式的文字效果

    如何利用css实现花式文字效果?下面本篇文章给大家介绍一下利用 background 系列属性实现一些花式文字效果的方法,希望对大家有所帮助! 本文将讲解如何利用 background 系列属性,巧妙的实现一些花式的文字效果。通过本文,你将…

    2025年3月10日 编程技术
    200
  • 手把手教你使用纯CSS绘制可爱玉兔(附代码)

    如何使用纯css画一只可爱玉兔?下面本篇文章就手把手教你使用纯css绘制可爱玉兔,希望对大家有所帮助! 这里有段小故事跟大家科普一下哦: 玉兔本是后羿,因为嫦娥奔月,而又思念后羿,后羿为了和嫦娥在一起,情愿变成了她最爱的小动物–…

    2025年3月10日
    200
  • 深入学习CSS中的 :is() 和 :where(),让样式代码更简洁!

    本篇文章带大家深入了解css中的两个比较高效的选择器,通过它们可以用更少的代码去更有效地选择元素,进而简化代码,下面一起来看看吧! 新人在入门CSS的时候,往往最困惑的就是两件事情(个人想法):1. CSS是基于文档流的,有些时候编写的代码…

    2025年3月10日 编程技术
    200
  • CSS怎么实现瀑布流?两种方式介绍

    css怎么实现瀑布流?下面本篇文章给大家介绍一下使用css实现瀑布流的两种方式,希望对大家有所帮助! 瀑布流又称瀑布流式布局,是比较流行的一种网站页面布局方式。在手机端进行多图片展示时会经常用到。即多行等宽元素排列,后面的元素依次添加到其后…

    2025年3月10日
    200
  • 手把手带你通过5个例子来熟悉CSS变量!

    大家对css变量熟悉吗?如果不熟悉,不要紧!下面本篇文章就来给大家介绍一下css变量,通过5个例子来带大家熟悉css变量,希望对大家有所帮助! 随着 Web应用程序变得越来越大,CSS变得越来越大,越来越冗长,而且混乱不堪。 在良好的上下文…

    2025年3月10日 编程技术
    200
  • 纯CSS做一个烟花绽放动画(代码示例)

    本篇文章带大家使用纯css做一个烟花绽放动画,希望对大家有所帮助! 最近项目上需要做一个烟花动画,要求是随机大小,不同地方出现,先看效果 一、选择合适的动画 什么样的场景决定使用什么样的动画。比如一些比较轻量、装饰性的动画,CSS 动画就足…

    2025年3月10日 编程技术
    200
  • css数字文本过长被隐藏了怎么办

    css数字文本过长被隐藏的解决方法:1、打开相应的HTML文件;2、使用“word-break”属性,给包含数字的元素添加“word-break:break-all;”样式,让数字文本自动换行即可全部显示出来即可。 本教程操作环境:wind…

    2025年3月10日 编程技术
    200
  • css怎么去掉表格重复的边框

    在css中,可以使用border-collapse属性来去掉表格中重复的边框,该属性可以设置表格边框是折叠为单一边框还是分开的,只需要将值设置为collapse即可把重叠的边框合并在一起,成为一个边框,实现单线边框的效果。 css/edit…

    2025年3月10日
    200

发表回复

登录后才能评论