美文网首页
一个炫酷的按钮

一个炫酷的按钮

作者: 切图仔_Howe | 来源:发表于2018-09-28 10:17 被阅读0次
    <div class="button">
        <span>鼠标移过来试试</span>
    </div>
    

    写出来的效果是这样的:


    640.gif

    直接上css和js啦

    <style>
            .button {
              position: relative;
              appearance: none;
              background: #f72359;
              padding: 1em 2em;
              border: none;
              color: white;
              font-size: 1.2em;
              cursor: pointer;
              outline: none;
              overflow: hidden;
              border-radius: 100px;
            }
            .button span {
                position: relative;
              }
    
              .button::before {
                --size: 0;  
    
                content: '';
                position: absolute;
                left: var(--x);
                top: var(--y);
                width: var(--size);
                height: var(--size);
                background: radial-gradient(circle closest-side, #4405f7, transparent);
                transform: translate(-50%, -50%);
                transition: width .2s ease, height .2s ease;
              }
    
              .button:hover::before {
                --size: 400px;
              }
        </style>
    
    
    <script type="text/javascript">
            document.querySelector('.button').onmousemove = (e) => {
    
              const x = e.pageX - e.target.offsetLeft
              const y = e.pageY - e.target.offsetTop
    
              e.target.style.setProperty('--x', `${ x }px`)
              e.target.style.setProperty('--y', `${ y }px`)
    
            }
        </script>
    
    

    样式中涉及的css变量正在大量普及,js的es6写法也值得学习。
    本文借鉴:https://mp.weixin.qq.com/s/0uNQxcEG6m1LQrzUlVLW3A?tdsourcetag=s_pcqq_aiomsg

    相关文章

      网友评论

          本文标题:一个炫酷的按钮

          本文链接:https://www.haomeiwen.com/subject/gtmuoftx.html