使用 CSS 绘制心形

常遇到心形图案,比如点赞和取消点赞的使用场景。之前的使用方式是图片接入,作为img 或 backgroundImage 插入到 dom 中去。现在自己动手用css绘制一个心形图案。

心形

准备一个dom元素如下,为其id赋值为heart

<div id="heart"></div>

添加宽高

#heart {
    position: relative;
    width:50px;
    height:40px;
}

现在它应该是一个宽50px,高40px的矩形,没跑了。现在开始操作伪元素

/*上一步骤的代码省略...*/
#heart:before,
#heart:after{
  position: absolute;
  left:0;
  top:0;
  content: '';
  width: 25px;
  height: 40px;
  background: red;
  border-radius: 20px 20px 0 0;
}
#heart:after {
  content: '';
  left: 25px;
  top:0
}

emmm… 形状无法描述,上图吧还是…到现在为止的形状应该是这个样子的。

css怎么把div设置成爱心

接下来要做的是将before和after两块内容旋转。代码如下:

#heart:before,
#heart:after{
  position: absolute;
  left:25px;
  top:0;
  content: '';
  width: 25px;
  height: 40px;
  background: red;
  border-radius: 40px 40px 0 0;
  transform: rotate(-45deg);
  transform-origin: 0 100%;
}
#heart:after {
  content: '';
  left: 0;
  top:0;
  transform: rotate(45deg);
  transform-origin: 100% 100%;
}

上图上图…

css怎么把div设置成爱心

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。