用CSS3画一个爱心


Posted in HTML / CSS onApril 27, 2021

实现效果

用CSS3画一个爱心

需求/功能:

怎么用CSS+HTMl绘画出一个爱心.

分析:

爱心可以通过一个正方形+两个圆形组合成.
先画一个正方形+圆形, 摆放位置如下:

用CSS3画一个爱心

再添加上一个圆形.

用CSS3画一个爱心

最后再将整个图形顺时针旋转45度即可.

用CSS3画一个爱心

初步实现:

先画一个正方形:

<body>
    <div id="heart"></div>
</body>
#heart{
       height: 300px;
       width: 300px;
       border: 2px solid black;
    }

给这个正方形的左边加行一个圆形.这里使用伪类:before来实现

#heart{
            height: 200px;
            width: 200px;
            border: 2px solid black;
            position: relative;
        }
    #heart:before{
        content: '';
        width: 200px;
        height: 200px;
        border: 2px solid black;
        border-radius: 50%; // 正方形加圆角变成圆
        position: absolute;
        left: -100px;  // 向左位移正方形一半的长度
    }

此时图形长这样:

用CSS3画一个爱心

再添加一个圆形, 这里使用after伪类来实现.

#heart{
            height: 200px;
            width: 200px;
            border: 2px solid black;
            position: relative;
        }
        // 这里偷个懒.直接写一块了
    #heart:before,#heart:after{
        content: '';
        width: 200px;
        height: 200px;
        border: 2px solid black;
        border-radius: 50%;
        position: absolute;
        left: -100px;
    }
    // 第二个圆, 只需要向上位移正方形一半的高度
    #heart:after{
        left: 0;
        top: -100px;
    }

用CSS3画一个爱心

最后一步, 旋转一下, 然后上个颜色.去掉之前为了看清楚加的边框.

/*给heart进行旋转并加上颜色*/
  transform: rotate(45deg);
  background-color: red;

完整代码:

<style>
        body,html{
            display: flex;
            align-items: center;
            justify-content: center;
            height: 100vh;
        }
        #heart{
            height: 200px;
            width: 200px;
            /*border: 2px solid black;*/
            position: relative;
            transform: rotate(45deg);
            background-color: red;
        }
        #heart:before,#heart:after{
            content: '';
            width: 200px;
            height: 200px;
            /*border: 2px solid black;*/
            border-radius: 50%;
            position: absolute;
            left: -100px;
            background-color: red;
        }
        #heart:after{
            left: 0;
            top: -100px;
        }
    </style>
</head>
<body>
    <div id="heart"></div>
</body>

总结:

爱心可以由一个正方形和两个圆形组成, 这里使用before和after伪类, 然后, 分别对两个伪类进行位移. 最后挤上颜色, 就可以实现一个爱心❤️.

以上就是用CSS3画一个爱心的详细内容,更多关于CSS3画一个爱心的资料请关注三水点靠木其它相关文章!

 
HTML / CSS 相关文章推荐
CSS3教程:新增加的结构伪类
Apr 02 HTML / CSS
详解CSS3的box-shadow属性制作边框阴影效果的方法
May 10 HTML / CSS
CSS3中的常用选择器使用示例整理
Jun 13 HTML / CSS
CSS3 新增选择器的实例
Nov 13 HTML / CSS
HTML5引入的新数组TypedArray介绍
Dec 24 HTML / CSS
html5读取本地文件示例代码
Apr 22 HTML / CSS
极简的HTML5模版
Jul 09 HTML / CSS
探讨HTML5移动开发的几大特性(必看)
Dec 30 HTML / CSS
12个不为大家熟知的HTML5设计小技巧
Jun 02 HTML / CSS
详解Html5 监听拦截Android返回键方法
Apr 18 HTML / CSS
使用HTML5做的导航条详细步骤
Oct 19 HTML / CSS
Canvas绘制像素风图片的示例代码
Sep 25 HTML / CSS
HTML5中 rem适配方案与 viewport 适配问题详解
Apr 27 #HTML / CSS
CSS 还能这样玩?奇思妙想渐变的艺术
css3 实现文字闪烁效果的三种方式示例代码
Css预编语言及区别详解
用position:sticky完美解决小程序吸顶问题的实现方法
Apr 24 #HTML / CSS
position:sticky 粘性定位的几种巧妙应用详解
六种css3实现的边框过渡效果
Apr 22 #HTML / CSS
You might like
PHP的开合式多级菜单程序
2006/10/09 PHP
用php实现让页面只能被百度gogole蜘蛛访问的方法
2009/12/29 PHP
phpmyadmin 常用选项设置详解版
2010/03/07 PHP
PHP中使用curl伪造IP的简单方法
2015/08/07 PHP
PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID
2016/11/25 PHP
Laravel5.1 框架路由基础详解
2020/01/04 PHP
ECMAScript 基础知识
2007/06/29 Javascript
Ext JS Grid在IE6 下宽度的问题解决方法
2009/02/15 Javascript
通用javascript脚本函数库 方便开发
2009/10/13 Javascript
juqery 学习之五 文档处理 包裹、替换、删除、复制
2011/02/11 Javascript
JS实现切换标签页效果实例代码
2013/11/01 Javascript
Javascript显示和隐藏ul列表的方法
2015/07/15 Javascript
js表单提交和submit提交的区别实例分析
2015/12/10 Javascript
node模块机制与异步处理详解
2016/03/13 Javascript
JS提示:Uncaught SyntaxError: Unexpected token ILLEGAL错误的解决方法
2016/08/19 Javascript
JS DOMReady事件的六种实现方法总结
2016/11/23 Javascript
基于jQuery使用Ajax动态执行模糊查询功能
2018/07/05 jQuery
vue实现图片预览组件封装与使用
2019/07/13 Javascript
js使用文件流下载csv文件的实现方法
2019/07/15 Javascript
jQuery实现简单QQ聊天框
2020/08/27 jQuery
在vue中使用cookie记住用户上次选择的实例(本次例子中为下拉框)
2020/09/11 Javascript
Python中的fileinput模块的简单实用示例
2015/07/09 Python
剖析Python的Tornado框架中session支持的实现代码
2015/08/21 Python
详解python之heapq模块及排序操作
2019/04/04 Python
python3.4 将16进制转成字符串的实例
2019/06/12 Python
Python中格式化字符串的四种实现
2020/05/26 Python
python下对hsv颜色空间进行量化操作
2020/06/04 Python
python实现数字炸弹游戏
2020/07/17 Python
Python中logging日志记录到文件及自动分割的操作代码
2020/08/05 Python
将SVG图引入到HTML页面的实现
2019/09/20 HTML / CSS
英国DIY和家居装饰领域的主要品牌:Wickes
2019/11/26 全球购物
天鹅的故事教学反思
2014/02/04 职场文书
捐款活动总结
2014/08/27 职场文书
2014年精神文明工作总结
2014/12/23 职场文书
python基于机器学习预测股票交易信号
2021/05/25 Python
Elasticsearch 基本查询和组合查询
2022/04/19 Python