有趣的鼠标悬浮模糊效果总结---(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,这是很直接的想法,但是这有个问题 ...
随机推荐
- dllMain函数
Windows在加载DLL的时候,需要一个入口函数,就如同控制台或DOS程序需要main函数.Win32程序需要WinMain函数一样.一些例子中,DLL并没有提供DllMain函数,应用工程也能成功 ...
- linux mysql 8 安装
http://blog.itpub.net/31015730/viewspace-2152272/ https://blog.csdn.net/HaHa_Sir/article/details/805 ...
- [USACO 2011 Dec Gold] Cow Calisthenics【二分】
Problem 1: Cow Calisthenics [Michael Cohen, 2010] Farmer John continues his never-ending quest to ke ...
- 备份字段(CATALOGUE_CODE)
update am_e4_entry set CATALOGUE_CODE_back=CATALOGUE_CODE; 还原字段 update am_e4_entry a set CATALOGUE_C ...
- Python variable 作用域和初始化
Python 根据LEGB rule在不同的namespace中找变量 在def的函数中对global 变量做修改还是不推荐的,应该将其作为参数传入函数 try: do_something() cnt ...
- 鼠标适配器Adapter
先来看看概念: 现在我们要写一个这样的东西,就是一个窗口,然后鼠标点一下就有一个小圆点,like this: 来我们来看代码: import java.awt.*; import java.util. ...
- IIS中不让下级应用程序继承主域名的web.config配置
<location path="." allowOverride="true" inheritInChildApplications="fals ...
- mysql之流程控制
目录 分支结构 循环结构 分支结构: 1.if condition then [statement] elseif condition then [statement] else [statement ...
- hihocoder offer收割编程练习赛10 C 区间价值
思路: 令v[l, r](0<= l <= r < n)表示区间[l,r]的价值,则长度为n的区间的价值最少为0,最多为n*(n-1)/2.整体对价值二分,求能满足sum{v[l, ...
- git push代码时的'git did not exit cleanly (exit code 1)'问题解决
在利用git管理本地发布的galleryLeftOrRight插件项目时,按照git的使用方法:先commit→master,再 push,发现提示错误git did not exit cleanly ...