<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feed.cssbox.net/styles/temp01.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0"><channel><atom:link href="http://feed.cssbox.net" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feed.feedsky.com/cssbox" type="application/rss+xml"></fs:self_link><lastBuildDate>Thu, 17 May 2012 07:00:00 GMT</lastBuildDate><title>CSSBOX.net</title><description>专注于网页交互设计与前端开发</description><image><url>http://www.feedsky.com/feed/cssbox/sc/gif</url><title>CSSBOX.net</title><link>http://www.cssbox.net</link></image><link>http://www.cssbox.net</link><link xmlns="http://www.w3.org/2005/Atom" href="http://www.cssbox.net/atom.xml" rel="self"></link><link xmlns="http://www.w3.org/2005/Atom" href="http://www.cssbox.net"></link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net</id><author xmlns="http://www.w3.org/2005/Atom"><name>GaoLi</name><email>3071730@qq.com</email></author><pubDate>Thu, 17 May 2012 17:28:05 GMT</pubDate><managingEditor>GaoLi</managingEditor><item><title>JS 异步加载</title><link>http://www.cssbox.net/js-async-loading.html</link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net/js-async-loading</id><content xmlns="http://www.w3.org/2005/Atom" type="html">&lt;p&gt;在 IE 系列浏览器中，我们可以通过 &lt;code&gt;onreadystatechange&lt;/code&gt; 监听元素加载状态，&lt;/p&gt;

&lt;p&gt;然后通过 &lt;code&gt;readyState&lt;/code&gt; 属性判断元素是否加载完成。&lt;/p&gt;

&lt;p&gt;Chrome、FireFox 等标准浏览器中，我们则可以通过 &lt;code&gt;onload&lt;/code&gt; 监听元素是否加载完成。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/**
 * 判断元素是否加载成功
 */
node.onload = node.onreadystatechange = function() {
    if (!this.readyState || this.readyState === &quot;loaded&quot; || this.readyState === &quot;complete&quot;) {
        alert(&quot;加载成功！&quot;);
    }
};
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;最后附上 &lt;a href=&quot;/demo/js-async-loading.html&quot;&gt;DEMO&lt;/a&gt; 一枚，供为参考。&lt;/p&gt;</content><content:encoded>&lt;p&gt;在 IE 系列浏览器中，我们可以通过 &lt;code&gt;onreadystatechange&lt;/code&gt; 监听元素加载状态，&lt;/p&gt;

&lt;p&gt;然后通过 &lt;code&gt;readyState&lt;/code&gt; 属性判断元素是否加载完成。&lt;/p&gt;

&lt;p&gt;Chrome、FireFox 等标准浏览器中，我们则可以通过 &lt;code&gt;onload&lt;/code&gt; 监听元素是否加载完成。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/**
 * 判断元素是否加载成功
 */
node.onload = node.onreadystatechange = function() {
    if (!this.readyState || this.readyState === &quot;loaded&quot; || this.readyState === &quot;complete&quot;) {
        alert(&quot;加载成功！&quot;);
    }
};
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;最后附上 &lt;a href=&quot;/demo/js-async-loading.html&quot;&gt;DEMO&lt;/a&gt; 一枚，供为参考。&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/639613476/cssbox/feedsky/s.gif?r=http://www.cssbox.net/js-async-loading.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><pubDate>Thu, 17 May 2012 15:00:00 +0800</pubDate><guid isPermaLink="false">http://www.cssbox.net/js-async-loading</guid><fs:srclink>http://www.cssbox.net/js-async-loading.html</fs:srclink><fs:srcfeed>http://www.cssbox.net/atom.xml</fs:srcfeed><fs:itemid>feedsky/cssbox/~8929025/639613476/5811487</fs:itemid></item><item><title>DOM 节点关系与操作</title><link>http://www.cssbox.net/dom.html</link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net/dom</id><content xmlns="http://www.w3.org/2005/Atom" type="html">&lt;p&gt;&lt;strong&gt;节点关系&lt;/strong&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;// 父节点
someNode.parentNode
// 子节点
someNode.childNodes
// 子节点个数
someNode.childNodes.length
// 第一个子节点
someNode.firstChild
// 最后个子节点
someNode.lastChild
// 上一个同胞节点
someNode.previousSibling
// 下一个同胞节点
someNode.nextSibling

// 仅元素节点 IE9 / chrome / firefox

// 子节点个数
someNode.childElementCount
// 第一个子节点
someNode.firstElementChild
// 最后个子节点
someNode.lastElementChild
// 上一个同胞节点
someNode.previousElementSibling
// 下一个同胞节点
someNode.nextElementSibling
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;操作节点&lt;/strong&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;// 向节点的子节点列表的末尾添加新的子节点
someNode.appendChild(newchild)
// 在已有的子节点前插入一个新的子节点
someNode.insertBefore(newchild, refchild)
// 将某个子节点替换为另一个
someNode.replaceChild(new_node, old_node)
// 从子节点列表中删除某个节点
someNode.removeChild(node)
// 创建指定的节点的精确拷贝
someNode.cloneNode(include_all)
&lt;/code&gt;&lt;/pre&gt;</content><content:encoded>&lt;p&gt;&lt;strong&gt;节点关系&lt;/strong&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;// 父节点
someNode.parentNode
// 子节点
someNode.childNodes
// 子节点个数
someNode.childNodes.length
// 第一个子节点
someNode.firstChild
// 最后个子节点
someNode.lastChild
// 上一个同胞节点
someNode.previousSibling
// 下一个同胞节点
someNode.nextSibling

// 仅元素节点 IE9 / chrome / firefox

// 子节点个数
someNode.childElementCount
// 第一个子节点
someNode.firstElementChild
// 最后个子节点
someNode.lastElementChild
// 上一个同胞节点
someNode.previousElementSibling
// 下一个同胞节点
someNode.nextElementSibling
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;操作节点&lt;/strong&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;// 向节点的子节点列表的末尾添加新的子节点
someNode.appendChild(newchild)
// 在已有的子节点前插入一个新的子节点
someNode.insertBefore(newchild, refchild)
// 将某个子节点替换为另一个
someNode.replaceChild(new_node, old_node)
// 从子节点列表中删除某个节点
someNode.removeChild(node)
// 创建指定的节点的精确拷贝
someNode.cloneNode(include_all)
&lt;/code&gt;&lt;/pre&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/638323414/cssbox/feedsky/s.gif?r=http://www.cssbox.net/dom.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><pubDate>Mon, 14 May 2012 15:00:00 +0800</pubDate><guid isPermaLink="false">http://www.cssbox.net/dom</guid><fs:srclink>http://www.cssbox.net/dom.html</fs:srclink><fs:srcfeed>http://www.cssbox.net/atom.xml</fs:srcfeed><fs:itemid>feedsky/cssbox/~8929025/638323414/5811487</fs:itemid></item><item><title>基于 BACKBONE.JS 的贪吃蛇</title><link>http://www.cssbox.net/backbone-snake.html</link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net/backbone-snake</id><content xmlns="http://www.w3.org/2005/Atom" type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2012/02/backbone-snake.jpg&quot; title=&quot;基于 BACKBONE.JS 的贪吃蛇&quot; alt=&quot;基于 BACKBONE.JS 的贪吃蛇&quot; /&gt;&lt;/p&gt;

&lt;p&gt;记得去年D2上倔倔同学分享了关于&lt;a href=&quot;http://www.slideshare.net/lvting/mvc-8569518&quot;&gt;豆瓣说的前端MVC&lt;/a&gt;，&lt;/p&gt;

&lt;p&gt;也是那次分享中我第一次知晓了BACKBONE.JS的存在。&lt;/p&gt;

&lt;p&gt;这个贪吃蛇其实在去年的7月份就已完成其大部份功能，&lt;/p&gt;

&lt;p&gt;但出于对前端 MVC 的学习便有了对其进行重构的想法。&lt;/p&gt;

&lt;p&gt;现在完成的也只是其最基本的游戏功能，还有许多优化的地方。&lt;/p&gt;

&lt;p&gt;有兴趣的朋友可以从&lt;a href=&quot;https://github.com/gaoli/snake&quot;&gt;这里&lt;/a&gt;获取游戏源码，我也会持续更新完善！&lt;/p&gt;

&lt;p&gt;最后附上 DEMO 预览地址：&lt;a href=&quot;http://gaoli.github.com/snake&quot;&gt;http://gaoli.github.com/snake&lt;/a&gt;&lt;/p&gt;</content><content:encoded>&lt;p&gt;&lt;img src=&quot;/uploads/2012/02/backbone-snake.jpg&quot; title=&quot;基于 BACKBONE.JS 的贪吃蛇&quot; alt=&quot;基于 BACKBONE.JS 的贪吃蛇&quot; /&gt;&lt;/p&gt;

&lt;p&gt;记得去年D2上倔倔同学分享了关于&lt;a href=&quot;http://www.slideshare.net/lvting/mvc-8569518&quot;&gt;豆瓣说的前端MVC&lt;/a&gt;，&lt;/p&gt;

&lt;p&gt;也是那次分享中我第一次知晓了BACKBONE.JS的存在。&lt;/p&gt;

&lt;p&gt;这个贪吃蛇其实在去年的7月份就已完成其大部份功能，&lt;/p&gt;

&lt;p&gt;但出于对前端 MVC 的学习便有了对其进行重构的想法。&lt;/p&gt;

&lt;p&gt;现在完成的也只是其最基本的游戏功能，还有许多优化的地方。&lt;/p&gt;

&lt;p&gt;有兴趣的朋友可以从&lt;a href=&quot;https://github.com/gaoli/snake&quot;&gt;这里&lt;/a&gt;获取游戏源码，我也会持续更新完善！&lt;/p&gt;

&lt;p&gt;最后附上 DEMO 预览地址：&lt;a href=&quot;http://gaoli.github.com/snake&quot;&gt;http://gaoli.github.com/snake&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/638323415/cssbox/feedsky/s.gif?r=http://www.cssbox.net/backbone-snake.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><pubDate>Sun, 19 Feb 2012 16:00:00 +0800</pubDate><guid isPermaLink="false">http://www.cssbox.net/backbone-snake</guid><fs:srclink>http://www.cssbox.net/backbone-snake.html</fs:srclink><fs:srcfeed>http://www.cssbox.net/atom.xml</fs:srcfeed><fs:itemid>feedsky/cssbox/~8929025/638323415/5811487</fs:itemid></item><item><title>JS 图片预加载技术</title><link>http://www.cssbox.net/js-img-onload.html</link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net/js-img-onload</id><content xmlns="http://www.w3.org/2005/Atom" type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2011/12/js-img-onload.jpg&quot; title=&quot;JS 图片预加载技术&quot; alt=&quot;JS 图片预加载技术&quot; /&gt;&lt;/p&gt;

&lt;p&gt;项目开发中时常需要用 JS 判断一张图片是否加载成功，&lt;/p&gt;

&lt;p&gt;如果图片加载成功，则执行其相应的 onload 绑定事件，&lt;/p&gt;

&lt;p&gt;这个就是我们所说的图片预加载技术，先上最终版代码：&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;function loadImage(url, callback) {   
    var img = new Image();   
    img.onload = function () {   
        img.onload = null;   
        callback(img);   
    }   
    img.src = url;   
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;经测试发现 IE6、IE7、IE8：&lt;/p&gt;

&lt;p&gt;如果图片已经存于浏览器缓存中，那么再次对该图片发起请求时，&lt;/p&gt;

&lt;p&gt;浏览器就会直接从缓存中加载，这样就无法触发其 onload 事件。&lt;/p&gt;

&lt;p&gt;而在 IE9、Chrome、FireFox：&lt;/p&gt;

&lt;p&gt;无论图片是否存于浏览器缓存中，都会触发其 onload 事件。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;所以上述代码中我们先要为 img 绑定 onload 事件，再为其赋值 src 地址！&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;更多参考文献：&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.planeart.cn/?p=1121&quot;&gt;再谈javascript图片预加载技术&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.cnblogs.com/rt0d/archive/2011/04/17/2018646.html&quot;&gt;关于图片的预加载,你所不知道的&lt;/a&gt;&lt;/p&gt;</content><content:encoded>&lt;p&gt;&lt;img src=&quot;/uploads/2011/12/js-img-onload.jpg&quot; title=&quot;JS 图片预加载技术&quot; alt=&quot;JS 图片预加载技术&quot; /&gt;&lt;/p&gt;

&lt;p&gt;项目开发中时常需要用 JS 判断一张图片是否加载成功，&lt;/p&gt;

&lt;p&gt;如果图片加载成功，则执行其相应的 onload 绑定事件，&lt;/p&gt;

&lt;p&gt;这个就是我们所说的图片预加载技术，先上最终版代码：&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;function loadImage(url, callback) {   
    var img = new Image();   
    img.onload = function () {   
        img.onload = null;   
        callback(img);   
    }   
    img.src = url;   
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;经测试发现 IE6、IE7、IE8：&lt;/p&gt;

&lt;p&gt;如果图片已经存于浏览器缓存中，那么再次对该图片发起请求时，&lt;/p&gt;

&lt;p&gt;浏览器就会直接从缓存中加载，这样就无法触发其 onload 事件。&lt;/p&gt;

&lt;p&gt;而在 IE9、Chrome、FireFox：&lt;/p&gt;

&lt;p&gt;无论图片是否存于浏览器缓存中，都会触发其 onload 事件。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;所以上述代码中我们先要为 img 绑定 onload 事件，再为其赋值 src 地址！&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;更多参考文献：&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.planeart.cn/?p=1121&quot;&gt;再谈javascript图片预加载技术&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.cnblogs.com/rt0d/archive/2011/04/17/2018646.html&quot;&gt;关于图片的预加载,你所不知道的&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/638323416/cssbox/feedsky/s.gif?r=http://www.cssbox.net/js-img-onload.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><pubDate>Thu, 15 Dec 2011 16:00:00 +0800</pubDate><guid isPermaLink="false">http://www.cssbox.net/js-img-onload</guid><fs:srclink>http://www.cssbox.net/js-img-onload.html</fs:srclink><fs:srcfeed>http://www.cssbox.net/atom.xml</fs:srcfeed><fs:itemid>feedsky/cssbox/~8929025/638323416/5811487</fs:itemid></item><item><title>jQuery 1.7 统一事件绑定API</title><link>http://www.cssbox.net/jquery-1-7-released.html</link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net/jquery-1-7-released</id><content xmlns="http://www.w3.org/2005/Atom" type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2011/11/jquery-1-7-released.jpg&quot; title=&quot;jQuery 1.7 统一事件绑定API&quot; alt=&quot;jQuery 1.7 统一事件绑定API&quot; /&gt;&lt;/p&gt;

&lt;p&gt;jQuery 1.7 已经正式发布！&lt;/p&gt;

&lt;p&gt;你可以从 jQuery CDN 获取代码：&lt;a href=&quot;http://code.jquery.com/jquery-1.7.min.js&quot;&gt;Production&lt;/a&gt; &lt;a href=&quot;http://code.jquery.com/jquery-1.7.js&quot;&gt;Development&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;新版本新增 .on() 和 .off() 事件绑定API，&lt;/p&gt;

&lt;p&gt;从此统一了以往版本中的三种事件绑定方法，&lt;/p&gt;

&lt;p&gt;两个方法名也更加的精简，方便记忆与书写。&lt;/p&gt;

&lt;p&gt;下面是两个新增方法的调用格式：&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$(elements).on( events [, selector] [, data] , handler );
$(elements).off( [ events ] [, selector] [, handler] );
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;当提供 selector 参数时 .on() 与 .delegate() 方法类似，&lt;/p&gt;

&lt;p&gt;通过选择器（selector）过滤页面元素，提供事件委派处理。&lt;/p&gt;

&lt;p&gt;省略或置空 selector 时 .on() 与 .bind() 方法类似。&lt;/p&gt;

&lt;p&gt;使用 .on() 方法时需注意，如果 data 参数为字符串类型，&lt;/p&gt;

&lt;p&gt;不得省略 selector 参数，否则 data 将被误认为 selector。&lt;/p&gt;

&lt;p&gt;通过对象为 data 提供参数，你永远不需要担心这种特殊情况。&lt;/p&gt;

&lt;p&gt;所有现有的事件绑定方法（以及他们相应的解除绑定方法），&lt;/p&gt;

&lt;p&gt;都会在 1.7 版本中得以保留，但官方更推荐我们使用新的API。&lt;/p&gt;

&lt;p&gt;以下是新旧事件绑定API的几个对比例子：&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$('a').bind('click', myHandler);
$('a').on('click', myHandler);

$('form').bind('submit', { val: 42 }, fn);
$('form').on('submit', { val: 42 }, fn);

$(window).unbind('scroll.myPlugin');
$(window).off('scroll.myPlugin');

$('.comment').delegate('a.add', 'click', addNew);
$('.comment').on('click', 'a.add', addNew);

$('.dialog').undelegate('a', 'click.myDlg');
$('.dialog').off('click.myDlg', 'a');

$('a').live('click', fn);
$(document).on('click', 'a', fn);

$('a').die('click');
$(document).off('click', 'a');
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;更多新版发布详情可以点击查看 jQuery 官方博客 &lt;a href=&quot;http://blog.jquery.com/2011/11/03/jquery-1-7-released/&quot;&gt;jQuery 1.7 Released&lt;/a&gt;&lt;/p&gt;</content><content:encoded>&lt;p&gt;&lt;img src=&quot;/uploads/2011/11/jquery-1-7-released.jpg&quot; title=&quot;jQuery 1.7 统一事件绑定API&quot; alt=&quot;jQuery 1.7 统一事件绑定API&quot; /&gt;&lt;/p&gt;

&lt;p&gt;jQuery 1.7 已经正式发布！&lt;/p&gt;

&lt;p&gt;你可以从 jQuery CDN 获取代码：&lt;a href=&quot;http://code.jquery.com/jquery-1.7.min.js&quot;&gt;Production&lt;/a&gt; &lt;a href=&quot;http://code.jquery.com/jquery-1.7.js&quot;&gt;Development&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;新版本新增 .on() 和 .off() 事件绑定API，&lt;/p&gt;

&lt;p&gt;从此统一了以往版本中的三种事件绑定方法，&lt;/p&gt;

&lt;p&gt;两个方法名也更加的精简，方便记忆与书写。&lt;/p&gt;

&lt;p&gt;下面是两个新增方法的调用格式：&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$(elements).on( events [, selector] [, data] , handler );
$(elements).off( [ events ] [, selector] [, handler] );
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;当提供 selector 参数时 .on() 与 .delegate() 方法类似，&lt;/p&gt;

&lt;p&gt;通过选择器（selector）过滤页面元素，提供事件委派处理。&lt;/p&gt;

&lt;p&gt;省略或置空 selector 时 .on() 与 .bind() 方法类似。&lt;/p&gt;

&lt;p&gt;使用 .on() 方法时需注意，如果 data 参数为字符串类型，&lt;/p&gt;

&lt;p&gt;不得省略 selector 参数，否则 data 将被误认为 selector。&lt;/p&gt;

&lt;p&gt;通过对象为 data 提供参数，你永远不需要担心这种特殊情况。&lt;/p&gt;

&lt;p&gt;所有现有的事件绑定方法（以及他们相应的解除绑定方法），&lt;/p&gt;

&lt;p&gt;都会在 1.7 版本中得以保留，但官方更推荐我们使用新的API。&lt;/p&gt;

&lt;p&gt;以下是新旧事件绑定API的几个对比例子：&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$('a').bind('click', myHandler);
$('a').on('click', myHandler);

$('form').bind('submit', { val: 42 }, fn);
$('form').on('submit', { val: 42 }, fn);

$(window).unbind('scroll.myPlugin');
$(window).off('scroll.myPlugin');

$('.comment').delegate('a.add', 'click', addNew);
$('.comment').on('click', 'a.add', addNew);

$('.dialog').undelegate('a', 'click.myDlg');
$('.dialog').off('click.myDlg', 'a');

$('a').live('click', fn);
$(document).on('click', 'a', fn);

$('a').die('click');
$(document).off('click', 'a');
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;更多新版发布详情可以点击查看 jQuery 官方博客 &lt;a href=&quot;http://blog.jquery.com/2011/11/03/jquery-1-7-released/&quot;&gt;jQuery 1.7 Released&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/638323417/cssbox/feedsky/s.gif?r=http://www.cssbox.net/jquery-1-7-released.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><pubDate>Sat, 05 Nov 2011 15:00:00 +0800</pubDate><guid isPermaLink="false">http://www.cssbox.net/jquery-1-7-released</guid><fs:srclink>http://www.cssbox.net/jquery-1-7-released.html</fs:srclink><fs:srcfeed>http://www.cssbox.net/atom.xml</fs:srcfeed><fs:itemid>feedsky/cssbox/~8929025/638323417/5811487</fs:itemid></item><item><title>楼坊街 - 万圣节魔法点灯</title><link>http://www.cssbox.net/halloween-light.html</link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net/halloween-light</id><content xmlns="http://www.w3.org/2005/Atom" type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2011/10/halloween-light.jpg&quot; title=&quot;楼坊街 - 万圣节魔法点灯&quot; alt=&quot;楼坊街 - 万圣节魔法点灯&quot; /&gt;&lt;/p&gt;

&lt;p&gt;赶在万圣节前夕，楼坊街二期终于新鲜出炉啦！&lt;/p&gt;

&lt;p&gt;为了能配合实现本期主打的魔法点灯效果，&lt;/p&gt;

&lt;p&gt;特别引用了一款名为 &lt;a href=&quot;http://www.bitstorm.org/jquery/color-animation/&quot;&gt;Color animation&lt;/a&gt; 的 jQuery 插件，&lt;/p&gt;

&lt;p&gt;使用这款插件可以轻松实现文字、背景、边框的颜色属性动画。&lt;/p&gt;

&lt;p&gt;无奈万恶的 IE6 并不支持 PNG24 透明，只能做渐进增强处理。&lt;/p&gt;

&lt;p&gt;这期时间太仓促，下期努力给大家带来更有越儿的交互体验！&lt;/p&gt;

&lt;p&gt;附上本期专题地址：&lt;a href=&quot;http://topic.19lou.com/home/2011/lfj2.html&quot;&gt;http://topic.19lou.com/home/2011/lfj2.html&lt;/a&gt;&lt;/p&gt;</content><content:encoded>&lt;p&gt;&lt;img src=&quot;/uploads/2011/10/halloween-light.jpg&quot; title=&quot;楼坊街 - 万圣节魔法点灯&quot; alt=&quot;楼坊街 - 万圣节魔法点灯&quot; /&gt;&lt;/p&gt;

&lt;p&gt;赶在万圣节前夕，楼坊街二期终于新鲜出炉啦！&lt;/p&gt;

&lt;p&gt;为了能配合实现本期主打的魔法点灯效果，&lt;/p&gt;

&lt;p&gt;特别引用了一款名为 &lt;a href=&quot;http://www.bitstorm.org/jquery/color-animation/&quot;&gt;Color animation&lt;/a&gt; 的 jQuery 插件，&lt;/p&gt;

&lt;p&gt;使用这款插件可以轻松实现文字、背景、边框的颜色属性动画。&lt;/p&gt;

&lt;p&gt;无奈万恶的 IE6 并不支持 PNG24 透明，只能做渐进增强处理。&lt;/p&gt;

&lt;p&gt;这期时间太仓促，下期努力给大家带来更有越儿的交互体验！&lt;/p&gt;

&lt;p&gt;附上本期专题地址：&lt;a href=&quot;http://topic.19lou.com/home/2011/lfj2.html&quot;&gt;http://topic.19lou.com/home/2011/lfj2.html&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/638323418/cssbox/feedsky/s.gif?r=http://www.cssbox.net/halloween-light.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><pubDate>Fri, 28 Oct 2011 15:00:00 +0800</pubDate><guid isPermaLink="false">http://www.cssbox.net/halloween-light</guid><fs:srclink>http://www.cssbox.net/halloween-light.html</fs:srclink><fs:srcfeed>http://www.cssbox.net/atom.xml</fs:srcfeed><fs:itemid>feedsky/cssbox/~8929025/638323418/5811487</fs:itemid></item><item><title>CSS3 Gradients</title><link>http://www.cssbox.net/css3-gradients.html</link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net/css3-gradients</id><content xmlns="http://www.w3.org/2005/Atom" type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2011/10/CSS3-Gradients.jpg&quot; title=&quot;CSS3 Gradients&quot; alt=&quot;CSS3 Gradients&quot; /&gt;&lt;/p&gt;

&lt;p&gt;HTML5 CSS3 必将是以后的前端的发展方向，&lt;/p&gt;

&lt;p&gt;特别是在移动端，高端浏览器给攻城师们带来的愉悦无以言表。&lt;/p&gt;

&lt;p&gt;偶然在 webkit 官网上看到一篇关于 CSS3 Gradients（渐变）的文章，&lt;/p&gt;

&lt;p&gt;感觉非常不错，于是利用空余时间将其中的实例部分翻译了下，&lt;/p&gt;

&lt;p&gt;本人 E 文不太好，有些是照按自己理解翻译，希望对大家学习有帮助吧！&lt;/p&gt;

&lt;p&gt;附上原文地址：&lt;a href=&quot;http://www.webkit.org/blog/1424/css3-gradients/&quot;&gt;http://www.webkit.org/blog/1424/css3-gradients/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The New Gradient Syntax&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;新的语法包含四个渐变函数：&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;linear-gradient()
radial-gradient()
repeating-linear-gradient()
repeating-radial-gradient()
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;这些函数名无需过多的解释，但我之后会谈到更多关于循环渐变。&lt;/p&gt;

&lt;p&gt;循环渐变与非循环渐变的语法是相同的，这是件好事儿。&lt;/p&gt;

&lt;p&gt;因为规范仍是初稿阶段，所以我们在这些渐变函数前加以-webkit-前缀。&lt;/p&gt;

&lt;p&gt;当以后规范不再是初稿阶段，我们将能够不加前缀而使用他们。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Linear Gradients&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;为元素盒模型填充&lt;a href=&quot;http://dev.w3.org/csswg/css3-images/#linear-gradients&quot;&gt;线性渐变&lt;/a&gt;是最常用的。你只需要考虑渐变从哪个方向开始。&lt;/p&gt;

&lt;p&gt;有两种方式去指定他。第一种，你可以指定渐变从哪个方向或角落开始：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(left, white, black);background-image:-moz-linear-gradient(left, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(left, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(top right, white, black);background-image:-moz-linear-gradient(top right, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(top right, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;你甚至可以省略第一个参数，他将默认为top并给出一个垂直渐变。&lt;/p&gt;

&lt;p&gt;第二种，你可以指定渐变的角度：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(135deg, white, black);background-image:-moz-linear-gradient(135deg, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(135deg, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;角度按逆时针方向旋转，0度时为从左向右方向。&lt;/p&gt;

&lt;p&gt;注意在所有这些情况下，渐变足够大以填满元素盒模型。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Radial Gradients&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://dev.w3.org/csswg/css3-images/#radial-gradients&quot;&gt;径向渐变&lt;/a&gt;更加复杂，在填充时有更多的选项。&lt;/p&gt;

&lt;p&gt;最简单的形式是以元素盒模型中心为渐变起始，向外填充至每个角落：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-radial-gradient(white, black);background-image:-moz-radial-gradient(white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-radial-gradient(white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;这相当于 &lt;code&gt;-webkit-radial-gradient(center, ellipse cover, white, black)&lt;/code&gt;。&lt;/p&gt;

&lt;p&gt;第一个参数为可选，默认为 &lt;code&gt;center&lt;/code&gt; ，也可以是一个点（就像 &lt;code&gt;background-position&lt;/code&gt; ），&lt;/p&gt;

&lt;p&gt;他允许你将原点放置到其它地方：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-radial-gradient(10% 30%, white, black);background-image:-moz-radial-gradient(10% 30%, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-radial-gradient(10% 30%, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;原点位置后面的参数用来指定渐变的形状和大小，这是两种方式之一。&lt;/p&gt;

&lt;p&gt;这种方式用一些关键词来描述形状（&lt;code&gt;circle，ellipse&lt;/code&gt;）和&lt;/p&gt;

&lt;p&gt;大小（&lt;code&gt;closest-side，closest-corner，farthest-side，farthest-corner，contain，cover&lt;/code&gt;）例如：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-radial-gradient(30% 30%, closest-corner, white, black);background-image:-moz-radial-gradient(30% 30%, closest-corner, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-radial-gradient(30% 30%, closest-corner, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-radial-gradient(30% 30%, circle closest-corner, white, black);background-image:-moz-radial-gradient(30% 30%, circle closest-corner, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-radial-gradient(30% 30%, circle closest-corner, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;如果你愿意，你还可以分别指定径向渐变的水平与垂直结束半径：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-radial-gradient(center, 5em 40px, white, black);background-image:-moz-radial-gradient(center, 5em 40px, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-radial-gradient(center, 5em 40px, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;Color Stops&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;为渐变指定颜色停靠点很容易；最简单的情况下，你只需要提供一个颜色列表：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(left, red, green, blue);background-image:-moz-linear-gradient(left, red, green, blue);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(left, red, green, blue)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;这样会使所有的颜色平均分布于渐变之上。&lt;/p&gt;

&lt;p&gt;如果你愿意，你还可以为个别颜色定位具体的停靠点，然后让浏览器分配其它剩余的：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(bottom left, red 10px, yellow, green, blue 90%);background-image:-moz-linear-gradient(bottom left, red 10px, yellow, green, blue 90%);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(bottom left, red 20px, yellow, green, blue 90%)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;那些渐变轴线可能是条对角线；那么百分比则相应对角线的长度。&lt;/p&gt;

&lt;p&gt;颜色的停靠点相同会使颜色之间过渡强烈：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(top left, red, yellow, green 60%, purple 60%, blue);background-image:-moz-linear-gradient(top left, red, yellow, green 60%, purple 60%, blue);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(top left, red, yellow, green 60%, purple 60%, blue)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;Repeating Gradients&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;循环渐变 &lt;code&gt;repeating-linear-gradient()&lt;/code&gt; 和 &lt;code&gt;repeating-radial-gradient()&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;拥有完全相同的简写语法，且整个渐变将被循环填充：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-repeating-linear-gradient(left, red 10%, blue 30%);background-image:-moz-repeating-linear-gradient(left, red 10%, blue 30%);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-repeating-linear-gradient(left, red 10%, blue 30%)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;这些停靠点将被循环用于调整他们首尾相连，这常常会导致颜色之间过渡强烈。&lt;/p&gt;

&lt;p&gt;你可以避免循环末尾的颜色:&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-repeating-radial-gradient(top left, circle, red, blue 10%, red 20%);background-image:-moz-repeating-radial-gradient(top left, circle, red, blue 10%, red 20%);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-repeating-radial-gradient(top left, circle, red, blue 10%, red 20%)
&lt;/code&gt;&lt;/pre&gt;</content><content:encoded>&lt;p&gt;&lt;img src=&quot;/uploads/2011/10/CSS3-Gradients.jpg&quot; title=&quot;CSS3 Gradients&quot; alt=&quot;CSS3 Gradients&quot; /&gt;&lt;/p&gt;

&lt;p&gt;HTML5 CSS3 必将是以后的前端的发展方向，&lt;/p&gt;

&lt;p&gt;特别是在移动端，高端浏览器给攻城师们带来的愉悦无以言表。&lt;/p&gt;

&lt;p&gt;偶然在 webkit 官网上看到一篇关于 CSS3 Gradients（渐变）的文章，&lt;/p&gt;

&lt;p&gt;感觉非常不错，于是利用空余时间将其中的实例部分翻译了下，&lt;/p&gt;

&lt;p&gt;本人 E 文不太好，有些是照按自己理解翻译，希望对大家学习有帮助吧！&lt;/p&gt;

&lt;p&gt;附上原文地址：&lt;a href=&quot;http://www.webkit.org/blog/1424/css3-gradients/&quot;&gt;http://www.webkit.org/blog/1424/css3-gradients/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The New Gradient Syntax&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;新的语法包含四个渐变函数：&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;linear-gradient()
radial-gradient()
repeating-linear-gradient()
repeating-radial-gradient()
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;这些函数名无需过多的解释，但我之后会谈到更多关于循环渐变。&lt;/p&gt;

&lt;p&gt;循环渐变与非循环渐变的语法是相同的，这是件好事儿。&lt;/p&gt;

&lt;p&gt;因为规范仍是初稿阶段，所以我们在这些渐变函数前加以-webkit-前缀。&lt;/p&gt;

&lt;p&gt;当以后规范不再是初稿阶段，我们将能够不加前缀而使用他们。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Linear Gradients&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;为元素盒模型填充&lt;a href=&quot;http://dev.w3.org/csswg/css3-images/#linear-gradients&quot;&gt;线性渐变&lt;/a&gt;是最常用的。你只需要考虑渐变从哪个方向开始。&lt;/p&gt;

&lt;p&gt;有两种方式去指定他。第一种，你可以指定渐变从哪个方向或角落开始：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(left, white, black);background-image:-moz-linear-gradient(left, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(left, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(top right, white, black);background-image:-moz-linear-gradient(top right, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(top right, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;你甚至可以省略第一个参数，他将默认为top并给出一个垂直渐变。&lt;/p&gt;

&lt;p&gt;第二种，你可以指定渐变的角度：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(135deg, white, black);background-image:-moz-linear-gradient(135deg, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(135deg, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;角度按逆时针方向旋转，0度时为从左向右方向。&lt;/p&gt;

&lt;p&gt;注意在所有这些情况下，渐变足够大以填满元素盒模型。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Radial Gradients&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://dev.w3.org/csswg/css3-images/#radial-gradients&quot;&gt;径向渐变&lt;/a&gt;更加复杂，在填充时有更多的选项。&lt;/p&gt;

&lt;p&gt;最简单的形式是以元素盒模型中心为渐变起始，向外填充至每个角落：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-radial-gradient(white, black);background-image:-moz-radial-gradient(white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-radial-gradient(white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;这相当于 &lt;code&gt;-webkit-radial-gradient(center, ellipse cover, white, black)&lt;/code&gt;。&lt;/p&gt;

&lt;p&gt;第一个参数为可选，默认为 &lt;code&gt;center&lt;/code&gt; ，也可以是一个点（就像 &lt;code&gt;background-position&lt;/code&gt; ），&lt;/p&gt;

&lt;p&gt;他允许你将原点放置到其它地方：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-radial-gradient(10% 30%, white, black);background-image:-moz-radial-gradient(10% 30%, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-radial-gradient(10% 30%, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;原点位置后面的参数用来指定渐变的形状和大小，这是两种方式之一。&lt;/p&gt;

&lt;p&gt;这种方式用一些关键词来描述形状（&lt;code&gt;circle，ellipse&lt;/code&gt;）和&lt;/p&gt;

&lt;p&gt;大小（&lt;code&gt;closest-side，closest-corner，farthest-side，farthest-corner，contain，cover&lt;/code&gt;）例如：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-radial-gradient(30% 30%, closest-corner, white, black);background-image:-moz-radial-gradient(30% 30%, closest-corner, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-radial-gradient(30% 30%, closest-corner, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-radial-gradient(30% 30%, circle closest-corner, white, black);background-image:-moz-radial-gradient(30% 30%, circle closest-corner, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-radial-gradient(30% 30%, circle closest-corner, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;如果你愿意，你还可以分别指定径向渐变的水平与垂直结束半径：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-radial-gradient(center, 5em 40px, white, black);background-image:-moz-radial-gradient(center, 5em 40px, white, black);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-radial-gradient(center, 5em 40px, white, black)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;Color Stops&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;为渐变指定颜色停靠点很容易；最简单的情况下，你只需要提供一个颜色列表：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(left, red, green, blue);background-image:-moz-linear-gradient(left, red, green, blue);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(left, red, green, blue)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;这样会使所有的颜色平均分布于渐变之上。&lt;/p&gt;

&lt;p&gt;如果你愿意，你还可以为个别颜色定位具体的停靠点，然后让浏览器分配其它剩余的：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(bottom left, red 10px, yellow, green, blue 90%);background-image:-moz-linear-gradient(bottom left, red 10px, yellow, green, blue 90%);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(bottom left, red 20px, yellow, green, blue 90%)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;那些渐变轴线可能是条对角线；那么百分比则相应对角线的长度。&lt;/p&gt;

&lt;p&gt;颜色的停靠点相同会使颜色之间过渡强烈：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-linear-gradient(top left, red, yellow, green 60%, purple 60%, blue);background-image:-moz-linear-gradient(top left, red, yellow, green 60%, purple 60%, blue);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-linear-gradient(top left, red, yellow, green 60%, purple 60%, blue)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;Repeating Gradients&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;循环渐变 &lt;code&gt;repeating-linear-gradient()&lt;/code&gt; 和 &lt;code&gt;repeating-radial-gradient()&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;拥有完全相同的简写语法，且整个渐变将被循环填充：&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-repeating-linear-gradient(left, red 10%, blue 30%);background-image:-moz-repeating-linear-gradient(left, red 10%, blue 30%);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-repeating-linear-gradient(left, red 10%, blue 30%)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;这些停靠点将被循环用于调整他们首尾相连，这常常会导致颜色之间过渡强烈。&lt;/p&gt;

&lt;p&gt;你可以避免循环末尾的颜色:&lt;/p&gt;

&lt;div style=&quot;margin-top:10px;width:200px;height:80px;border:1px solid #000;resize:both;overflow:hidden;background-image:-webkit-repeating-radial-gradient(top left, circle, red, blue 10%, red 20%);background-image:-moz-repeating-radial-gradient(top left, circle, red, blue 10%, red 20%);&quot;&gt;&lt;/div&gt;


&lt;pre&gt;&lt;code&gt;-webkit-repeating-radial-gradient(top left, circle, red, blue 10%, red 20%)
&lt;/code&gt;&lt;/pre&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/638323419/cssbox/feedsky/s.gif?r=http://www.cssbox.net/css3-gradients.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><pubDate>Sun, 16 Oct 2011 15:00:00 +0800</pubDate><guid isPermaLink="false">http://www.cssbox.net/css3-gradients</guid><fs:srclink>http://www.cssbox.net/css3-gradients.html</fs:srclink><fs:srcfeed>http://www.cssbox.net/atom.xml</fs:srcfeed><fs:itemid>feedsky/cssbox/~8929025/638323419/5811487</fs:itemid></item><item><title>19楼前端架构浅析</title><link>http://www.cssbox.net/19lou-f2e-framework.html</link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net/19lou-f2e-framework</id><content xmlns="http://www.w3.org/2005/Atom" type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2011/09/19lou-f2e-framework.jpg&quot; title=&quot;19楼前端架构浅析&quot; alt=&quot;19楼前端架构浅析&quot; /&gt;&lt;/p&gt;

&lt;p&gt;今天最大的收获是认识了许多业内的朋友，&lt;/p&gt;

&lt;p&gt;D2沙龙还是相当给力的，希望能够越办越好！&lt;/p&gt;

&lt;p&gt;下面奉上我今天分享的PPT，希望攻城师们之间以后能有更多的交流...&lt;/p&gt;

&lt;iframe src=&quot;http://www.slideshare.net/slideshow/embed_code/9413277&quot; width=&quot;425&quot; height=&quot;355&quot; frameborder=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; scrolling=&quot;no&quot;&gt;&lt;/iframe&gt;</content><content:encoded>&lt;p&gt;&lt;img src=&quot;/uploads/2011/09/19lou-f2e-framework.jpg&quot; title=&quot;19楼前端架构浅析&quot; alt=&quot;19楼前端架构浅析&quot; /&gt;&lt;/p&gt;

&lt;p&gt;今天最大的收获是认识了许多业内的朋友，&lt;/p&gt;

&lt;p&gt;D2沙龙还是相当给力的，希望能够越办越好！&lt;/p&gt;

&lt;p&gt;下面奉上我今天分享的PPT，希望攻城师们之间以后能有更多的交流...&lt;/p&gt;

&lt;iframe src=&quot;http://www.slideshare.net/slideshow/embed_code/9413277&quot; width=&quot;425&quot; height=&quot;355&quot; frameborder=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; scrolling=&quot;no&quot;&gt;&lt;/iframe&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/638323420/cssbox/feedsky/s.gif?r=http://www.cssbox.net/19lou-f2e-framework.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><pubDate>Sun, 25 Sep 2011 15:00:00 +0800</pubDate><guid isPermaLink="false">http://www.cssbox.net/19lou-f2e-framework</guid><fs:srclink>http://www.cssbox.net/19lou-f2e-framework.html</fs:srclink><fs:srcfeed>http://www.cssbox.net/atom.xml</fs:srcfeed><fs:itemid>feedsky/cssbox/~8929025/638323420/5811487</fs:itemid></item><item><title>Win7 下搭建 Node.JS 环境</title><link>http://www.cssbox.net/node-exe-windows-executable.html</link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net/node-exe-windows-executable</id><content xmlns="http://www.w3.org/2005/Atom" type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2011/09/node-exe-windows-executable.jpg&quot; title=&quot;Win7 下搭建 Node.JS 环境&quot; alt=&quot;Win7 下搭建 Node.JS 环境&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Node.JS 现在是火的一塌糊涂，但其环境搭建却难住了一部份感兴趣的同学，&lt;/p&gt;

&lt;p&gt;我开始也一直想寻找一个简易搭建的方法，但最终还是活生生被逼到 Linux 。&lt;/p&gt;

&lt;p&gt;但我想说的是不断的在两个系统中切换实在是件苦逼的事儿，&lt;/p&gt;

&lt;p&gt;还好官方网站已经放出了解决方案，只要下载 &lt;a href=&quot;http://nodejs.org/dist/v0.5.6/node.exe&quot;&gt;node.exe Windows executable&lt;/a&gt;，&lt;/p&gt;

&lt;p&gt;无需任何繁琐的步骤，就能在 Windows 下一步到位搭建好 Node.JS 环境，轻松打印出 Hello World！&lt;/p&gt;

&lt;p&gt;你也可以点击 &lt;a href=&quot;http://nodejs.org/&quot;&gt;这里&lt;/a&gt; 前往 Node.JS 的官方主页进行下载。&lt;/p&gt;</content><content:encoded>&lt;p&gt;&lt;img src=&quot;/uploads/2011/09/node-exe-windows-executable.jpg&quot; title=&quot;Win7 下搭建 Node.JS 环境&quot; alt=&quot;Win7 下搭建 Node.JS 环境&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Node.JS 现在是火的一塌糊涂，但其环境搭建却难住了一部份感兴趣的同学，&lt;/p&gt;

&lt;p&gt;我开始也一直想寻找一个简易搭建的方法，但最终还是活生生被逼到 Linux 。&lt;/p&gt;

&lt;p&gt;但我想说的是不断的在两个系统中切换实在是件苦逼的事儿，&lt;/p&gt;

&lt;p&gt;还好官方网站已经放出了解决方案，只要下载 &lt;a href=&quot;http://nodejs.org/dist/v0.5.6/node.exe&quot;&gt;node.exe Windows executable&lt;/a&gt;，&lt;/p&gt;

&lt;p&gt;无需任何繁琐的步骤，就能在 Windows 下一步到位搭建好 Node.JS 环境，轻松打印出 Hello World！&lt;/p&gt;

&lt;p&gt;你也可以点击 &lt;a href=&quot;http://nodejs.org/&quot;&gt;这里&lt;/a&gt; 前往 Node.JS 的官方主页进行下载。&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/638323421/cssbox/feedsky/s.gif?r=http://www.cssbox.net/node-exe-windows-executable.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><pubDate>Sat, 10 Sep 2011 15:00:00 +0800</pubDate><guid isPermaLink="false">http://www.cssbox.net/node-exe-windows-executable</guid><fs:srclink>http://www.cssbox.net/node-exe-windows-executable.html</fs:srclink><fs:srcfeed>http://www.cssbox.net/atom.xml</fs:srcfeed><fs:itemid>feedsky/cssbox/~8929025/638323421/5811487</fs:itemid></item><item><title>FireRainbow - Firebug JS 语法高亮</title><link>http://www.cssbox.net/firerainbow.html</link><id xmlns="http://www.w3.org/2005/Atom">http://www.cssbox.net/firerainbow</id><content xmlns="http://www.w3.org/2005/Atom" type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2011/09/FireRainbow.jpg&quot; title=&quot;FireRainbow - Firebug JS 语法高亮&quot; alt=&quot;FireRainbow - Firebug JS 语法高亮&quot; /&gt;&lt;/p&gt;

&lt;p&gt;这是一款专为 Firebug 设计的 Javascript 语法高亮插件，&lt;/p&gt;

&lt;p&gt;可以直接在 Firefox 的附加组件管理器中搜索 FireRainbow 或访问其 &lt;a href=&quot;https://addons.mozilla.org/zh-CN/firefox/addon/firerainbow/&quot;&gt;官方主页&lt;/a&gt; 下载。&lt;/p&gt;

&lt;p&gt;安装完插件按提示重启 Firefox 后，切换到脚本标签页就可以看到效果啦！&lt;/p&gt;

&lt;p&gt;对于习惯用 jQuery 写 JS 代码的同学作者还提供了另外一款名为 &lt;a href=&quot;https://addons.mozilla.org/zh-CN/firefox/addon/firequery/&quot;&gt;FireQuery&lt;/a&gt; 的插件，&lt;/p&gt;

&lt;p&gt;用于在 Firebug 中显示 jQuery 语法高亮。&lt;/p&gt;</content><content:encoded>&lt;p&gt;&lt;img src=&quot;/uploads/2011/09/FireRainbow.jpg&quot; title=&quot;FireRainbow - Firebug JS 语法高亮&quot; alt=&quot;FireRainbow - Firebug JS 语法高亮&quot; /&gt;&lt;/p&gt;

&lt;p&gt;这是一款专为 Firebug 设计的 Javascript 语法高亮插件，&lt;/p&gt;

&lt;p&gt;可以直接在 Firefox 的附加组件管理器中搜索 FireRainbow 或访问其 &lt;a href=&quot;https://addons.mozilla.org/zh-CN/firefox/addon/firerainbow/&quot;&gt;官方主页&lt;/a&gt; 下载。&lt;/p&gt;

&lt;p&gt;安装完插件按提示重启 Firefox 后，切换到脚本标签页就可以看到效果啦！&lt;/p&gt;

&lt;p&gt;对于习惯用 jQuery 写 JS 代码的同学作者还提供了另外一款名为 &lt;a href=&quot;https://addons.mozilla.org/zh-CN/firefox/addon/firequery/&quot;&gt;FireQuery&lt;/a&gt; 的插件，&lt;/p&gt;

&lt;p&gt;用于在 Firebug 中显示 jQuery 语法高亮。&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/638323422/cssbox/feedsky/s.gif?r=http://www.cssbox.net/firerainbow.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><pubDate>Fri, 09 Sep 2011 15:00:00 +0800</pubDate><guid isPermaLink="false">http://www.cssbox.net/firerainbow</guid><fs:srclink>http://www.cssbox.net/firerainbow.html</fs:srclink><fs:srcfeed>http://www.cssbox.net/atom.xml</fs:srcfeed><fs:itemid>feedsky/cssbox/~8929025/638323422/5811487</fs:itemid></item></channel></rss>
