css实现三角形,div实现三角形缺口

1、css实现三角形

有时候面试题或者日常需求中会有用纯css来实现三角形的例子,目前本人的知识量只能提供两种方案

首先是第一种,也是最常用的就是border法

1-1 border实现三角形

div{
      border:40px solid;
      border-left-color: lightslategrey;
      border-right-color: lightcoral;
      border-top-color: lawngreen;
      border-bottom-color: lightgreen;
      box-sizing: border-box;
      width: 40px;
}            

效果如下,如果你想要某一个方向的三角形,其他角度的颜色设置为透明就可以

比如我只想要粉色的三角形

/*顺序分别是上右下左*/
border-color: transparent lightcoral transparent transparent;

 

1-2 通过linear-gradient()来实现三角形

div{
  width: 50px;
  height: 50px;
  background: linear-gradient(-45deg, red 50%, transparent 50% ) ;
}

效果图如下:

那么就简单介绍一下 linear-gradient() 是css当中background的  渐变函数

他的第一个参数是指你开始的角度,角度图我从网上找了一个示意图,-45deg就代表就右下角到左上角,135deg就代表是左上角到右下角,你也可以直接指定方向 (left/right/top/bottom  to  left/right/top/bottom )

第二个参数是指定颜色,一般肯定是多个颜色的,因为要实现一个渐变的效果  后面的50%,可写可不写,写了就代表红色占了50%,这里划重点!!如果你第二个参数中的百分比,第一个参数大于等于第二个参数百分比,就不会出现渐变,比如

  {
    background: linear-gradient(-45deg, red 50%, blue 50% ) ;
  }    

因为每个元素占据了50%=50%,所有中间没有渐变效果,但是!

​
  {
    background: linear-gradient(-45deg, red 20%, blue 50% ) ;
  }    

​

就会出现渐变了

2、div实现缺角就是使用第三种方法

 width: 200px;
 height: 50px;
 background: linear-gradient(-45deg, transparent 20px, blue 0 ) ;

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值