用CSS绘制图形和形状

4 篇文章 0 订阅
3 篇文章 0 订阅
//太极八卦图
.warp{
            width: 300px;
            height: 300px;
            border-radius: 50%;
            background: linear-gradient(to right,#fff 50%,#000 50%);
        }
        .inner{
            width: 150px;
            height: 150px;
            border-radius: 50%;
            margin: auto;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        .white{
            background-color: #fff;
        }
        .black{
            background-color: #000;
        }
        .inner:after{
            content: '';
            width: 50px;
            height: 50px;
            border-radius: 50%;
        }
        .white:after{
            background-color: #000;
        }
        .black:after{
            background-color: #fff;
        }
<div class="warp">
    <div class="inner white"></div>
    <div class="inner black"></div>
</div>

 

//心形
.heart{
            position: relative;
            background-color: red;
            width: 300px;
            height: 300px;
            transform: rotate(45deg);
            margin: auto;
            top: 100px;
        }
        .heart:before, .heart:after{
            content: '';
            position: absolute;
            top: 0;
            left: -150px;
            width: 300px;
            height: 300px;
            border-radius: 50%;
            background-color: red;
        }
        .heart:after{
            top: -150px;
            left: 0;
        }
/*椭圆形*/
.oval{
    width: 200px;
    height: 100px;
    background-color: red;
    border-radius: 100px/50px;
}
/*上三角/下三角/左三角/右三角*/
  #triangle-up {
      width: 0;
      height: 0;
      border-left: 50px solid transparent;
      border-right: 50px solid transparent;
      border-bottom: 100px solid red;
      /*border-top: 100px solid red;*/
  }
/*左上角/右上角/左下角/右下角*/
  #triangle-topleft {
      width: 0;
      height: 0;
      border-top: 100px solid red;
      border-right: 100px solid transparent;
      /*border-bottom: 100px solid red;*/
      /*border-left: 100px solid transparent;*/
  }

箭头

45个炫酷的 CSS 形状(值得收藏)

#curvedarrow {
 position: relative;
 width: 0;
 height: 0;
 border-top: 9px solid transparent;
 border-right: 9px solid red;
 transform: rotate(10deg);
}
#curvedarrow:after {
 content: "";
 position: absolute;
 border: 0 solid transparent;
 border-top: 3px solid red;
 border-radius: 20px 0 0 0;
 top: -12px;
 left: -9px;
 width: 12px;
 height: 12px;
 transform: rotate(45deg);
}

梯形

45个炫酷的 CSS 形状(值得收藏)

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

星星 (6角)

45个炫酷的 CSS 形状(值得收藏)

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

星星 (5角)

45个炫酷的 CSS 形状(值得收藏)

#star-five {
    margin: 50px 0;
    position: relative;
    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 {
    border-bottom: 80px solid red;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    position: absolute;
    height: 0;
    width: 0;
    top: -45px;
    left: -65px;
    display: block;
    content: '';
    transform: rotate(-35deg);
}
#star-five:after {
    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);
    content: '';
}

五边形

        .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;
            left: -18px;
            top: -85px;
            border-width: 0 45px 35px;
            border-style: solid;
            border-color: transparent transparent red;
        }

六边形

 

        .hexagon{
            position: relative;
            width: 100px;
            height: 55px;
            background-color: 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-bottom: 25px solid red;
        }

 

八边形

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

 

心形

45个炫酷的 CSS 形状(值得收藏)

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

无限符图案

 

        .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;
            -moz-border-radius: 50px 50px 0 50px;
            -webkit-transform: rotate(-45deg);
            -moz-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
            -o-transform: rotate(-45deg);
            transform: rotate(-45deg);
        }
        .infinity:after{
            left: auto;
            right: 0;
            border-radius: 50px 50px 50px 0;
            -moz-border-radius: 50px 50px 50px 0;
            -webkit-transform: rotate(45deg);
            -moz-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
            -o-transform: rotate(45deg);
            transform: rotate(45deg);
        }

菱形

 

        .diamond{
            width: 0;
            height: 0;
            border: 50px solid transparent;
            border-bottom-color: red;
            position: relative;
            top: -50px;
        }
        .diamond:after{
            content: '';
            position: absolute;
            left: -50px;
            top: 50px;
            width: 0;
            height: 0;
            border: 50px solid transparent;
            border-top-color: red;
        }

砖石盾牌

 

        .diamond-shield{
            width: 0;
            height: 0;
            border: 50px solid transparent;
            border-bottom: 20px solid red;
            position: relative;
            top: -50px;
        }
        .diamond-shield:after{
            content: '';
            position: absolute;
            left: -50px;
            top: 20px;
            width: 0;
            height: 0;
            border: 50px solid transparent;
            border-top: 70px solid red;
        }

吃豆人

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

 

圆锥形

        .cone{
            width: 0;
            height: 0;
            border-left:70px solid transparent;
            border-right: 70px solid transparent;
            border-top: 100px solid red;
            -moz-border-radius: 50%;
            -webkit-border-radius: 50%;
            border-radius: 50%;
        }

 

月亮

        .moon{
            width: 80px;
            height: 80px;
            border-radius: 50%;
            box-shadow: 15px 15px 0 0 red;
        }

钻戒

45个炫酷的 CSS 形状(值得收藏)

 

#diamond-narrow {
 width: 0;
 height: 0;
 border: 50px solid transparent;
 border-bottom: 70px solid red;
 position: relative;
 top: -50px;
}
#diamond-narrow:after {
 content: '';
 position: absolute;
 left: -50px;
 top: 70px;
 width: 0;
 height: 0;
 border: 50px solid transparent;
 border-top: 70px solid red;
}

钻石2

45个炫酷的 CSS 形状(值得收藏)

 

#cut-diamond {
 border-style: solid;
 border-color: transparent transparent red transparent;
 border-width: 0 25px 25px 25px;
 height: 0;
 width: 50px;
 box-sizing: content-box;
 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;
}

蛋蛋

45个炫酷的 CSS 形状(值得收藏)

 

#egg {
 display: block;
 width: 126px;
 height: 180px;
 background-color: red;
 border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%;
}

29.对话泡泡

45个炫酷的 CSS 形状(值得收藏)

 

#talkbubble {
 width: 120px;
 height: 80px;
 background: red;
 position: relative;
 -moz-border-radius: 10px;
 -webkit-border-radius: 10px;
 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;
}

30. 12点 爆发

45个炫酷的 CSS 形状(值得收藏)

 

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

31. 8点 爆发

45个炫酷的 CSS 形状(值得收藏)

 

#burst-8 {
 background: red;
 width: 80px;
 height: 80px;
 position: relative;
 text-align: center;
 transform: rotate(20deg);
}
#burst-8:before {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 height: 80px;
 width: 80px;
 background: red;
 transform: rotate(135deg);
}

32.太极

45个炫酷的 CSS 形状(值得收藏)

 

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

33.徽章丝带

45个炫酷的 CSS 形状(值得收藏)

 

#badge-ribbon {
 position: relative;
 background: red;
 height: 100px;
 width: 100px;
 border-radius: 50px;
}
#badge-ribbon:before,
#badge-ribbon:after {
 content: '';
 position: absolute;
 border-bottom: 70px solid red;
 border-left: 40px solid transparent;
 border-right: 40px solid transparent;
 top: 70px;
 left: -10px;
 transform: rotate(-140deg);
}
#badge-ribbon:after {
 left: auto;
 right: -10px;
 transform: rotate(140deg);
}
 

34.太空入侵者(电脑游戏名)

45个炫酷的 CSS 形状(值得收藏)

#space-invader{
    box-shadow: 0 0 0 1em red,
    0 1em 0 1em red,
    -2.5em 1.5em 0 .5em red,
    2.5em 1.5em 0 .5em red,
    -3em -3em 0 0 red,
    3em -3em 0 0 red,
    -2em -2em 0 0 red,
    2em -2em 0 0 red,
    -3em -1em 0 0 red,
    -2em -1em 0 0 red,
    2em -1em 0 0 red,
    3em -1em 0 0 red,
    -4em 0 0 0 red,
    -3em 0 0 0 red,
    3em 0 0 0 red,
    4em 0 0 0 red,
    -5em 1em 0 0 red,
    -4em 1em 0 0 red,
    4em 1em 0 0 red,
    5em 1em 0 0 red,
    -5em 2em 0 0 red,
    5em 2em 0 0 red,
    -5em 3em 0 0 red,
    -3em 3em 0 0 red,
    3em 3em 0 0 red,
    5em 3em 0 0 red,
    -2em 4em 0 0 red,
    -1em 4em 0 0 red,
    1em 4em 0 0 red,
    2em 4em 0 0 red;
    background: red;
    width: 1em;
    height: 1em;
    overflow: hidden;
    margin: 50px 0 70px 65px;
}

35.电视

45个炫酷的 CSS 形状(值得收藏)

 

#tv {
 position: relative;
 width: 200px;
 height: 150px;
 margin: 20px 0;
 background: red;
 border-radius: 50% / 10%;
 color: white;
 text-align: center;
 text-indent: .1em;
}
#tv:before {
 content: '';
 position: absolute;
 top: 10%;
 bottom: 10%;
 right: -5%;
 left: -5%;
 background: inherit;
 border-radius: 5% / 50%;
}
 

36.雪佛龙

45个炫酷的 CSS 形状(值得收藏)

 

#chevron {
 position: relative;
 text-align: center;
 padding: 12px;
 margin-bottom: 6px;
 height: 60px;
 width: 200px;
}
#chevron:before {
 content: '';
 position: absolute;
 top: 0;
 left: 0;
 height: 100%;
 width: 51%;
 background: red;
 transform: skew(0deg, 6deg);
}
#chevron:after {
 content: '';
 position: absolute;
 top: 0;
 right: 0;
 height: 100%;
 width: 50%;
 background: red;
 transform: skew(0deg, -6deg);
} 

37.放大镜

45个炫酷的 CSS 形状(值得收藏)

 

#magnifying-glass {
 font-size: 10em;
 display: inline-block;
 width: 0.4em;
 box-sizing: content-box;
 height: 0.4em;
 border: 0.1em solid red;
 position: relative;
 border-radius: 0.35em;
}
#magnifying-glass:before {
 content: "";
 display: inline-block;
 position: absolute;
 right: -0.25em;
 bottom: -0.1em;
 border-width: 0;
 background: red;
 width: 0.35em;
 height: 0.08em;
 transform: rotate(45deg);
}

38.Facebook图标

45个炫酷的 CSS 形状(值得收藏)

 

#facebook-icon {
 background: red;
 text-indent: -999em;
 width: 100px;
 height: 110px;
 box-sizing: content-box;
 border-radius: 5px;
 position: relative;
 overflow: hidden;
 border: 15px solid red;
 border-bottom: 0;
}
#facebook-icon:before {
 content: "/20";
 position: absolute;
 background: red;
 width: 40px;
 height: 90px;
 bottom: -30px;
 right: -37px;
 border: 20px solid #eee;
 border-radius: 25px;
 box-sizing: content-box;
}
#facebook-icon:after {
 content: "/20";
 position: absolute;
 width: 55px;
 top: 50px;
 height: 20px;
 background: #eee;
 right: 5px;
 box-sizing: content-box;
}

40.旗

45个炫酷的 CSS 形状(值得收藏)

 

#flag {
 width: 110px;
 height: 56px;
 box-sizing: content-box;
 padding-top: 15px;
 position: relative;
 background: red;
 color: white;
 font-size: 11px;
 letter-spacing: 0.2em;
 text-align: center;
 text-transform: uppercase;
}
#flag:after {
 content: "";
 position: absolute;
 left: 0;
 bottom: 0;
 width: 0;
 height: 0;
 border-bottom: 13px solid #eee;
 border-left: 55px solid transparent;
 border-right: 55px solid transparent;
}

42.十字架

45个炫酷的 CSS 形状(值得收藏)

 

#cross {
 background: red;
 height: 100px;
 position: relative;
 width: 20px;
}
#cross:after {
 background: red;
 content: "";
 height: 20px;
 left: -40px;
 position: absolute;
 top: 40px;
 width: 100px;
}

43.根基

45个炫酷的 CSS 形状(值得收藏)

 

 #base {
 background: red;
 display: inline-block;
 height: 55px;
 margin-left: 20px;
 margin-top: 55px;
 position: relative;
 width: 100px;
}
#base:before {
 border-bottom: 35px solid red;
 border-left: 50px solid transparent;
 border-right: 50px solid transparent;
 content: "";
 height: 0;
 left: 0;
 position: absolute;
 top: -35px;
 width: 0;
}

44.指示器

45个炫酷的 CSS 形状(值得收藏)

 

#pointer {
 width: 200px;
 height: 40px;
 position: relative;
 background: red;
}
#pointer:after {
 content: "";
 position: absolute;
 left: 0;
 bottom: 0;
 width: 0;
 height: 0;
 border-left: 20px solid white;
 border-top: 20px solid transparent;
 border-bottom: 20px solid transparent;
}
#pointer:before {
 content: "";
 position: absolute;
 right: -20px;
 bottom: 0;
 width: 0;
 height: 0;
 border-left: 20px solid red;
 border-top: 20px solid transparent;
 border-bottom: 20px solid transparent;
}

45.锁

45个炫酷的 CSS 形状(值得收藏)

 

#lock {
 font-size: 8px;
 position: relative;
 width: 18em;
 height: 13em;
 border-radius: 2em;
 top: 10em;
 box-sizing: border-box;
 border: 3.5em solid red;
 border-right-width: 7.5em;
 border-left-width: 7.5em;
 margin: 0 0 6rem 0;
}
#lock:before {
 content: "";
 box-sizing: border-box;
 position: absolute;
 border: 2.5em solid red;
 width: 14em;
 height: 12em;
 left: 50%;
 margin-left: -7em;
 top: -12em;
 border-top-left-radius: 7em;
 border-top-right-radius: 7em;
}
#lock:after {
 content: "";
 box-sizing: border-box;
 position: absolute;
 border: 1em solid red;
 width: 5em;
 height: 8em;
 border-radius: 2.5em;
 left: 50%;
 top: -1em;
 margin-left: -2.5em;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值