css实现鼠标悬浮字体流光背景模糊效果

原文地址: ----> 看过来

有兴趣的朋友可以直接点原文地址看效果,在这里我只写下作者实现效果所用到的知识点。

filter: blur(n+px);
//用来将图片模糊,n为Number类型,代表模糊程度,数字越大越模糊
background-clip: text;
//background-clip 用于北京图片的裁剪,决定背景的开始位置,当设置为text时,可将背景设置在文字上面
-webkit-text-fill-color: transparent;
//设置字体颜色为填充,在这里设置成transparent,然后在自己填充一个颜色渐变的字体颜色。
background-image: -webkit-linear-gradient(left, red, yellow 25%, red 50%, yellow 75%, red 100%);
background-size: 200% 100%;
//线性渐变,这里为文字添加一个渐变色,为了实现流光渐变的效果,需要将背景宽度设置为200%,且linear-gradient的0%和100%颜色一样,便于前后衔接上
animation: change 5s infinite linear;
//在设置好背景色之后为字体添加动画,使文字产生流光效果。

边框向两边伸展的效果

在实际中我们只能设置边框的宽度,而不能改变边框的长度,所以此处不能直接用border的属性。而是通过追加2个元素,并改变其大小来实现本元素的边框向两边伸展的效果。分别设置这两个元素的上下边框及左右边框。

#content:before {
            content: " ";
            position: absolute;
            left: 50%;
            top: 0;
            width: 0;
            height: 100%;
            border: 3px solid #fff;
            border-left: none;
            border-right: none;
            transition: all 0.8s;
            box-sizing: border-box;
        }
#box:hover #content:before {
            width: 100%;
            left: 0;
        }

 

追加元素的实现

追加元素宽或高为0,当鼠标移动到box上时,宽或高渐变到100%,即可。 

 

左和右边框同理实现。

posted @ 2017-10-17 14:33  凉生丿墨染  阅读(977)  评论(0编辑  收藏  举报