纯CSS绘制基本图形

这篇博客展示了如何使用CSS创建不同类型的图形,包括圆形、椭圆、三角形、平行四边形、梯形、六角星、五角星、五角大楼、六边形、八角形、爱心、无穷大符号、鸡蛋、食逗人(Pac-Man)、提示对话框、12角星、钻石和阴阳八卦等。通过这些示例,读者可以学习到如何利用CSS的边框、内角、外角和变换属性来构建复杂的图形。
摘要由CSDN通过智能技术生成

1.圆形
在这里插入图片描述

.circle { 
 width: 100px; 
 height: 100px; 
 background: red; 
 border-radius: 50px; 
} 

2.椭圆
在这里插入图片描述

.oval { 
  width: 200px; 
  height: 100px; 
  background: red; 
  border-radius: 100px / 50px; 
} 

3.上三角
在这里插入图片描述

.triangle-up { 
  width: 0; 
  height: 0; 
  border-left: 50px solid transparent; 
  border-right: 50px solid transparent; 
  border-bottom: 100px solid red; 
} 

4.左上三角

在这里插入图片描述

.triangle-topleft { 
  width: 0; 
  height: 0; 
  border-top: 100px solid red; 
  border-right: 100px solid transparent; 
}

5.平行四边形
在这里插入图片描述

.parallelogram { 
  width: 150px; 
  height: 100px; 
  margin-left:20px; 
  transform: skew(20deg); 
  background: red; 
} 

6.梯形

在这里插入图片描述

.trapezoid { 
  border-bottom: 100px solid red; 
  border-left: 50px solid transparent; 
  border-right: 50px solid transparent; 
  height: 0; 
  width: 100px; 
} 

7.六角星
在这里插入图片描述

.star-six { 
  position: relative; 
  width: 0; 
  height: 0; 
  border-left: 50px solid transparent; 
  border-right: 50px solid transparent; 
  border-bottom: 100px solid red; 
} 
.star-six:after {
  content: "";  
  position: absolute; 
  top: 30px; 
  left: -50px; 
  width: 0; 
  height: 0; 
  border-left: 50px solid transparent; 
  border-right: 50px solid transparent; 
  border-top: 100px solid red; 
} 

8.五角星

在这里插入图片描述

.star-five { 
  position: relative; 
  margin: 50px 0; 
  display: block; 
  color: red; 
  width: 0px; 
  height: 0px; 
  border-right: 100px solid transparent; 
  border-bottom: 70px solid red; 
  border-left: 100px solid transparent; 
  transform: rotate(35deg); 
} 
.star-five:before { 
  content: ''; 
  position: absolute; 
  top: -45px; 
  left: -65px; 
  border-bottom: 80px solid red; 
  border-left: 30px solid transparent; 
  border-right: 30px solid transparent; 
  height: 0; 
  width: 0; 
  display: block; 
  transform: rotate(-35deg); 
} 
.star-five:after { 
  content: '';
  position: absolute; 
  display: block; 
  color: red; 
  top: 3px; 
  left: -105px; 
  width: 0px; 
  height: 0px; 
  border-right: 100px solid transparent; 
  border-bottom: 70px solid red; 
  border-left: 100px solid transparent; 
  transform: rotate(-70deg); 
} 

9.五角大楼

在这里插入图片描述

.pentagon { 
  position: relative; 
  width: 54px; 
  border-width: 50px 18px 0; 
  border-style: solid; 
  border-color: red transparent; 
} 
.pentagon:before { 
  content: ""; 
  position: absolute; 
  height: 0; 
  width: 0; 
  top: -85px; 
  left: -18px; 
  border-width: 0 45px 35px; 
  border-style: solid; 
  border-color: transparent transparent red; 
} 

10.六边形

在这里插入图片描述

.hexagon { 
  position: relative; 
  width: 100px; 
  height: 55px; 
  background: red; 
} 
.hexagon:before { 
  content: ""; 
  position: absolute; 
  top: -25px; 
  left: 0; 
  width: 0; 
  height: 0; 
  border-left: 50px solid transparent; 
  border-right: 50px solid transparent; 
  border-bottom: 25px solid red; 
} 
.hexagon:after { 
  content: ""; 
  position: absolute; 
  bottom: -25px; 
  left: 0; 
  width: 0; 
  height: 0; 
  border-left: 50px solid transparent; 
  border-right: 50px solid transparent; 
  border-top: 25px solid red; 
} 

11.八角形

在这里插入图片描述

.octagon { 
  position: relative; 
  width: 100px; 
  height: 100px; 
  background: red; 
} 
.octagon:before { 
  content: ""; 
  position: absolute; 
  top: 0; 
  left: 0; 
  border-bottom: 29px solid red; 
  border-left: 29px solid #eee; 
  border-right: 29px solid #eee; 
  width: 42px; 
  height: 0; 
} 
.octagon:after { 
  content: ""; 
  position: absolute; 
  bottom: 0; 
  left: 0; 
  border-top: 29px solid red; 
  border-left: 29px solid #eee; 
  border-right: 29px solid #eee; 
  width: 42px; 
  height: 0; 
} 

12.爱心
在这里插入图片描述

.heart { 
  position: relative; 
  width: 100px; 
  height: 90px; 
} 
.heart:before, .heart:after { 
  position: absolute; 
  content: ""; 
  left: 50px; 
  top: 0; 
  width: 50px; 
  height: 80px; 
  background: red; 
  border-radius: 50px 50px 0 0; 
  transform: rotate(-45deg);
  transform-origin: 0 100%; 
} 
.heart:after { 
  left: 0; 
  transform: rotate(45deg); 
  transform-origin :100% 100%; 
} 

13.无穷大符号

在这里插入图片描述

.infinity { 
  position: relative; 
  width: 212px; 
  height: 100px; 
} 
.infinity:before, .infinity:after { 
  content: ""; 
  position: absolute; 
  top: 0; 
  left: 0; 
  width: 60px; 
  height: 60px; 
  border: 20px solid red; 
  border-radius: 50px 50px 0 50px; 
  transform: rotate(-45deg); 
} 
.infinity:after { 
  left: auto; 
  right: 0;
  border-radius: 50px 50px 50px 0; 
  transform: rotate(45deg); 
} 

14.鸡蛋
在这里插入图片描述

.egg { 
  display:block; 
  width: 126px; 
  height: 180px; 
  background-color: red; 
  -webkit-border-radius: 63px 63px 63px 63px / 108px 108px 72px 72px; 
  border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%; 
} 

15.食逗人(Pac-Man)

在这里插入图片描述

.pacman { 
  width: 0px; 
  height: 0px; 
  border-right: 60px solid transparent; 
  border-top: 60px solid red; 
  border-left: 60px solid red; 
  border-bottom: 60px solid red; 
  border-top-left-radius: 60px; 
  border-top-right-radius: 60px; 
  border-bottom-left-radius: 60px; 
  border-bottom-right-radius: 60px; 
} 

16.提示对话框
在这里插入图片描述

.talkbubble { 
  position: relative; 
  width: 120px; 
  height: 80px; 
  background: red; 
  border-radius: 10px; 
} 
.talkbubble:before { 
  content:""; 
  position: absolute; 
  right: 100%; 
  top: 26px; 
  width: 0; 
  height: 0; 
  border-top: 13px solid transparent; 
  border-right: 26px solid red; 
  border-bottom: 13px solid transparent; 
} 
  1. 12角星

在这里插入图片描述

.burst-12 { 
  background: red; 
  width: 80px; 
  height: 80px; 
  position: relative; 
  text-align: center; 
} 
.burst-12:before, .burst-12:after { 
  content: ""; 
  position: absolute; 
  top: 0; 
  left: 0; 
  height: 80px; 
  width: 80px; 
  background: red; 
} 
.burst-12:before { 
  transform: rotate(30deg); 
} 
.burst-12:after { 
  transform: rotate(60deg); 
} 

18.钻石
在这里插入图片描述

.cut-diamond { 
  border-style: solid; 
  border-color: transparent transparent red transparent; 
  border-width: 0 25px 25px 25px; 
  height: 0; 
  width: 50px; 
  position: relative; 
  margin: 20px 0 50px 0; 
} 
.cut-diamond:after { 
  content: ""; 
  position: absolute; 
  top: 25px; 
  left: -25px; 
  width: 0; 
  height: 0; 
  border-style: solid; 
  border-color: red transparent transparent transparent; 
  border-width: 70px 50px 0 50px; 
} 
  1. 阴阳八卦

在这里插入图片描述

.yin-yang { 
  position: relative; 
  width: 96px; 
  height: 48px; 
  background: #eee; 
  border-color: red; 
  border-style: solid; 
  border-width: 2px 2px 50px 2px; 
  border-radius: 100%; 
} 
.yin-yang:before { 
  content: ""; 
  position: absolute; 
  top: 50%; 
  left: 0; 
  background: #eee; 
  border: 18px solid red; 
  border-radius: 100%; 
  width: 12px; 
  height: 12px; 
} 
.yin-yang:after { 
  content: ""; 
  position: absolute; 
  top: 50%; 
  left: 50%; 
  background: red; 
  border: 18px solid #eee; 
  border-radius:100%; 
  width: 12px; 
  height: 12px; 
} 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值