有趣的鼠标悬浮模糊效果总结---(filter,渐变文字)
绘制渐变背景图
第一种:大神的想法,摘抄
background-image: -webkit-linear-gradient(left, blue, red 25%, blue 50%, red 75%, blue 100%);
使用CSS3的渐变绘制图像,从左到右。
需要注意的是颜色是 0到49%的颜色组 = 50%到99%的颜色组,且最后100%的颜色要和开头0的颜色相等
这是为了能无缝衔接流光效果, 之后有说到
裁剪背景图
-webkit-background-clip: text;
使用文字作为裁剪区域向外裁剪,此时文字颜色仍覆盖背景图
设置字体颜色
-webkit-text-fill-color: transparent; or color: transparent;
将字体颜色设置成透明,这样就能将背景图显示出来了
设置背景图长度
background-size: 200% 100%;
将背景图宽度拉长至两倍,之前设置background-image的两份相同的颜色组,就是为了能在此拉长后只显示一份颜色组,另外超出的半截颜色组用来实现流光效果
开始动画
animation: streamer 5s infinite linear;
@keyframes streamer {
0% {
background-position: 0 0;
}
100% {
background-position: -100% 0;
}
}
第二种实现方式:(比较笨,是自己想的)
.span{
position:absolute;
top:33%;
left:15%;
display:inline-block;
font-size:33px;
font-family: 'Microsoft YaHei';
animation:span 3s linear infinite;
-webkit-animation:span 3s linear infinite;
-moz-animation:span 3s linear infinite;
background-image: -webkit-gradient(linear, left top,right top, from(blue), color-stop(0.25, green), color-stop(0.5, red), color-stop(0.75, pink), to(blue));
background-image: -moz-gradient(linear, left , blue, green, red, pink, blue);
-webkit-background-clip: text;//用文字对背景进行裁剪
-webkit-text-fill-color: transparent;//文字颜色为透明,就可以用背景色代替文字颜色
}
@keyframes span{
0%{
background-image: -webkit-gradient(linear, left top,right top, from(red),color-stop(0.5, blue), to(green));
background-image: -moz-gradient(linear, left , blue, green, red, pink, blue);
}
50%{
background-image: -webkit-gradient(linear, left top,right top, from(green),color-stop(0.5, red), to(blue));
background-image: -moz-gradient(linear, left , blue, green, red, pink, blue);
}
100%{
background-image: -webkit-gradient(linear, left top,right top, from(blue),color-stop(0.5, green), to(red));
background-image: -moz-gradient(linear, left , blue, green, red, pink, blue);
}
}
使用伪元素的方法实现边框从四周散开或者聚拢
.bigDiv::after{
content:'';
width:5%;
height:100%;
position:absolute;
left:50%;
top:;
border-top:4px solid white;
border-bottom:4px solid white;
-webkit-transition:all 1s linear ;
-moz-transition:all 1s linear ;
-ms-transition:all 1s linear ;
-o-transition:all 1s linear ;
transition:all 1s linear;
height:100%;
}
.container:hover .bigDiv::after{
width:49%;
-webkit-transition:all 1s linear ;
-moz-transition:all 1s linear ;
-ms-transition:all 1s linear ;
-o-transition:all 1s linear ;
transition:all 1s linear;
}
.bigDiv::before{
content:'';
width:3%;
height:100%;
position:absolute;
left:50%;
top:;
border-top:4px solid white;
border-bottom:4px solid white;
-webkit-transition:all 1s linear ;
-moz-transition:all 1s linear ;
-ms-transition:all 1s linear ;
-o-transition:all 1s linear ;
transition:all 1s linear;
}
.container:hover .bigDiv::before{
width:50%;
left:0%;
-webkit-transition:all 1s linear ;
-moz-transition:all 1s linear ;
-ms-transition:all 1s linear ;
-o-transition:all 1s linear ;
transition:all 1s linear;
}
以上是上下边框效果的实现;
下面是如何实现左右边框实现效果
<div class="container">
<div class="context"></div>
<div class="bigDiv" >
<i class="border_left"></i>
<span class="span">
Welcome momoxiaobai
</span>
<a class="span1" href="#">
Click here
</a>
</div>
</div>
</div>
创建一个元素,设置此元素的伪元素的位置,设计相应的效果:
.border_left::before{
content:'';
width:521px;
height:0px;
position:absolute;
left:%;
top:%;
border-left:2px solid white;
border-right:2px solid white;
-webkit-transition:all 1s linear ;
-moz-transition:all 1s linear ;
-ms-transition:all 1s linear ;
-o-transition:all 1s linear ;
transition:all 1s linear;
}
.container:hover .border_left::before{
height:.5px;
-webkit-transition:all 1s linear ;
-moz-transition:all 1s linear ;
-ms-transition:all 1s linear ;
-o-transition:all 1s linear ;
transition:all 1s linear;
}
.border_left::after{
content:'';
width:521px;
height:0px;
position:absolute;
left:%;
top:%;
border-left:2px solid white;
border-right:2px solid white;
-webkit-transition:all 1s linear ;
-moz-transition:all 1s linear ;
-ms-transition:all 1s linear ;
-o-transition:all 1s linear ;
transition:all 1s linear;
}
.container:hover .border_left::after{
height:.5px;
top:%;
-webkit-transition:all 1s linear ;
-moz-transition:all 1s linear ;
-ms-transition:all 1s linear ;
-o-transition:all 1s linear ;
transition:all 1s linear;
}
有趣的鼠标悬浮模糊效果总结---(filter,渐变文字)的更多相关文章
- css实现鼠标悬浮字体流光背景模糊效果
原文地址:→看过来 写在前面 有的时候感觉写点小玩意儿挺开心的,还能实践很多的小知识点,所以这次学着写了个有趣的鼠标悬浮模糊效果,只使用了css额. 效果图 源码地址→传送门 预览地址→传送门 小知识 ...
- asp.net gridview 鼠标悬浮提示信息
使用场景: gridview绑定数据,某列数据太多,故超过一定字符,隐藏起来,同时鼠标移到指定列显示其明细信息: 知识点: 1,oderListTbl_DataBound事件中,添加,oderList ...
- ArcGIS api fo silverlight学习三(利用ElementLayer实现鼠标悬浮弹出自定义窗体)
接着上一节继续学习,本节主要是利用ElementLayer实现鼠标悬浮弹出自定义窗体 参考博文:http://www.cnblogs.com/luxiaoxun/p/3322218.html 一.新建 ...
- IntelliJ设置鼠标悬浮提示和修改快捷键
IntelliJ设置鼠标悬浮提示和修改快捷键 设置鼠标悬浮提示 修改快捷键 进入设置菜单 删除原来的快捷键(注:你可以选择保留原来的快捷键,同时使用两个快捷键) Good Luck
- 一款很实用的jQuery鼠标悬浮有动画效果的响应式瀑布流插件
一款很实用的jQuery鼠标悬浮有动画效果的响应式瀑布流插件 在线预览 下载地址 实例代码 <!doctype html> <html lang="zh"> ...
- CSS/JS图片鼠标悬浮一道光闪过
看到有些网站logo鼠标悬浮上面的时候,会出现一道光,一闪而过,刚开始以为是gif图,已审查, 居然不是:现在就实现在这种效果: 先看看CSS实现的效果图: 看到没,就是这道刺眼的白光.... 啊 ...
- 使用JS实现鼠标悬浮切换显示
实现的是在鼠标悬停在不同链接上,在同一位置切换显示想要显示的内容 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional// ...
- 利用 :before :after伪类实现鼠标悬浮动画效果
1.最近在逛网站的时候,想找一下喜欢的鼠标悬浮效果,避免广告的嫌疑,直接放图了: 2.在实现的时候,如果在直接使用鼠标hover ,transform,进行过渡,不能达到想要的效果,因为同时只能触发一 ...
- CSS鼠标悬浮DIV后显示DIV外的按钮
昨天写样式遇到个问题,如何让鼠标悬浮DIV后,显示DIV外的按钮,可以点击到按钮. 效果如下: 问题: 在DIV hover时候将按钮设为display: block,这是很直接的想法,但是这有个问题 ...
随机推荐
- Windows查杀端口
Windows环境下当某个端口被占用时,通过netstat命令进行查询pid,然后通过taskkill命令杀进程. 一.查询占用端口号的进程信息 netstat -an|findstr 二.杀掉占用端 ...
- DB2:在缓冲池 "1" 中当前没有任何页面可用。. SQLCODE=-1218, SQLSTATE=57011, DRIVER=3.61.75
服务器端DB2数据库最近频繁报错: 在缓冲池 , SQLSTATE=, DRIVER= 试验发现简单的查询SQL执行没有问题,复杂的SQL就会报上述错误. 百度发现是因为数据库bufferpool太小 ...
- SpringCloud开发学习总结(三)—— 服务治理Eureka
在最初开始构建微服务系统的时候可能服务并不多,我们可以通过做一些静态配置来完成服务的调用.比如,有两个服务A和B,其中服务A需要调用服务B来完成一个业务操作时,为了实现服务B的高可用,不论采用服务端负 ...
- 【转】在Ubuntu中安装HBase
原博客出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/ 感谢! Posted: Apr 3, 2014 Tags: Hado ...
- Flutter交互实战-即刻App探索页下拉&拖拽效果
前言 Flutter最近比较热门,但是Flutter成体系的文章并不多,前期避免不了踩坑:我这篇文章主要介绍如何使用Flutter实现一个比较复杂的手势交互,顺便分享一下我在使用Flutter过程中遇 ...
- colormap画出的图不是彩色问题
针对matlab2017渲染出的彩色图是黑白的问题. t=labels; t(tstSet(:,end-))=Relabels; t=reshape(t,,); t=t'; figure imshow ...
- Xamarin.Forms跨平台开发入门-第二部分:深入解析
英文原文: https://developer.xamarin.com/guides/xamarin-forms/getting-started/hello-xamarin-forms/deepdiv ...
- 结对项目--黄金点游戏(邓乐&曾亮)
#include<stdio.h> #include<stdlib.h> #include<Windows.h> int result[100][1000000]; ...
- JS Object 属性判断
in 方法 var shapeInfo = {name:“lium”}; if (“name” in shapeInfo) {...}
- 【转】MFC 自定义edit 限制输入十六进制内容 响应复制粘贴全选剪切的功能
参考地址:MFC 自定义edit 限制输入内容 响应复制粘贴全选剪切的功能 Ctrl组合键ASCII码 ^Z代表Ctrl+z ASCII值 控制字符 AS ...