纯js和css实现渐变色包括静态渐变和动态渐变


Posted in Javascript onMay 29, 2014

说起“渐变色”,你会想起什么?

当我开始搜索查找这个名词的时候,才发现它实际上是有两种理解或者说是两种形式的:动态渐变和静态渐变。

所谓动态渐变,举个简单的例子:他来了,她的脸渐渐红了...渐渐的,渐渐改变的,是不断在改变的;而静态渐变,也就更简单了:天上一到彩虹,赤橙黄绿青蓝紫啊...在当前展示的成品中,颜色从一部分到另一部分的颜色是不一样的,可能幅度比较小,是逐渐改变的,但有一点是至关重要的,它已经存在了,形成了变化的现状且无法再改变。

这样我们先来用javascript实现一下所谓的动态渐变,考虑动态原因就不上图了,我来简单介绍下思路:

* 动态渐变

<span style="font-size:12px;"><html> 
... 
<body> 
<center> 
<div id="fade" style="width:600px;height:200px;"></div> 
</center> 
</body> 
</html></span>

为了方便查看,我写的是内嵌样式,还是推荐使用外链样式的使用啊,接下来进行简单编写动态实现渐变效果:
<span style="font-size:12px;"><script type="text/javascript"> 
var node=document.getElementById("fade"); 
var color="#0000"; 
var level=1; window.load=function fading(){ 
node.style.background=color.+level.toString()+level.toString(); 
level++; 
if(level>16){ 
clearTimeOut(fading); 
}else{ 
setTimeOut(fading,300); 
} 
} 
<script></span>

这样看来我不用多说了吧,就一个拼接和一个重复调用的问题。

* 静态渐变

先来附图,大家看看效果,大体明白神马意思。
纯js和css实现渐变色包括静态渐变和动态渐变 
在不考虑兼容的前提下,额,真改研究下兼容了,这弄界面不考虑兼容有点缺啊,好吧,先这样继续说,我是用的webkit内核,就先用这个来介绍

在css样式中添加:

background:-webkit-gradient(linear, 100% 0%, 0% 0%, from(#ffffff),color-stop(0.5,#0000ff),to(#ffffff));

简单解释下:

linear:这个就碰到了线性渐变和径向渐变的两个概念,无非是在一条线上进行变化的线性和像圆一样向四周扩散的径向;

后面的四个值:分别代表相应方向的px值,可以从左顺时针转的顺序记忆,但是它代表的是to,截止到的颜色

from:这就是开始的颜色了

to:和from是同时出现的,最后渐变结束的颜色

而color-stop:则是指在变化到线的哪个位置的时候会出现什么颜色,当然是从周围过渡过去的,相当于from,to过渡点,from过渡点,to;

好了,这样就明白多了吧,附送下简单的其他的基本代码

FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=1,startColorStr=#b8c4cb,endColorStr=#f6f6f8);/*IE6*/ 
background:-moz-linear-gradient(left,#ffffff,#ff0000);/*非IE6的其它*/ 
background:-webkit-gradient(linear, 100% 0%, 0% 0%, from(#ff0000), to(#0000ff));/*非IE6的其它*/

今天看了一集《开讲了》,原来还有这么好看的节目,太lower了么我....
Javascript 相关文章推荐
一段批量给页面上的控件赋值js
Jun 19 Javascript
关于JavaScript中string 的replace
Apr 12 Javascript
控制input输入框中提示信息的显示和隐藏的方法
Feb 12 Javascript
JavaScript基本语法讲解
Jun 03 Javascript
创建你的第一个AngularJS应用的方法
Jun 16 Javascript
Bootstrap自定义文件上传下载样式
May 26 Javascript
用js控件div的滚动条,让它在内容更新时自动滚到底部的实现方法
Oct 27 Javascript
vue在使用ECharts时的异步更新和数据加载详解
Nov 22 Javascript
JS 验证码功能的三种实现方式
Nov 26 Javascript
Vue学习之组件用法实例详解
Jan 06 Javascript
解决removeEventListener 无法清除监听的问题
Oct 30 Javascript
vue-drawer-layout实现手势滑出菜单栏
Nov 19 Vue.js
js实现页面跳转重定向的几种方式
May 29 #Javascript
用js闭包的方法实现多点标注冒泡示例
May 29 #Javascript
关于JavaScript中name的意义冲突示例介绍
May 29 #Javascript
window.open()详解及浏览器兼容性问题示例探讨
May 29 #Javascript
javaScript年份下拉列表框内容为当前年份及前后50年
May 28 #Javascript
href下载文件根据id取url并下载
May 28 #Javascript
javascript自定义的addClass()方法
May 28 #Javascript
You might like
PHP5与MySQL数据库操作常用代码 收集
2010/03/21 PHP
PHP使用适合阅读的格式显示文件大小的方法
2015/03/05 PHP
php身份证号码检查类实例
2015/06/18 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
jquery js 获取时间差、时间格式具体代码
2013/06/05 Javascript
js中文逗号转英文实现
2014/02/11 Javascript
JavaScript中检查对象property的存在性方法介绍
2014/12/30 Javascript
在JavaScript中处理字符串之fontcolor()方法的使用
2015/06/08 Javascript
AngularJS+Node.js实现在线聊天室
2015/08/28 Javascript
jQuery选择器基础入门教程
2016/05/10 Javascript
详解vee-validate的使用个人小结
2017/06/07 Javascript
Angular4项目中添加i18n国际化插件ngx-translate的步骤详解
2017/07/02 Javascript
JavaScript创建对象的七种方式全面总结
2017/08/21 Javascript
详解react-router 4.0 下服务器如何配合BrowserRouter
2017/12/29 Javascript
vue 属性拦截实现双向绑定的实例代码
2018/10/24 Javascript
nodejs中request库使用HTTPS代理的方法
2019/04/30 NodeJs
微信小程序webview 脚手架使用详解
2019/07/22 Javascript
微信小程序实现定位及到指定位置导航的示例代码
2019/08/20 Javascript
关于ckeditor在bootstrap中modal中弹框无法输入的解决方法
2019/09/11 Javascript
vue项目中常见问题及解决方案(推荐)
2019/10/21 Javascript
Linux下将Python的Django项目部署到Apache服务器
2015/12/24 Python
python队列通信:rabbitMQ的使用(实例讲解)
2017/12/22 Python
python使用tcp实现局域网内文件传输
2020/03/20 Python
Python基于百度云文字识别API
2018/12/13 Python
Python数据可视化之画图
2019/01/15 Python
python实现词法分析器
2019/01/31 Python
详解Python直接赋值,深拷贝和浅拷贝
2020/07/09 Python
PyTorch中clone()、detach()及相关扩展详解
2020/12/09 Python
2014年公司庆元旦活动方案
2014/03/05 职场文书
食品流通安全承诺书
2014/05/22 职场文书
土木工程求职信
2014/05/29 职场文书
分公司经理任命书
2014/06/05 职场文书
中学学校门卫岗位职责
2014/08/15 职场文书
第一节英语课开场白
2015/06/01 职场文书
入队仪式主持词
2015/07/04 职场文书
创业计划书之餐饮馄饨店
2019/07/18 职场文书