css_跳动的心

简介: css_跳动的心

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

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

  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);
            }

image.png

旋转45度

image.png

旋转45度统一颜色

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

image.png

动画

背景颜色变化

白色到粉色的变化

            @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>

效果

1122.gif

目录
相关文章
|
前端开发
CSS跳动的小球
CSS跳动的小球
69 0
|
前端开发
css_跳动的心制作过程
css_跳动的心制作过程
120 0
|
前端开发
HTML+CSS制作七夕跳动的红心动画效果
HTML+CSS制作七夕跳动的红心动画效果
|
前端开发
css跳动文字——加载中
css跳动文字——加载中
351 0
|
前端开发 JavaScript
使用纯html与css实现跳动小球加载动画
跳动小球加载动画 在网页开发中,加载动画是必不可缺的一个设计;因为在一些资源加载的时候需要让用户等待一段时间,为了使用户有更好的交互体验,一个使人身心愉悦的加载动画变必不可少。 今天为大家带来的就是一个小求跳动加载动画
|
前端开发 Web App开发 JavaScript
如何用纯 CSS 创作一个跳动的字母 i
效果预览 在线演示 按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。 https://codepen.io/comehope/pen/pZbrpJ 可交互视频 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。
1135 0
|
7月前
|
存储 自然语言处理 前端开发
抖音快手小红书虚拟评论截图生成器,模拟对话制作工具,html+js+css
这是一款纯前端实现的多平台虚拟评论生成器,支持抖音、快手、小红书风格,适用于产品演示与UI设计。采用Vanilla JS与Flexbox布局,利用IndexedDB存储数据,CSS Variables切换主题。
|
7月前
|
存储 前端开发 安全
病历单生成器在线制作,病历单生成器app,HTML+CSS+JS恶搞工具
本项目为医疗病历模拟生成器,旨在为医学教学和软件开发测试提供数据支持,严格遵守《医疗机构病历管理规定》。
|
7月前
|
存储 前端开发 JavaScript
仿真银行app下载安装, 银行卡虚拟余额制作app,用html+css+js实现逼真娱乐工具
这是一个简单的银行账户模拟器项目,用于学习前端开发基础。用户可进行存款、取款操作,所有数据存储于浏览器内存中

热门文章

最新文章

  • 1
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
    277
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
    247
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
    194
  • 4
    (CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
    151
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
    301
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
    442
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
    193
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
    135
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
    203
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
    279