• CSS绘制三角形和箭头,不用再用图片了


    前言

    还在用图片制作箭头,三角形,那就太lou了。css可以轻松搞定这一切,而且颜色大小想怎么变就怎么变,还不用担心失真等问题。

    先来看看这段代码:

    /**css*/
    .d1{
    0;
    height: 0;
    border: 100px solid #339933;
    }
    /**html*/
    <div class="d1"></div>
    /**css*/
    .d2{
    0;
    height: 0;
    border- 100px;
    border-style: solid;
    border-color:#FFCCCC #0099CC #996699 #339933;
    }
    /**html*/
    <div class="d2"></div>
    CSS绘制三角形和箭头,不用再用图片了

    CSS绘制三角形和箭头,不用再用图片了

    看了这两段代码,和效果图,是不是有一点眉目了?原来画三角形,只需要用元素的`border`来控制就可以了,`border-with`控制大小, `border-style`控制样式(实线、虚线等), `border-color`控制颜色,分上、右、下、左

    三角形示例

    向下三角形

    /**css*/
    .d3{
    margin-left: 10px;
    float: left;
    0;
    height: 0;
    border- 100px;
    border-style: solid;
    border-color:#FFCCCC transparent transparent transparent;
    }
    /**html*/
    <div class="d3"></div>
    CSS绘制三角形和箭头,不用再用图片了

    CSS绘制三角形和箭头,不用再用图片了

    向左三角形

    /**css*/
    .d4{
    margin-left: 110px;
    float: left;
    0;
    height: 0;
    border- 100px;
    border-style: solid;
    border-color: transparent #0099CC transparent transparent;
    }
    /**html*/
    <div class="d4"></div>
    CSS绘制三角形和箭头,不用再用图片了

    CSS绘制三角形和箭头,不用再用图片了

    这里的`transparent`是透明的意思

    接下来两种就留给聪明的你了,相信你可以的,动手才知道原来这么简单!

    其实我们还可以通过,一种样式,来实现不能角度的三角形,那就是利用CSS3里面的旋转`transform:rotate(90deg)`。

    /**css*/
    .d4{
    margin-left: 110px;
    float: left;
    0;
    height: 0;
    border- 100px;
    border-style: solid;
    border-color: transparent #0099CC transparent transparent;
    transform: rotate(90deg); /*顺时针旋转90°*/
    }
    /**html*/
    <div class="d4"></div>
    CSS绘制三角形和箭头,不用再用图片了

    CSS绘制三角形和箭头,不用再用图片了

    箭头示例

    向左箭头

    /**css*/
    .left{
    position: absolute;
    }
    .left:before,.left:after{
    position: absolute;
    content: '';
    border-top: 10px transparent dashed;
    border-left: 10px transparent dashed;
    border-bottom: 10px transparent dashed;
    border-right: 10px #fff solid;
    }
    .left:before{
    border-right: 10px #0099CC solid;
    }
    .left:after{
    left: 1px; /*覆盖并错开1px*/
    border-right: 10px #fff solid;
    }
    /**html*/
    <i class="left" ></i>
    CSS绘制三角形和箭头,不用再用图片了

    CSS绘制三角形和箭头,不用再用图片了

    是不是发现箭头和三角形是一样的呢?发现了,说明你已经懂了,箭头其实就是2个三角形,然后用白色三角形覆盖蓝色三角形,并且错开1px,刚刚好就形成了箭头。这就和《最强大脑》层叠消融项目是一样的。

    向上箭头

    /**css*/
    .top{
    position: absolute;
    }
    .top:before,.top:after{
    position: absolute;
    content: '';
    border-top: 10px transparent dashed;
    border-left: 10px transparent dashed;
    border-right: 10px transparent dashed;
    border-bottom: 10px #fff solid;
    }
    .top:before{
    border-bottom: 10px #0099CC solid;
    }
    .top:after{
    top: 1px; /*覆盖并错开1px*/
    border-bottom: 10px #fff solid;
    }
    /**html*/
    <i class="top" ></i>
    CSS绘制三角形和箭头,不用再用图片了

     向左箭头(在向上箭头基础上做了90旋转)

    .left{
        position: absolute;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
       
    }
    .left:before,.left:after{
        position: absolute;
        content: '';
        border-top: 5.5px transparent dashed;
        border-left: 5.5px transparent dashed;
        border-right: 5.5px transparent dashed;
        border-bottom: 5.5px #fff solid;
    }
    .left:before{
        border-bottom: 5.5px #6E6E6E solid;
    
    }
    .left:after{
        top: 1px; /*覆盖并错开1px*/
        border-bottom: 5.5px #fff solid;
    }

    /**html*/

    <i class="top" ></i>

      

  • 相关阅读:
    Django集成celery发送异步邮件
    Bootstrap表格实现列左右调整大小
    Django通用类视图实现忘记密码重置密码功能
    Django项目使用ckeditor(不使用admin)
    HTML提交form表单后获取返回的数据
    Django后端发送小程序微信模板消息(服务通知)
    Django对接支付宝实现支付宝充值金币功能
    Django全文搜索django-haystack+whoosh+jieba实现中文全文搜索
    Django生成PDF文档显示在网页上以及解决PDF中文显示乱码的问题
    PHP socket 接收 java端口 netty 网络字节序
  • 原文地址:https://www.cnblogs.com/zmdComeOn/p/11101385.html
Copyright © 2020-2023  润新知