Heim  >  Fragen und Antworten  >  Hauptteil

javascript - Wie wird dieser Strichanimationseffekt erreicht?

Dieser strichartige Effekt erscheint, wenn die Maus darüber fährt. Kann er mit reinem CSS erreicht werden? Wie erreicht man den gleichen Effekt?

学习ing学习ing2644 Tage vor835

Antworte allen(3)Ich werde antworten

  • 欧阳克

    欧阳克2017-06-24 09:46:08

    开始我想尝试用伪类来实现,但z-index好像没办法处理,所以就这样模拟了。
    demo

    <style type="text/css">
    .btn{
        position: relative;
        height: 45px;
        width: 200px;
        background: #fff;
        color: #6cf;
        text-align: center;
        line-height: 45px;
        -webkit-box-sizing:border-box;
        box-sizing:border-box;
        margin: 0 auto;
        border: 1px solid #ccc;
    }
    
    .b-l{
        position: absolute;
        content: "";
        display: block;
        width: 0px;
        height: 1px;
        left: -1px;
        top: -2px;
        background: #6cf;
        z-index: -1;
        -webkit-transition:width 1s linear 2s,height 0.5s linear 1.5s;
        transition:width 1s linear 2s,height 0.5s linear 1.5s;
    }
    
    .b-r{
        position: absolute;
        content: "";
        display: block;
        width: 0px;
        height: 1px;
        right: -1px;
        bottom: -2px;
        background: #6cf;
        z-index: -1;
        -webkit-transition:width 1s linear 0.5s,height 0.5s linear;
        transition:width 1s linear 0.5s,height 0.5s linear;
    }
    
    .btn:hover .b-l{
        -webkit-transition:width 1s linear,height 0.5s linear 1s;
        transition:width 1s linear,height 0.5s linear 1s;
        width: 201px;
        height: 46px;
    }
    
    .btn:hover .b-r{
        -webkit-transition:width 1s linear 1.5s,height 0.5s linear 2.5s;
        transition:width 1s linear 1.5s,height 0.5s linear 2.5s;
        width: 201px;
        height: 46px;
    }
    </style>
    <body>
    <p class="btn">
        <p class="b-l"></p>
        <p class="b-r"></p>
        btn
    </p>
    </body>

    Antwort
    0
  • 代言

    代言2017-06-24 09:46:08

    可以实现 主要依靠animation-delay属性,可以自行搜索下

    Antwort
    0
  • 習慣沉默

    習慣沉默2017-06-24 09:46:08

    是SVG吧。

    Antwort
    0
  • StornierenAntwort