您当前的位置: 首页 >  css

彭世瑜

暂无认证

  • 0浏览

    0关注

    2791博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

CSS绘图实现三角形并使用grid布局

彭世瑜 发布时间:2020-11-19 09:58:36 ,浏览量:0

基本示例

实现效果 在这里插入图片描述

实现代码


 
   .box-container {
     display: flex;
   }

   .box {
     width: 0;
     height: 0;
     margin: 10px;
   }

   /* 顶朝上 */
   .box-top {
     border-left: 50px solid transparent;
     border-right: 50px solid transparent;
     border-bottom: 50px solid green;
   }

   /* 顶朝下 */
   .box-bottom {
     border-left: 50px solid transparent;
     border-right: 50px solid transparent;
     border-top: 50px solid green;
   }

   /* 顶朝左 */
   .box-left {
     border-bottom: 50px solid transparent;
     border-top: 50px solid transparent;
     border-right: 50px solid green;
   }

   /* 顶朝右 */
   .box-right {
     border-bottom: 50px solid transparent;
     border-top: 50px solid transparent;
     border-left: 50px solid green;
   }

   /* 顶朝左上 */
   .box-top-left {
     border-right: 50px solid transparent;
     border-top: 50px solid green;
   }
   /*  顶朝右上 */
   .box-top-right {
     border-left: 50px solid transparent;
     border-top: 50px solid green;
   }
   /* 顶朝左下 */
   .box-bottom-left {
     border-right: 50px solid transparent;
     border-bottom: 50px solid green;
   }
   /* 顶朝右下 */
   .box-bottom-right {
     border-left: 50px solid transparent;
     border-bottom: 50px solid green;
   }
 

 
 
   
   
   
   
 

 
   
   
   
   
 

transparent 是透明的意思

实践示例

凌乱的三角形不好看,有了以上认识,我用grid布局改造一下位置排布

1、示例一 在这里插入图片描述



      .box-container-3x3 {
        display: grid;
        grid-template-columns: 100px 100px 100px;
      }

      .box {
        width: 0;
        height: 0;
      }

      /* 顶朝上 */
      .box-top {
        border-left: 50px solid transparent;
        border-right: 50px solid transparent;
        border-bottom: 50px solid green;
      }

      /* 顶朝下 */
      .box-bottom {
        border-left: 50px solid transparent;
        border-right: 50px solid transparent;
        border-top: 50px solid green;
      }

      /* 顶朝左 */
      .box-left {
        border-bottom: 50px solid transparent;
        border-top: 50px solid transparent;
        border-right: 50px solid green;
        /* 单元格内容对齐 */
        justify-self: end;
      }

      /* 顶朝右 */
      .box-right {
        border-bottom: 50px solid transparent;
        border-top: 50px solid transparent;
        border-left: 50px solid green;
      }



  
  
  

  
  
  

  
  
  

2、示例二 在这里插入图片描述


  .box-container-2x2 {
    display: grid;
    grid-template-columns: 50px 50px;
    
  }

  .box {
    width: 0;
    height: 0;
  }

  /* 顶朝左上 */
  .box-top-left {
    border-right: 50px solid transparent;
    border-top: 50px solid green;
  }
  /*  顶朝右上 */
  .box-top-right {
    border-left: 50px solid transparent;
    border-top: 50px solid green;
  }
  /* 顶朝左下 */
  .box-bottom-left {
    border-right: 50px solid transparent;
    border-bottom: 50px solid green;
  }
  /* 顶朝右下 */
  .box-bottom-right {
    border-left: 50px solid transparent;
    border-bottom: 50px solid green;
  }



  
  
  
  

参考 CSS实现各种方向三角形

关注
打赏
1665367115
查看更多评论
立即登录/注册

微信扫码登录

0.1703s