css_跳动的心制作过程

简介: css_跳动的心制作过程

造型来源:正方形加两个圆

正方形加上两个圆可以组合成心型

  1. 圆的直径与正方形的边长相同
  2. 初始化位置都在中心
  3. 一个圆左移一个直径单位
  4. 另一个圆左移一个半径单位,再上移一个直径单位
  5. 整体顺时针移动45度

编写css

css样式的内外边框调整为0

内外边框为0和内容居中

*{
        padding:0;
        margin:0;
      }
      body{
        width:100vw;
        height:100vh;
        background: #ffffff;
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
      }

正方形css

边长200px

.heart{
        width:200px;
        height:200px;
        position: absolute;
        border-style:solid;
        border-color:pink;
        opacity: 1;
      }

圆的css样式(伪类)

小圆1号(伪类before)

使用伪类css来自200px的正方形,调整圆角为圆形,左移一个直径

/* 伪类创建 */
      .heart::before{
        content:'';
        width:200px;
        height:200px;
        border-style:solid;
        border-color:pink;
        border-radius: 100%;
        opacity: 1;
        position: absolute;
        transform: translateX(-200px);
      }
小圆2号(伪类after)

使用伪类css来自200px的正方形,调整圆角为圆形,左移一个半径,上移一个直径

/* 伪类创建 */
      .heart::after{
        content:'';
        width:200px;
        height:200px;
        border-style:solid;
        border-color:pink;
        border-radius: 100%;
        opacity: 1;
        position: absolute;
        transform: translate(-100px,-100px);
      }

旋转45度

旋转45度统一颜色

去掉边框颜色,填充背景为粉色

动画

背景颜色变化

白色到粉色的变化

@keyframes backdiv {
        50% {
          background: #ffe6f2;
        }
      }

图案的循环缩放

带上旋转45度,缩放0.5->0.8

@keyframes change{
        0%{
          transform: rotate(45deg) scale(0.5);
        }
        50%{
          transform: rotate(45deg) scale(0.8);
        }
        100%{
          transform: rotate(45deg) scale(0.5);
        }
      }

整体代码

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>heart</title>
    <style>
      *{
        padding:0;
        margin:0;
      }
      body{
        width:100vw;
        height:100vh;
        background: #ffffff;
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
        animation-name:backdiv;
        animation-duration: 2s;
        animation-iteration-count: infinite;
      }
      .heart{
        width:200px;
        height:200px;
        position: absolute;
        background: pink;
        transform: rotate(45deg);
        animation-name:change;
        animation-duration: 2s;
        animation-iteration-count: infinite;
      }
      /* 伪类创建 */
      .heart::before{
        content:'';
        width:200px;
        height:200px;
        background: pink;
        border-radius: 50%;
        position: absolute;
        /* 定位 */
        transform: translateX(-200px);
      }
      .heart::after{
        content:'';
        width:200px;
        height:200px;
        background: pink;
        border-radius: 50%;
        position: absolute;
        /* 定位 */
        transform: translate(-100px,-100px);
        /* transform: translateX(-100px); */
      }
      @keyframes change{
        0%{
          transform: rotate(45deg) scale(0.5);
        }
        50%{
          transform: rotate(45deg) scale(0.8);
        }
        100%{
          transform: rotate(45deg) scale(0.5);
        }
      }
      @keyframes backdiv {
        50% {
          background: #ffe6f2;
        }
      }
    </style>
  </head>
  <body>
    <div class='heart'> </div>
  </body>
</html>

效果


目录
相关文章
|
9月前
|
前端开发
HTML+CSS制作七夕跳动的红心动画效果
HTML+CSS制作七夕跳动的红心动画效果
|
前端开发
css跳动文字——加载中
css跳动文字——加载中
206 0
|
前端开发
css_跳动的心
css_跳动的心
72 0
|
前端开发 JavaScript
使用纯html与css实现跳动小球加载动画
跳动小球加载动画 在网页开发中,加载动画是必不可缺的一个设计;因为在一些资源加载的时候需要让用户等待一段时间,为了使用户有更好的交互体验,一个使人身心愉悦的加载动画变必不可少。 今天为大家带来的就是一个小求跳动加载动画
|
前端开发 Web App开发 JavaScript
如何用纯 CSS 创作一个跳动的字母 i
效果预览 在线演示 按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。 https://codepen.io/comehope/pen/pZbrpJ 可交互视频 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。
961 0
|
14天前
|
前端开发
2s 利用 HTML+css动画实现企业官网效果
2s 利用 HTML+css动画实现企业官网效果
|
14天前
HTML+CSS 实现通用的企业官网页面(记得收藏)
HTML+CSS 实现通用的企业官网页面(记得收藏)
|
14天前
|
前端开发 JavaScript
HTML+CSS如何打造撒花动画效果?3分钟学会,炫酷到爆!
HTML+CSS如何打造撒花动画效果?3分钟学会,炫酷到爆!
|
14天前
|
前端开发 JavaScript
HTML+CSS助你轻松打造惊艳登录页,零基础也能学会!
HTML+CSS助你轻松打造惊艳登录页,零基础也能学会!
下一篇
DDNS