【转】用CSS画各种形状(一)

本篇是以下两篇文章的转载和总结

纯CSS画基本形状
用CSS画三角形,普通版,文艺小阴影版~

1、画方形

width:100px;
height:100px;
background:red;
正方形

2、画正圆

width:100px;
height:100px;
background:red;
border-radius:50%;
正圆

3、画椭圆

width:200px;
height:100px;
background:red;
border-radius:100px / 50px;
椭圆

4、画个border理解图,再画三角形

width:100px;
height:100px;
background:#ddd;
border-top:30px solid red;
border-left:30px solid blue;
border-right:30px solid green;
border-bottom:30px solid black;
盒模型理解

接下来把盒模型的宽高都变成0

width:0;
height:0;
background:#ddd;
border-top:30px solid red;
border-left:30px solid blue;
border-right:30px solid green;
border-bottom:30px solid black;
宽高为0

然后把相应border的颜色改成transparent就可以看到三角形了

width:0;
height:0;
background:transparent;
border-top:30px solid red;
border-left:30px solid transparent;
border-right:30px solid transparent;
border-bottom:30px solid transparent;
三角形
width:0;
height:0;
background:transparent;
border-top:30px solid transparent;
border-left:30px solid blue;
border-right:30px solid transparent;
border-bottom:30px solid transparent;
三角形

当然,也可以这样,只需要更改相应的颜色就可以了。

width:0;
height:0;
background:transparent;
border-top:30px solid blue;
border-left:30px solid blue;
border-right:30px solid transparent;
border-bottom:30px solid transparent;
屏幕快照 2017-05-06 下午1.36.34.png

还可以改变高度成为这样:

width:0;
height:0;
background:transparent;
border-top:50px solid red;
border-left:30px solid transparent;
border-right:30px solid transparent;
border-bottom:30px solid transparent;
这样也可以的

那我们如何给这个三角形加个外阴影呢?用box-shadow试试看~

width:0;
height:0;
background:transparent;
border-top:50px solid red;
border-left:30px solid transparent;
border-right:30px solid transparent;
border-bottom:30px solid transparent;
box-shadow:0 0 5px rgba(0,0,0,0.9)
带阴影

阴影是出来了,但是并没有围绕着三角形,而是围绕着整个border显现出来。接下来按照抄来的一个思路来解决这个问题,大致的思路就是,用after来进行叠加以画出阴影效果。

   详细的思路在这篇文章里

div.child{
      width:70px;
      height:50px;
      /* border:1px solid green; */
      position:relative;
      box-shadow:0 5px 3px -4px rgba(0,0,0,0.3);
      overflow:hidden;
    }
    div.child:after{
      content:'';
      position:absolute;
      width:50px;
      height:50px;
      border:1px solid red;
      background:red;
      box-shadow: 0 0 3px rgba(0,0,0,0.3);
      left:9px;
      top:30px;
      transform:rotate(45deg);
    }

这是效果

带阴影的三角形

先总结到这里,有时间再画平形四边形和其它形状。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 各种纯css图标 CSS3可以实现很多漂亮的图形,我收集了32种图形,在下面列出。直接用CSS3画出这些图形,要比...
    剑残阅读 13,296评论 0 8
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    wzhiq896阅读 5,893评论 0 2
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 6,859评论 0 11
  • 姓名:楼灵芝 单位:杭州熙林服饰 【日精进打卡第153天】 【知~学习】 《六项精进》背诵1遍,共598遍; 《大...
    心镜_8ef4阅读 1,333评论 0 0
  • 三生播出第一集的时候,看见杨幂的发际线的那一刻,就没有再看下去的欲望,总觉得她的古代妆没有现代好看,再者,有宫的阴...
    淇畔芷影阅读 3,555评论 0 7

友情链接更多精彩内容