<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Bolo的博客 &#187; WEB</title>
	<atom:link href="http://blog.imbolo.com/tag/web/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.imbolo.com</link>
	<description>一个设计爱好者杂七杂八的博客</description>
	<lastBuildDate>Wed, 23 Nov 2011 16:19:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>WordPress 3.1 将带来什么？</title>
		<link>http://blog.imbolo.com/whats-coming-in-wordpress-3-1/</link>
		<comments>http://blog.imbolo.com/whats-coming-in-wordpress-3-1/#comments</comments>
		<pubDate>Mon, 18 Oct 2010 13:14:08 +0000</pubDate>
		<dc:creator>bolo</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WEB]]></category>

		<guid isPermaLink="false">http://blog.imbolo.com/?p=1965</guid>
		<description><![CDATA[世界上最流行的博客程序 WordPress 从 3.0 版开始向 CMS 转型，短短四个月之后，WordPress 将发布 3.1 版本，相对于 3.0 ，3.1 版进行了多项重大更新。下面是目前泄露出来一些更新，虽然未必会在 3.1 版里全部出现，但也将是 WordPress 发展的趋势。]]></description>
			<content:encoded><![CDATA[<p>世界上最流行的博客程序 WordPress 从 3.0 版开始向 CMS 转型，短短四个月之后，WordPress 将发布 3.1 版本，相对于 3.0 ，3.1 版进行了多项重大更新。下面是目前泄露出来一些更新，虽然未必会在 3.1 版里全部出现，但也将是 WordPress 发展的趋势。</p>
<h3>内链系统</h3>
<p>作为最受专业博主期待的功能之一，新版的 WordPress 会在文章编辑界面添加一个搜索框，用来搜索已有的文章，并快速地把链接插入到新文章中。大家都知道增加内链对 SEO 非常重要。</p>
<h3>管理员快捷工具条</h3>
<p><img src="http://i1001.photobucket.com/albums/af131/bolo1988/WordPress31.gif" alt="WordPress 3.1 管理员快捷工具条" /></p>
<p>WordPress 后台打开速度慢的问题一直以来已经饱受诟病，3.1 版将改善这个问题。如果你是管理员用户的话，在访问博客前台的时候页面顶部将出现一个管理员工具条，你可以快速访问后台控制板的任何页面。根据 WordPress 老大 Matt Mullenweg 的介绍，“这将是 WordPress 迈向前端编辑的第一步”。不过我现在担心的是，这个变化会不会带来管理员访问前台缓慢的新问题呢？</p>
<p><span id="more-1965"></span></p>
<h3>异步加载（AJAX）管理界面</h3>
<p>WordPress 改善管理体验的第二击，具体会变成怎样目前还不得而知，但我们可以拭目而待。</p>
<h3>独立的网络控制面板</h3>
<p>目前 WordPress 的多站点管理还非常麻烦。WordPress 将着手把多站点管理面板从控制台中独立出来，是子站点将拥有一个独立的控制台。由于这项工作非常复杂和费事，有可能推迟到 WordPress 3.2 才推出。</p>
<h3>改进主题管理的 UI</h3>
<p>WordPress 继续改进管理体验。当你是一个多站点超级管理员的时候，你往往需要预先安装很多的主题供用户选用，改良的 UI 将令超级管理员能更加方便地安装和管理主题。</p>
<h3>文章模板和文章样式</h3>
<p><img src="http://i1001.photobucket.com/albums/af131/bolo1988/04996052.gif" alt="WordPress 3.1 文章模板和文章样式" /></p>
<p>作为细化自定义文章类型的一项工作，你可以为不同内容的文章选择不同的模板和样式。假如你的博客既有展示图片的文章，又有以文本为主的文章的时候，采用不同的文章样式将使你的博客拥有更佳的阅读体验。</p>
<p  class="related_post_title">Related Posts</p><ul class="related_post"><li><a href="http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/" title="CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放">CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放</a></li><li><a href="http://blog.imbolo.com/create-a-simple-ajax-rss-widget-with-jquery-and-yahoo-pipes/" title="利用 Yahoo Pipes 和 jQuery 做一个 RSS 挂件">利用 Yahoo Pipes 和 jQuery 做一个 RSS 挂件</a></li><li><a href="http://blog.imbolo.com/center-multiple-divs-with-css/" title="CSS 多个子框架居中">CSS 多个子框架居中</a></li><li><a href="http://blog.imbolo.com/the-css3-flexible-box-model/" title="CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1">CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1</a></li><li><a href="http://blog.imbolo.com/web-rounded-conner-choice/" title="网页圆角的取舍">网页圆角的取舍</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://blog.imbolo.com/whats-coming-in-wordpress-3-1/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
		<item>
		<title>CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放</title>
		<link>http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/</link>
		<comments>http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/#comments</comments>
		<pubDate>Thu, 22 Jul 2010 06:03:02 +0000</pubDate>
		<dc:creator>bolo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[WEB]]></category>
		<category><![CDATA[Webkit]]></category>

		<guid isPermaLink="false">http://blog.imbolo.com/?p=1918</guid>
		<description><![CDATA[采用 Webkit 核心的浏览器主要有苹果的 Safari 和 Google 的 Chrome，Webkit 核心有着良好的性能，并且在某些细节对用户非常友好，页面输入框（input 标签）聚焦高亮和文本框（textarea 标签）缩放功能就是其中的两个对用户非常友好的设计。可是这两个设计在对用户友好的同时，却会对页面设计产生影响。]]></description>
			<content:encoded><![CDATA[<p><strong>采用 Webkit 核心的浏览器主要有苹果的 Safari 和 Google 的 Chrome</strong>，Webkit 核心有着良好的性能，并且在某些细节对用户非常友好，页面输入框（input 标签）聚焦高亮和文本框（textarea 标签）缩放功能就是其中的两个对用户非常友好的设计。可是这两个设计在对用户友好的同时，却会对页面设计产生影响。</p>
<h3>CSS 屏蔽 Webkit 输入框高亮</h3>
<p>下面是默认情况下，Webkit 浏览器里输入框获取焦点时的情况。<br />
<img src="http://i1001.photobucket.com/albums/af131/bolo1988/1-4.png" alt="Webkit input 聚焦高亮" /><br />
我们可以发现 Webkit 对输入框的高亮已经使页面呈现出的样式和设计样式不同了。如果<strong>你的网站已经对输入框获取焦点时定义了特殊的样式</strong>，不妨把 Webkit 这个多此一举的功能屏蔽掉。加上下面的 CSS 就可以轻松地把高亮去掉。<span id="more-1918"></span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">input <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #808080; font-style: italic;">/* 屏蔽文本框高亮 */</span>
textarea <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h3>CSS 屏蔽 Webkit 文本框缩放</h3>
<p>Webkit 的文本框缩放功能原本是方便用户进行大量文本输入而设计的，但有时果度的缩放会造成下图的效果，打乱了页面的布局。如果你的网站已经为用户提供了足够大的空间让用户进行输入，那么你可以屏蔽这个功能，用 CSS 有两种方法。<br />
<img src="http://i1001.photobucket.com/albums/af131/bolo1988/2-4.png" alt="CSS 屏蔽 Webkit 文本框缩放" /></p>
<h5>CSS 2.1 的方法：</h5>
<p>原理：限制文本框的最大宽度和最大高度，使其和设计的大小一样。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">textarea <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span> <span style="color: #933;">400px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">max-width</span><span style="color: #00AA00;">:</span> <span style="color: #933;">400px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">400px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">max-height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">400px</span><span style="color: #00AA00;">;</span></pre></td></tr></table></div>

<h5>CSS3 的方法：</h5>
<p>通过 resize 属性禁止对元素进行缩放，因为 Chrome 对 CSS3 支持良好，因此推荐使用这个方法。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">texearea <span style="color: #00AA00;">&#123;</span>
	resize<span style="color: #00AA00;">:</span> <span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p  class="related_post_title">Related Posts</p><ul class="related_post"><li><a href="http://blog.imbolo.com/center-multiple-divs-with-css/" title="CSS 多个子框架居中">CSS 多个子框架居中</a></li><li><a href="http://blog.imbolo.com/the-css3-flexible-box-model/" title="CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1">CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1</a></li><li><a href="http://blog.imbolo.com/web-rounded-conner-choice/" title="网页圆角的取舍">网页圆角的取舍</a></li><li><a href="http://blog.imbolo.com/10-css-snippets-to-save-time/" title="10个节约开发时间的CSS技巧">10个节约开发时间的CSS技巧</a></li><li><a href="http://blog.imbolo.com/css-beveled-corners/" title="纯CSS打造斜角">纯CSS打造斜角</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>利用 Yahoo Pipes 和 jQuery 做一个 RSS 挂件</title>
		<link>http://blog.imbolo.com/create-a-simple-ajax-rss-widget-with-jquery-and-yahoo-pipes/</link>
		<comments>http://blog.imbolo.com/create-a-simple-ajax-rss-widget-with-jquery-and-yahoo-pipes/#comments</comments>
		<pubDate>Tue, 01 Jun 2010 16:54:00 +0000</pubDate>
		<dc:creator>bolo</dc:creator>
				<category><![CDATA[Develop]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[RSS]]></category>
		<category><![CDATA[WEB]]></category>

		<guid isPermaLink="false">http://blog.imbolo.com/?p=1870</guid>
		<description><![CDATA[如果我们希望把一个网站的更新事实发布到令一个网站上，最好的方法是通过 RSS 进行转载。如果只是需要简单的对更新的条目做个提示的话，使用 JavaScript 是最可行的方法。]]></description>
			<content:encoded><![CDATA[<p>如果我们希望把一个网站的更新实时发布到令一个网站上，最好的方法是通过 RSS 进行转载。如果只是需要简单的对更新的条目做个提示的话，使用 JavaScript 是最可行的方法。但是通过 JavaScript 解析一个 XML 文档十分麻烦。幸好 Yahoo Pipes 为我们提供了非常好的 RSS to JSON 功能，我们可以先把 RSS 转换成 JSON 再用 JavaScript 进行解析，这样比直接解析 XML 简单得多！</p>
<h3>把 RSS 转换成 JSON</h3>
<p><img src="http://i1001.photobucket.com/albums/af131/bolo1988/yahoopipes.png" alt="雅虎 Pipes" class="alignright" /></p>
<p>首先登录 <a href="http://pipes.yahoo.com">http://pipes.yahoo.com</a> ，新建一个 Pipe ( Creat a Pipe ) 。然后在左边的工具里选择 <strong>Sources > Fetch Feed</strong> ，在输入框里输入一个 RSS 地址。再用线把 Fetch Feed 和 Pipe Output 两个框框连起来（如右图），保存这个 Pipe，然后点击顶部的 <strong>Run Pipe&#8230;</strong> 。点击 <strong>Publish</strong> 发布这个 Pipe ，然后记下 <strong>Get as JSON 的 URL</strong>。简单几步就已经把一个 RSS 转换成 JSON 了，而且这个 JSON 会根据 RSS 的更新自动更新。<span id="more-1870"></span></p>
<h3>通过 jQuery 解析 JSON</h3>
<p>jQuery 本身为我们提供了一个 <strong>getJSON()</strong> 函数，为我们解析 JSON 提供简单快捷的方法。</p>
<p>由于我希望做一个 AJAX 载入项目的效果，我先做一个 HTML 框架，然后通过 jQuery 的 append 方法把解析出来的内容添加到指定的容器里。HTML框架如下：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="html4strick" style="font-family:monospace;">&lt;div id=&quot;rssdata&quot;&gt;
	&lt;ul class=&quot;rss-items&quot;&gt;&lt;/ul&gt;
	&lt;div class=&quot;loading&quot;&gt;Loading RSS items...&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;然后编写 jQuery 调用：&lt;/p&gt;</pre></td></tr></table></div>


<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">&lt;script type=&quot;text/javascript&quot; src=&quot;http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js&quot;&gt;&lt;/script&gt;
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>
$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#rssdata'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #006600; font-style: italic;">// JSON 地址 = 刚才记下的 URL + &amp;_callback=?</span>
	<span style="color: #003366; font-weight: bold;">var</span> pipe_url <span style="color: #339933;">=</span> <span style="color: #3366CC;">'http://pipes.yahoo.com/pipes/pipe.run?_id=90caf3b6ba8f36459a3137248b47620e&amp;_render=json&amp;_callback=?'</span><span style="color: #339933;">;</span>
&nbsp;
	$.<span style="color: #660066;">getJSON</span><span style="color: #009900;">&#40;</span>pipe_url<span style="color: #339933;">,</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #006600; font-style: italic;">// 遍历 JSON 项目，并且确定输出哪些信息</span>
		$<span style="color: #009900;">&#40;</span>data.<span style="color: #660066;">value</span>.<span style="color: #660066;">items</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">each</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>index<span style="color: #339933;">,</span><span style="color: #000066; font-weight: bold;">item</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #003366; font-weight: bold;">var</span> item_html <span style="color: #339933;">=</span> <span style="color: #3366CC;">'&lt;li&gt;&lt;a href=&quot;'</span><span style="color: #339933;">+</span><span style="color: #000066; font-weight: bold;">item</span>.<span style="color: #660066;">link</span><span style="color: #339933;">+</span><span style="color: #3366CC;">'&quot;&gt;'</span><span style="color: #339933;">+</span><span style="color: #000066; font-weight: bold;">item</span>.<span style="color: #660066;">title</span><span style="color: #339933;">+</span><span style="color: #3366CC;">'&lt;/a&gt;&lt;/li&gt;'</span><span style="color: #339933;">;</span>
			<span style="color: #006600; font-style: italic;">// 把输出的内容插入页面里</span>
			$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#rssdata ul.rss-items'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">append</span><span style="color: #009900;">&#40;</span>item_html<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #006600; font-style: italic;">// 添加条目载入效果</span>
		$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#rssdata div.loading'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fadeOut</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#rssdata ul.rss-items'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">slideDown</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>当然要页面美观的话，写一些 CSS 是必要的，这个可以随自己的喜好而定。最终的效果可以看这个 <a href='http://blog.imbolo.com/wp-content/uploads/2010/06/rss_widget.html'>DEMO</a>。</p>
<p  class="related_post_title">Related Posts</p><ul class="related_post"><li><a href="http://blog.imbolo.com/jquery-jwtabs/" title="jQuery插件：jwTabs">jQuery插件：jwTabs</a></li><li><a href="http://blog.imbolo.com/make-a-jquery-style-switch/" title="用jQuery制作页面风格切换开关">用jQuery制作页面风格切换开关</a></li><li><a href="http://blog.imbolo.com/make-ajax-with-jquery/" title="使用 jQuery 简化 Ajax 开发">使用 jQuery 简化 Ajax 开发</a></li><li><a href="http://blog.imbolo.com/make-a-door-effect-in-jquery-and-css/" title="jQuery+CSS制作滑动门效果">jQuery+CSS制作滑动门效果</a></li><li><a href="http://blog.imbolo.com/jquery-make-the-link-background-fadein-effect/" title="jQuery实现链接背景淡出淡入效果">jQuery实现链接背景淡出淡入效果</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://blog.imbolo.com/create-a-simple-ajax-rss-widget-with-jquery-and-yahoo-pipes/feed/</wfw:commentRss>
		<slash:comments>26</slash:comments>
		</item>
		<item>
		<title>CSS 多个子框架居中</title>
		<link>http://blog.imbolo.com/center-multiple-divs-with-css/</link>
		<comments>http://blog.imbolo.com/center-multiple-divs-with-css/#comments</comments>
		<pubDate>Sat, 15 May 2010 13:29:44 +0000</pubDate>
		<dc:creator>bolo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[WEB]]></category>

		<guid isPermaLink="false">http://blog.imbolo.com/?p=1844</guid>
		<description><![CDATA[有时我们需要令一个宽度固定的容器里的子框架居中（例如一个 Div ，或者其他 block 级元素），如果子框架只有一个的话，我们只需要为子框架加上 CSS 属性 margin: auto 就可以了。]]></description>
			<content:encoded><![CDATA[<p>有时我们需要令一个宽度固定的容器里的子框架居中（例如一个 Div ，或者其他 block 级元素），如果子框架只有一个的话，我们只需要为子框架加上 CSS 属性 margin: auto 就可以了。</p>
<p>但如果我们要让多个子框架居中，并且等分父框架剩余的空间的话，我们对所有子框架使用 CSS <strong>box-align: center</strong> 来实现这种效果。</p>
<p>可是目前还有相当一部分主流浏览器不支持 <strong>box-align 属性</strong>，那么我们应该如何编写 CSS，使这种效果能兼容大部分的浏览器呢？</p>
<h3>通常的方法</h3>
<p>为了使多个 block 级元素排列在同一行里，我们习惯使用 float 属性使子框架浮动，然后利用 margin 属性让每一个子框架之间都留出一些空白的间距。可是这样做会触发经典的 IE6 双倍 margin BUG，这样反而要投入额外的时间去调试 IE6 的 Hack。</p>
<p>虽然我们还可以通过 display: inline 来避开 IE6 的 BUG，但我们仍然需要调整这些子框架间的间距，防止最后一个自框架被挤到下一行。<span id="more-1844"></span></p>
<h3>改变子框架级别并且控制剩余的空白</h3>
<p>使用 float 和 margin 来让多个子框架居中并且等分父框架剩余空间的做法缺点很多。为了避开这些缺点，我们还可以使用另一种方法：把子框架的级别改为 inline-block ，并且通过 <strong>letter-spacing 属性</strong> 控制自框架之间的间距。</p>
<p>假设在一个父框架里有四个 block 级的子容器，每个子容器的大小均为 100px x 100px。为了让这些子框架能排列在同一行内，我们可以把它们改为 inline-block 级，由于子框架和父框架之间并没有其它的内容，应此要控制子框架的空间分配将易如反掌。姑且假设父框架 id=parent，子框架 class=child，那么 CSS 可以这样写：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#parent</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span> <span style="color: #933;">615px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">solid</span> <span style="color: #933;">1px</span> <span style="color: #cc00cc;">#aaa</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">text-align</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">center</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">font-size</span><span style="color: #00AA00;">:</span> <span style="color: #933;">20px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">letter-spacing</span><span style="color: #00AA00;">:</span> <span style="color: #933;">35px</span><span style="color: #00AA00;">;</span>
	whitewhite-space<span style="color: #00AA00;">:</span> <span style="color: #993333;">nowrap</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">line-height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">12px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">overflow</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">hidden</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #6666ff;">.child</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span> <span style="color: #933;">100px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">100px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">solid</span> <span style="color: #933;">1px</span> <span style="color: #cc00cc;">#ccc</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> inline-<span style="color: #993333;">block</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">vertical-align</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">middle</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>在这段样式里，#parent 的 text-align、letter-spacing、white-space、overflow 和 .child 的 vertical-align、display 这些属性是实现预想效果的关键，下面解释一下这些属性起了什么作用。</p>
<ul>
<li><strong>text-align</strong>：使 #parent 里的所有内容都居中</li>
<li><strong>letter-spacing</strong>：控制每个子框架之间的空白大小</li>
<li><strong>white-space: nowrap</strong>：防止最后一个子框架被挤到下一行</li>
<li><strong>overflow: hidden</strong>：隐藏超出 #parent 范围的内容</li>
<li><strong>vertical-align: middle</strong>：使所有子框架都垂直居中</li>
<li><strong>display: inline-block</strong>：是所有子框架都排列在同一行，并且保持 block 级元素的特性</li>
</ul>
<h3>兼容 IE</h3>
<p>在今时今日，老版本的 IE 浏览器已经成为网页设计师的心头大恨，虽然上面的 CSS 能兼容 IE8，但由于 IE6 和 IE7 并不完全支持 inline-block 级元素，因此我们还需要写下面的一段 Hack，确保在 IE6 和 IE7 里能保持和现代浏览器一致的效果。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #6666ff;">.child</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #00AA00;">*</span><span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">inline</span><span style="color: #00AA00;">;</span>
	<span style="color: #00AA00;">*</span><span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span> <span style="color: #933;">20px</span> <span style="color: #cc66cc;">0</span> <span style="color: #933;">20px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>本文所举例子的最终效果可以看这个 <a href="http://blog.imbolo.com/wp-content/uploads/2010/05/center-multiple-divs.html">DEMO</a>。</p>
<h3>后记</h3>
<p>本文所举的例子虽然只有短短的两句 IE Hack，但在实际开发中大家要写的 Hack 肯定要多很多，因此淘汰老版本 IE 的任务已经刻不容缓。我听过很多人说：“我不用 IE 浏览器的，我用傲游和世界之窗”，在这里我提醒一下大家，对这些无法解释清楚的人，我们可以简单地和他们说：“凡是能用支付宝的浏览器都是落后的，请放弃使用。”。</p>
<p  class="related_post_title">Related Posts</p><ul class="related_post"><li><a href="http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/" title="CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放">CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放</a></li><li><a href="http://blog.imbolo.com/the-css3-flexible-box-model/" title="CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1">CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1</a></li><li><a href="http://blog.imbolo.com/web-rounded-conner-choice/" title="网页圆角的取舍">网页圆角的取舍</a></li><li><a href="http://blog.imbolo.com/10-css-snippets-to-save-time/" title="10个节约开发时间的CSS技巧">10个节约开发时间的CSS技巧</a></li><li><a href="http://blog.imbolo.com/css-beveled-corners/" title="纯CSS打造斜角">纯CSS打造斜角</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://blog.imbolo.com/center-multiple-divs-with-css/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1</title>
		<link>http://blog.imbolo.com/the-css3-flexible-box-model/</link>
		<comments>http://blog.imbolo.com/the-css3-flexible-box-model/#comments</comments>
		<pubDate>Tue, 04 May 2010 08:03:26 +0000</pubDate>
		<dc:creator>bolo</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[WEB]]></category>

		<guid isPermaLink="false">http://blog.imbolo.com/?p=1829</guid>
		<description><![CDATA[CSS3 标准里引入了一些新的盒子模型参数，在 CSS2 的基础上，我们将能更灵活地调整页面上各个容器的大小和位置。]]></description>
			<content:encoded><![CDATA[<p>CSS3 标准里引入了一些新的盒子模型参数，在 CSS2 的基础上，我们将能更灵活地调整页面上各个容器的大小和位置。详细的说明可以看<a href="http://www.w3.org/TR/css3-flexbox/">这个文档</a>。</p>
<p>通过学习和测试，我发现这种新的盒子模型布局对建立自适应布局的页面带来很大的好处。在这篇文章中，我的所有例子都基于以下 HTML代码：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="html4strick" style="font-family:monospace;">&lt;body&gt;
	&lt;div id=&quot;box1&quot;&gt;1&lt;/div&gt;
	&lt;div id=&quot;box2&quot;&gt;2&lt;/div&gt;
	&lt;div id=&quot;box3&quot;&gt;3&lt;/div&gt;
&lt;/body&gt;</pre></td></tr></table></div>

<h3>容器的排列</h3>
<p>在通常的情况下，页面上所有容器的顺序都按照载入的顺序排列。而使用 CSS3 提供的功能后，我们可以在不改变 HTML 结构的前提下随意改变容器显示的位置，这样不但给排版带来极大的方便，我们也可以利用这些功能进行流量整形。<span id="more-1829"></span></p>
<p>在需用使用灵活盒子模型(Flexible Box Module)的时候，我们需要先把其父容器的 Display 属性设置为 box 或者 inline-box 。</p>
<h4>水平分布和垂直分布</h4>
<p>我们可以通过 box-orient 属性指定容器的分布轴，当这个属性的值为 vertical 时其子容器将垂直分布（也可以为 block-axis ），当值为 horizontal 时其子容器讲水平分布（也可以为 inline-axis ）。在本文的第一个例子里我使用了以下的 CSS ：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#exemple1</span> .<span style="color: #000000; font-weight: bold;">content</span><span style="color: #00AA00;">&#123;</span>
	-moz-box-orient <span style="color: #00AA00;">:</span> horizontal<span style="color: #00AA00;">;</span>
	-webkit-box-orient <span style="color: #00AA00;">:</span> horizontal<span style="color: #00AA00;">;</span>
	box-orient <span style="color: #00AA00;">:</span> horizontal<span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #cc00cc;">#exemple1</span> .boite<span style="color: #00AA00;">&#123;</span>
	-moz-box-flex <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
	-webkit-box-flex <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
	box-flex <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>具体的效果可以看这个 <a href="http://blog.imbolo.com/wp-content/uploads/2010/05/exemple-css3-box.html#exemple1">DEMO</a> ，三个子 Div 容器都横向并列了。</p>
<p><em>注：这个效果在 CSS2 里理论上也可以通过 Display: inline; 实现，但由于某些浏览器的 BUG ，没人会这样做。</em></p>
<h4>反序排列</h4>
<p>box-direction 属性可以让我们随意改变容器的显示顺序。我们知道，在默认的情况下，block 级元素是按照加载顺序从上到下排列， inline 级元素是从左到右排列的，但现在通过 box-direction 属性我们可以让最后加载的 block 级元素显示在最顶部，最后加载的 inline 级元素显示在左边。</p>
<p>但在使用这个属性的时候要注意它可能会改变元素的某些属性，产生一些不能控制的效果。</p>
<p>在第二个例子里，我使用了以下的 CSS ：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#exemple2</span> .<span style="color: #000000; font-weight: bold;">content</span><span style="color: #00AA00;">&#123;</span>
	-moz-box-orient <span style="color: #00AA00;">:</span> vertical<span style="color: #00AA00;">;</span>
	-moz-box-<span style="color: #000000; font-weight: bold;">direction</span> <span style="color: #00AA00;">:</span> reverse<span style="color: #00AA00;">;</span>
&nbsp;
	-webkit-box-orient <span style="color: #00AA00;">:</span> vertical<span style="color: #00AA00;">;</span>
	-webkit-box-<span style="color: #000000; font-weight: bold;">direction</span> <span style="color: #00AA00;">:</span> reverse<span style="color: #00AA00;">;</span>
&nbsp;
	box-orient <span style="color: #00AA00;">:</span> vertical<span style="color: #00AA00;">;</span>
	box-<span style="color: #000000; font-weight: bold;">direction</span> <span style="color: #00AA00;">:</span> reverse<span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #cc00cc;">#exemple2</span> .boite<span style="color: #00AA00;">&#123;</span>
	-moz-box-flex <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
	-webkit-box-flex <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
	box-flex <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>效果大家可以看这个 <a href="http://blog.imbolo.com/wp-content/uploads/2010/05/exemple-css3-box.html#exemple2">DEMO</a>。可以发现，在不改变 HTML 结构的情况下，容器的排列顺序改变了。</p>
<h4>按指定顺序排列</h4>
<p>我们不但可以让一组同级容器反序排列，而且还可以让它们按自己喜欢的顺序排列，box-ordinal-group 属性可以帮我们做到这一点。通过 box-ordinal-group 为各个容器指定一个序号，默认情况下他们将会按照序号递增的顺序排列。要注意的是：没有指定序号的容器默认都为 1 ，并且序号相同的元素将按照加载顺序排列。大家可以看一下下面的 CSS ：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#exemple3</span> .<span style="color: #000000; font-weight: bold;">content</span><span style="color: #00AA00;">&#123;</span>
	-moz-box-orient <span style="color: #00AA00;">:</span> vertical<span style="color: #00AA00;">;</span>
	-moz-box-<span style="color: #000000; font-weight: bold;">direction</span> <span style="color: #00AA00;">:</span> reverse<span style="color: #00AA00;">;</span>
&nbsp;
	-webkit-box-orient <span style="color: #00AA00;">:</span> vertical<span style="color: #00AA00;">;</span>
	-webkit-box-<span style="color: #000000; font-weight: bold;">direction</span> <span style="color: #00AA00;">:</span> reverse<span style="color: #00AA00;">;</span>
&nbsp;
	box-orient <span style="color: #00AA00;">:</span> vertical<span style="color: #00AA00;">;</span>
	box-<span style="color: #000000; font-weight: bold;">direction</span> <span style="color: #00AA00;">:</span> reverse<span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #cc00cc;">#exemple3</span> .boite<span style="color: #00AA00;">&#123;</span>
	-moz-box-flex <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
	-webkit-box-flex <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
	box-flex <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #cc00cc;">#exemple3</span> .v1<span style="color: #00AA00;">&#123;</span>
	-moz-box-ordinal-group <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span>
	-webkit-box-ordinal-group <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span>
	box-ordinal-group <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #cc00cc;">#exemple3</span> .v2<span style="color: #00AA00;">&#123;</span>
	-moz-box-ordinal-group <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span>
	-webkit-box-ordinal-group <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span>
	box-ordinal-group <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #cc00cc;">#exemple3</span> .v3<span style="color: #00AA00;">&#123;</span>
	-moz-box-ordinal-group <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
	-webkit-box-ordinal-group <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
	box-ordinal-group <span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>在上面的 CSS 里，我把第一和第二个容器的序号都定为 2 ，第三个容器序号为 1 ，因此最终效果应该是 v3 排在第一，v1 和 v2 则根据加载顺序，v1 排在 v2 前面。效果可以看这个 <a href="http://blog.imbolo.com/wp-content/uploads/2010/05/exemple-css3-box.html#exemple3">DEMO</a>。</p>
<h3>后记</h3>
<p>CSS3 真的非常强大，我相信在它普及以后，我们做网页的时候将可以减少大量的 JavaScript 。关于 CSS3 盒子模型的介绍还没完，这篇文章只介绍了一下容器的排序，下一次将说说容器的尺寸。欢迎订阅本博客，以即时获知最新的更新。</p>
<p  class="related_post_title">Related Posts</p><ul class="related_post"><li><a href="http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/" title="CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放">CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放</a></li><li><a href="http://blog.imbolo.com/center-multiple-divs-with-css/" title="CSS 多个子框架居中">CSS 多个子框架居中</a></li><li><a href="http://blog.imbolo.com/web-rounded-conner-choice/" title="网页圆角的取舍">网页圆角的取舍</a></li><li><a href="http://blog.imbolo.com/10-css-snippets-to-save-time/" title="10个节约开发时间的CSS技巧">10个节约开发时间的CSS技巧</a></li><li><a href="http://blog.imbolo.com/css-beveled-corners/" title="纯CSS打造斜角">纯CSS打造斜角</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://blog.imbolo.com/the-css3-flexible-box-model/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>网页圆角的取舍</title>
		<link>http://blog.imbolo.com/web-rounded-conner-choice/</link>
		<comments>http://blog.imbolo.com/web-rounded-conner-choice/#comments</comments>
		<pubDate>Tue, 20 Apr 2010 13:52:51 +0000</pubDate>
		<dc:creator>bolo</dc:creator>
				<category><![CDATA[Develop]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[WEB]]></category>

		<guid isPermaLink="false">http://blog.imbolo.com/?p=1797</guid>
		<description><![CDATA[在网页里使用圆角效果是使网页更加美观的一个简单而有效的方法，可是由于 IE 和一些老式浏览器的存在，如何使页面在各个浏览器里的效果一致一直困扰这网页设计人员。]]></description>
			<content:encoded><![CDATA[<p>在网页里使用圆角效果是使网页更加美观的一个简单而有效的方法，可是由于 IE 和一些老式浏览器的存在，如何使页面在各个浏览器里的效果一致一直困扰这网页设计人员。最近我在制作主题时面对一个艰难的抉择，因为我要在主题里使用大量的圆角，我应该如何去协调圆角在不同浏览器里的效果？下面我将列举一些产生圆角的方法，并阐述一下它们的优点和缺点，各位观众在以后遇到这种问题的时候可以根据自己的时间或者技术需要进行取舍。</p>
<h3>CSS 圆角</h3>
<p>关于 CSS 圆角在《<a href="http://blog.imbolo.com/creating-rounded-corners-with-css/">再谈 CSS 圆角</a>》一文里已经有详细的阐述。但纯 CSS 的圆角一些老式浏览器根本不支持。使用框架叠加的话不但会使页面结构变得非常复杂，而且大量的多余框架也会给一些后期开发带来困难。而使用圆角的图片作为背景则很难在一些灵活多变的页面里进行应用。因此 CSS 圆角目前只能在一些框架（主要是宽度）比较固定的页面里，通过图片的方式来实现。<span id="more-1797"></span></p>
<h3>JavaScript 圆角</h3>
<p>有高手为了使像 IE 这样落后的浏览器也能显示非图片和框架叠加产生的圆角开发了一些产生圆角的 JavaScript 库，例如 <a href="http://code.google.com/p/curvycorners/" rel="external">CurvyCorners</a> 是目前我测试过的最强大的一个 JavaScript 圆角效果库，不依赖任何框架。并且通过特定的 CSS Class 就能使 IE 也能产生圆角效果。</p>
<p>通过 JavaScript 框架实现的圆角插件更多，这里不一一介绍。但通过 JavaScript 虽然能解决大部分浏览器的圆角支持问题，但却可能会引起本来正确的一些框架错位，虽然这种错位也能通过 CSS Hack 来修正，但一旦浏览器禁用了 JavaScript 又会产生新的错位。因此 JavaScript 圆角应用并不广泛。</p>
<h3>如何取舍</h3>
<p>在框架固定的页面里，可以用 CSS + 图片的方法实现圆角效果，使 IE 也能显示圆角。但在一些多变的页面里，就只让现代的浏览器能看到圆角吧，老式浏览器被淘汰只是时间问题！</p>
<h3>BTW</h3>
<p>我的新主题正在测试中，如发现问题麻烦大家向我反馈一下。另外推荐使用非 IE 核心的最新版浏览器进行浏览。</p>
<p  class="related_post_title">Related Posts</p><ul class="related_post"><li><a href="http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/" title="CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放">CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放</a></li><li><a href="http://blog.imbolo.com/center-multiple-divs-with-css/" title="CSS 多个子框架居中">CSS 多个子框架居中</a></li><li><a href="http://blog.imbolo.com/the-css3-flexible-box-model/" title="CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1">CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1</a></li><li><a href="http://blog.imbolo.com/10-css-snippets-to-save-time/" title="10个节约开发时间的CSS技巧">10个节约开发时间的CSS技巧</a></li><li><a href="http://blog.imbolo.com/css-beveled-corners/" title="纯CSS打造斜角">纯CSS打造斜角</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://blog.imbolo.com/web-rounded-conner-choice/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>IE测试工具：Web 3 SuperPreview</title>
		<link>http://blog.imbolo.com/ie-test-tool-microsoft-expression-web-3-superpreview/</link>
		<comments>http://blog.imbolo.com/ie-test-tool-microsoft-expression-web-3-superpreview/#comments</comments>
		<pubDate>Thu, 25 Feb 2010 05:31:55 +0000</pubDate>
		<dc:creator>bolo</dc:creator>
				<category><![CDATA[Develop]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[WEB]]></category>

		<guid isPermaLink="false">http://blog.imbolo.com/?p=1702</guid>
		<description><![CDATA[Microsoft Expression Web 3 SuperPreview是微软公司为WEB开发人员推出的一个用来测试网站效果的软件，免费版可以用来测试IE6+的页面效果。这对一般的网页设计人员来说已经足够了。特别在升级到Win7以后，老牌测试工具IETester经常报错，令人非常郁闷。]]></description>
			<content:encoded><![CDATA[<p>Microsoft Expression Web 3 SuperPreview是微软公司为WEB开发人员推出的一个用来测试网站效果的软件，免费版可以用来测试IE6+的页面效果，并且可试用60天。这对一般的网页设计人员来说已经足够了。特别在升级到Win7以后，老牌测试工具IETester经常报错，令人非常郁闷。微软自家的Web 3 SuperPreview就不会犯这种低级错误了，而且它的功能比IETester强大多了。我以我的日记博客（<a href="http://shouy.in" rel="external">http://shouy.in</a>）为测试对象演示一下几个好用的功能。<span id="more-1702"></span></p>
<h3>精确的元素尺寸和坐标</h3>
<p><img src="http://i1001.photobucket.com/albums/af131/bolo1988/Superpreview-1.png" alt="Microsoft Expression Web 3 SuperPreview - 精确的元素尺寸和坐标" /></p>
<p>和一般测试工具不同，Web 3 SuperPreview会把整个页面按HTML标记分成一块一块的，点击以后会显示该元素的大小和在屏幕上的坐标。一像素的误差都可以通过数字直接比较出来，这个精度是目测难以达到的。从这张图片可以看出，文章标题的高度有3px的误差，看来我要修改一下文章标题的样式了。</p>
<h3>标尺功能</h3>
<p><img src="http://i1001.photobucket.com/albums/af131/bolo1988/Superpreview-2.png" alt="Microsoft Expression Web 3 SuperPreview - 标尺功能" /></p>
<p>在同一个页面里比较box之间的相对位置，Bolo的常用方法是随便打开一个新窗口，用这个新窗口去量。可是这个土办法的缺点是非常明显的，想精确地比较出差别也比较难，Web 3 SuperPreview带有非常好用的标尺功能，而且可以实现跨浏览器的直接对比。</p>
<h3>覆盖视图</h3>
<p><img src="http://i1001.photobucket.com/albums/af131/bolo1988/Superpreview-OverlayLayout.png" alt="Web 3 SuperPreview - OverlayLayout" /></p>
<p>有时一个个元素地进行比较是非常麻烦的，浪费的时间也多，Web 3 SuperPreview有个OverlayLayout（覆盖布局）的功能，一下子就可以比较出整个页面的差别。</p>
<h3>强大的扩展性</h3>
<p>以上只是Web 3 SuperPreview免费版的基本功能，更多的功能还需要大家去挖掘。另外也可以购买正式版，获得更多令人垂涎的功能，如：</p>
<ul>
<li>支持更多浏览器，如Safari等</li>
<li>支持ASP.net，PHP程序的调试</li>
<li>支持脚本的调试&#038;more</li>
</ul>
<p>更多请浏览Microsoft Expression Web 3 SuperPreview<a href="http://www.microsoft.com/expression/products/purchase.aspx?filter=web3" rel="external">官方网站</a>，<a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=8e6ac106-525d-45d0-84db-dccff3fae677&#038;displaylang=en" rel="external">下载页面</a>。</p>
<p  class="related_post_title">Related Posts</p><ul class="related_post"><li><a href="http://blog.imbolo.com/try-the-3d-web-browser/" title="尝尝新吧，3D立体网页浏览器！">尝尝新吧，3D立体网页浏览器！</a></li><li><a href="http://blog.imbolo.com/css-hack-in-ie6-ie7-and-firefox/" title="IE6、IE7、Firefox之间的兼容写法">IE6、IE7、Firefox之间的兼容写法</a></li><li><a href="http://blog.imbolo.com/ie9-released/" title="IE9 发布">IE9 发布</a></li><li><a href="http://blog.imbolo.com/whats-coming-in-wordpress-3-1/" title="WordPress 3.1 将带来什么？">WordPress 3.1 将带来什么？</a></li><li><a href="http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/" title="CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放">CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://blog.imbolo.com/ie-test-tool-microsoft-expression-web-3-superpreview/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>10个节约开发时间的CSS技巧</title>
		<link>http://blog.imbolo.com/10-css-snippets-to-save-time/</link>
		<comments>http://blog.imbolo.com/10-css-snippets-to-save-time/#comments</comments>
		<pubDate>Sat, 26 Dec 2009 12:26:00 +0000</pubDate>
		<dc:creator>bolo</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[WEB]]></category>

		<guid isPermaLink="false">http://blog.imbolo.com/?p=1595</guid>
		<description><![CDATA[CSS已经成为网页前段设计一个非常重要的部分，由于写CSS时需要考虑的问题非常多，老手们创建新页面是通常会沿用以前的CSS框架。但是新手没有自己的框架，这篇文章可以给新手们一些启示]]></description>
			<content:encoded><![CDATA[<p>CSS已经成为网页前段设计一个非常重要的部分，由于写CSS时需要考虑的问题非常多，老手们创建新页面是通常会沿用以前的CSS框架。但是新手没有自己的框架，这篇文章可以给新手们一些启示。</p>
<h5>1.简单的纯CSS Tooltip</h5>
<p><img src="http://i1001.photobucket.com/albums/af131/bolo1988/easytooltip.png" alt="简单的纯CSS Tooltip" class="alignright" />通过这些代码，你可以做出简单的Tooltip。这是CSS代码：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">a<span style="color: #3333ff;">:hover </span><span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#ffffff</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*要兼容IE6的话必须添加背景色*/</span>
	<span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
a<span style="color: #6666ff;">.tooltip</span> span <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #933;">2px</span> <span style="color: #933;">3px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin-left</span><span style="color: #00AA00;">:</span><span style="color: #933;">8px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span><span style="color: #933;">130px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
a<span style="color: #6666ff;">.tooltip</span><span style="color: #3333ff;">:hover </span>span<span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span><span style="color: #993333;">inline</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">position</span><span style="color: #00AA00;">:</span><span style="color: #993333;">absolute</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#ffffff</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span><span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#cccccc</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#6c6c6c</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p><span id="more-1595"></span><br />
HTML代码如下：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="html4strict" style="font-family:monospace;">Easy <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;tooltip&quot;</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;#&quot;</span>&gt;</span>Tooltip<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">span</span>&gt;</span>This is a Example by imbolo.com.<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">span</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;</span>.</pre></td></tr></table></div>

<p>效果如图。</p>
<h5>2.重设基本样式</h5>
<p>为了统一不同浏览器对各种HTML标签的默认样式的渲染，我们必须从新定义各种标签的样式，这样能对以后的开发带来方便。重新定义各种HTML标签只需要在CSS的开头加入以下代码。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">html<span style="color: #00AA00;">,</span> body<span style="color: #00AA00;">,</span> div<span style="color: #00AA00;">,</span> span<span style="color: #00AA00;">,</span> applet<span style="color: #00AA00;">,</span> object<span style="color: #00AA00;">,</span> iframe<span style="color: #00AA00;">,</span>
h1<span style="color: #00AA00;">,</span> h2<span style="color: #00AA00;">,</span> h3<span style="color: #00AA00;">,</span> h4<span style="color: #00AA00;">,</span> h5<span style="color: #00AA00;">,</span> h6<span style="color: #00AA00;">,</span> p<span style="color: #00AA00;">,</span> blockquote<span style="color: #00AA00;">,</span> pre<span style="color: #00AA00;">,</span>
a<span style="color: #00AA00;">,</span> abbr<span style="color: #00AA00;">,</span> acronym<span style="color: #00AA00;">,</span> address<span style="color: #00AA00;">,</span> big<span style="color: #00AA00;">,</span> cite<span style="color: #00AA00;">,</span> code<span style="color: #00AA00;">,</span>
del<span style="color: #00AA00;">,</span> dfn<span style="color: #00AA00;">,</span> em<span style="color: #00AA00;">,</span> <span style="color: #000000; font-weight: bold;">font</span><span style="color: #00AA00;">,</span> img<span style="color: #00AA00;">,</span> ins<span style="color: #00AA00;">,</span> kbd<span style="color: #00AA00;">,</span> q<span style="color: #00AA00;">,</span> s<span style="color: #00AA00;">,</span> samp<span style="color: #00AA00;">,</span>
small<span style="color: #00AA00;">,</span> strike<span style="color: #00AA00;">,</span> strong<span style="color: #00AA00;">,</span> sub<span style="color: #00AA00;">,</span> sup<span style="color: #00AA00;">,</span> tt<span style="color: #00AA00;">,</span> var<span style="color: #00AA00;">,</span>
b<span style="color: #00AA00;">,</span> u<span style="color: #00AA00;">,</span> i<span style="color: #00AA00;">,</span> <span style="color: #993333;">center</span><span style="color: #00AA00;">,</span>
dl<span style="color: #00AA00;">,</span> dt<span style="color: #00AA00;">,</span> dd<span style="color: #00AA00;">,</span> ol<span style="color: #00AA00;">,</span> ul<span style="color: #00AA00;">,</span> li<span style="color: #00AA00;">,</span>
fieldset<span style="color: #00AA00;">,</span> form<span style="color: #00AA00;">,</span> label<span style="color: #00AA00;">,</span> legend<span style="color: #00AA00;">,</span>
table<span style="color: #00AA00;">,</span> caption<span style="color: #00AA00;">,</span> tbody<span style="color: #00AA00;">,</span> tfoot<span style="color: #00AA00;">,</span> thead<span style="color: #00AA00;">,</span> tr<span style="color: #00AA00;">,</span> th<span style="color: #00AA00;">,</span> td <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">font-size</span><span style="color: #00AA00;">:</span> <span style="color: #933;">100%</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">vertical-align</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">baseline</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">transparent</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
body <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">line-height</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
ol<span style="color: #00AA00;">,</span> ul <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">list-style</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
blockquote<span style="color: #00AA00;">,</span> q <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">quotes</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
blockquote<span style="color: #3333ff;">:before</span><span style="color: #00AA00;">,</span> blockquote<span style="color: #3333ff;">:after</span><span style="color: #00AA00;">,</span>
q<span style="color: #3333ff;">:before</span><span style="color: #00AA00;">,</span> q<span style="color: #3333ff;">:after </span><span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">content</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">/* 元素获得焦点时的样式! */</span>
<span style="color: #3333ff;">:focus </span><span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">/* 特殊文本的样式! */</span>
ins <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
del <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">line-through</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">/* 细线表格样式 */</span>
table <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">border-collapse</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">collapse</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">border-spacing</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h5>3.方便的CSS调试器</h5>
<p>这段代码可以把页面上的各种标签嵌套用不同的线条划分出来，方便你找出BUG。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #00AA00;">*</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #933;">2px</span> <span style="color: #993333;">dotted</span> <span style="color: #993333;">red</span> <span style="color: #00AA00;">&#125;</span>
<span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #933;">2px</span> <span style="color: #993333;">dotted</span> <span style="color: #993333;">green</span> <span style="color: #00AA00;">&#125;</span>
<span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #933;">2px</span> <span style="color: #993333;">dotted</span> orange <span style="color: #00AA00;">&#125;</span>
<span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #933;">2px</span> <span style="color: #993333;">dotted</span> <span style="color: #000000; font-weight: bold;">blue</span> <span style="color: #00AA00;">&#125;</span>
<span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #993333;">red</span> <span style="color: #00AA00;">&#125;</span>
<span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #993333;">green</span> <span style="color: #00AA00;">&#125;</span>
<span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> orange <span style="color: #00AA00;">&#125;</span>
<span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">*</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">outline</span><span style="color: #00AA00;">:</span> <span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #000000; font-weight: bold;">blue</span> <span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h5>4.使一个未设定宽度的DIV居中</h5>
<p>对于一个有固定宽度的DIV容器，你可以轻松地通过<em>margin:auto</em>属性令他居中。如果要居中的DIV容器并没有设置宽度的话，你可以使用下面的CSS代码：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">.<span style="color: #000000; font-weight: bold;">content</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span> <span style="color: #993333;">auto</span> <span style="color: #933;">8px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> table<span style="color: #00AA00;">;</span>
	<span style="color: #00AA00;">&#125;</span>
&nbsp;
.<span style="color: #000000; font-weight: bold;">content</span> div <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">table-cell</span><span style="color: #00AA00;">;</span>
	<span style="color: #00AA00;">&#125;</span>
&nbsp;
&lt;!--<span style="color: #00AA00;">&#91;</span>if IE<span style="color: #00AA00;">&#93;</span><span style="color: #00AA00;">&gt;</span>
.<span style="color: #000000; font-weight: bold;">content</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">block</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">text-align</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">center</span><span style="color: #00AA00;">;</span>
	<span style="color: #00AA00;">&#125;</span>
.<span style="color: #000000; font-weight: bold;">content</span> div <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">inline</span><span style="color: #00AA00;">;</span>
	zoom<span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&lt; !<span style="color: #00AA00;">&#91;</span>endif<span style="color: #00AA00;">&#93;</span>--<span style="color: #00AA00;">&gt;</span></pre></td></tr></table></div>

<h5>5.为大图片添加伪AJAX的载入图标</h5>
<p>等待图片下载是浏览网页是意见烦人的事，但用JavaScript动态载入图片技术难度又比较大。你可以用CSS加上一个载入图标，缓解访客等待加载时的情绪。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">img <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">loading.gif</span><span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span> <span style="color: #993333;">center</span> <span style="color: #993333;">center</span><span style="color: #00AA00;">;</span> <span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h5>6.CSS图像预载</h5>
<p>如果你要在HTML文件加载完成前预载图片，你可以把图片设置为一个DIV容器的背景图，并且把这个容器设为不可见。当HTML加载后再把这个DIV容器插入页面里。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.loader</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">images/hover.gif</span><span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span>images/hover2.gif<span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span>images/hover3.gif<span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin-left</span><span style="color: #00AA00;">:</span><span style="color: #933;">-10000px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h5>7.CSS透明度</h5>
<p>由于老式浏览器对页面元素透明度处理不好，你必须为透明的元素写hack。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">selector <span style="color: #00AA00;">&#123;</span>
	filter<span style="color: #00AA00;">:</span> alpha<span style="color: #00AA00;">&#40;</span>opacity<span style="color: #00AA00;">=</span><span style="color: #cc66cc;">60</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* MSIE/PC */</span>
	-moz-opacity<span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0.6</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Mozilla 1.6 and older */</span>
	opacity<span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0.6</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h5>8.为IE和其它浏览器设置元素的最小高度</h5>
<p>由于IE不支持min-height属性，我们还是要为IE写hack。以下代码的第一部分是正确的代码，可以在标准浏览器里使用，第二部分是针对IE的hack。由于IE不能识别min属性，因此height值设定为8em，使容器能装下超出容器范围的文本。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">/* for browsers that don't suck */</span>
<span style="color: #6666ff;">.container</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">min-height</span><span style="color: #00AA00;">:</span><span style="color: #933;">8em</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span><span style="color: #993333;">auto</span> !important<span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">/* for Internet Explorer  */</span>
<span style="color: #808080; font-style: italic;">/*\*/</span>
<span style="color: #00AA00;">*</span> html <span style="color: #6666ff;">.container</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">8em</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #808080; font-style: italic;">/**/</span></pre></td></tr></table></div>

<h5>9.根据链接类型选用不同的链接样式</h5>
<p>超链接的形式主要有http链接和mailto链接两种，你可以为这两种链接设置不同的样式。通过CSS3，你甚至能为指向不同文件类型的附件链接建立不同的样式！不过，这种做法对不兼容CSS3的浏览器不够友好，而这也是我们必须尽快淘汰老版本IE的原因。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">/* HTTP链接的样式 */</span>
a<span style="color: #00AA00;">&#91;</span>href<span style="color: #00AA00;">^=</span><span style="color: #ff0000;">&quot;http://&quot;</span><span style="color: #00AA00;">&#93;</span>
<span style="color: #00AA00;">&#123;</span>
<span style="color: #000000; font-weight: bold;">padding-right</span><span style="color: #00AA00;">:</span> <span style="color: #933;">13px</span><span style="color: #00AA00;">;</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">external.gif</span><span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span> <span style="color: #993333;">center</span> <span style="color: #000000; font-weight: bold;">right</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">/* Mailto链接的杨思 */</span>
a<span style="color: #00AA00;">&#91;</span>href<span style="color: #00AA00;">^=</span><span style="color: #ff0000;">&quot;mailto:&quot;</span><span style="color: #00AA00;">&#93;</span>
<span style="color: #00AA00;">&#123;</span>
<span style="color: #000000; font-weight: bold;">padding-right</span><span style="color: #00AA00;">:</span> <span style="color: #933;">20px</span><span style="color: #00AA00;">;</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">email.png</span><span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span> <span style="color: #993333;">center</span> <span style="color: #000000; font-weight: bold;">right</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">/* 指向PDF格式附件的样式 */</span>
a<span style="color: #00AA00;">&#91;</span>href$<span style="color: #00AA00;">=</span><span style="color: #ff0000;">&quot;.pdf&quot;</span><span style="color: #00AA00;">&#93;</span>
<span style="color: #00AA00;">&#123;</span>
<span style="color: #000000; font-weight: bold;">padding-right</span><span style="color: #00AA00;">:</span> <span style="color: #933;">18px</span><span style="color: #00AA00;">;</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">acrobat.png</span><span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span> <span style="color: #993333;">center</span> <span style="color: #000000; font-weight: bold;">right</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h5>10.移除IE里文本输入框的滚动条</h5>
<p>IE浏览器会画蛇添足地为多行的文本输入框加上一个滚动条，哪怕你输入的文字长度还没有超出输入框的范围。通过下面的代码你可以把多余的滚动条移除。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">textarea<span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">overflow</span><span style="color: #00AA00;">:</span><span style="color: #993333;">auto</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p  class="related_post_title">Related Posts</p><ul class="related_post"><li><a href="http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/" title="CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放">CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放</a></li><li><a href="http://blog.imbolo.com/center-multiple-divs-with-css/" title="CSS 多个子框架居中">CSS 多个子框架居中</a></li><li><a href="http://blog.imbolo.com/the-css3-flexible-box-model/" title="CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1">CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1</a></li><li><a href="http://blog.imbolo.com/web-rounded-conner-choice/" title="网页圆角的取舍">网页圆角的取舍</a></li><li><a href="http://blog.imbolo.com/css-beveled-corners/" title="纯CSS打造斜角">纯CSS打造斜角</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://blog.imbolo.com/10-css-snippets-to-save-time/feed/</wfw:commentRss>
		<slash:comments>29</slash:comments>
		</item>
		<item>
		<title>等宽导航栏</title>
		<link>http://blog.imbolo.com/full-width-navigation-bar/</link>
		<comments>http://blog.imbolo.com/full-width-navigation-bar/#comments</comments>
		<pubDate>Fri, 25 Dec 2009 16:55:30 +0000</pubDate>
		<dc:creator>bolo</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[WEB]]></category>

		<guid isPermaLink="false">http://blog.imbolo.com/?p=1586</guid>
		<description><![CDATA[随着宽屏显示器的流行，越来越多的网站采用了动态宽度的设计，以求页面在宽屏显示器上保持美观（960px的网页在23寸的显示器上只有半个屏幕的宽度）]]></description>
			<content:encoded><![CDATA[<p>随着宽屏显示器的流行，越来越多的网站采用了动态宽度的设计，以求页面在宽屏显示器上保持美观（960px的网页在23寸的显示器上只有半个屏幕的宽度）。动态宽度的框架设计比较复杂，今天只说说和屏幕等宽的导航栏的设计。<br />
等宽导航栏(我不知道这个名称合不合适，知道的朋友指点一下)的设计一般要遵守以下两个要素：<br />
1.导航栏的背景和页面的最大宽度相等；<br />
2.导航的内容的位置在页面主框架以内（导航的内容在主框架以外的话不好看，用户体验也不好）。<span id="more-1586"></span><br />
文字看不懂的话，可以看下面这幅草图。<br />
<img src="http://i1001.photobucket.com/albums/af131/bolo1988/centered-navbar-sketch.png" alt="等宽导航栏" /><br />
先看看导航栏的HTML代码。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;navigation&quot;</span>&gt;</span>
	<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">ul</span>&gt;</span>
		<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">li</span>&gt;&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;#&quot;</span>&gt;</span>Home<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">li</span>&gt;</span>
		<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">li</span>&gt;&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;#&quot;</span>&gt;</span>Links<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">li</span>&gt;</span>
		<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">li</span>&gt;&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;#&quot;</span>&gt;</span>FAQs<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">li</span>&gt;</span>
		<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">li</span>&gt;&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;#&quot;</span>&gt;</span>Contact<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">li</span>&gt;</span>
		<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">li</span>&gt;&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;#&quot;</span>&gt;</span>Guestbook<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">li</span>&gt;</span>
	<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">ul</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span></pre></td></tr></table></div>

<p>从这里看出结构和一般的导航栏是完全一样的，知道的朋友应该猜出了，真正起作用的是CSS。<br />
CSS这样写。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#navigation</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span> <span style="color: #933;">100%</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*宽度为100%，以填充整个屏幕的宽度*/</span>
	<span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span> <span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*左浮动*/</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span> <span style="color: #933;">1px</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*设置margin的关键是左右的值都为零*/</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">background-color</span><span style="color: #00AA00;">:</span> <span style="color: #cc00cc;">#F7F7F7</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #cc00cc;">#navigation</span> ul <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">list-style</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">none</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*不显示列表项前面的黑点*/</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span> <span style="color: #933;">800px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*宽度必须和主框架的宽度相等*/</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span> <span style="color: #993333;">auto</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*整个列表居中*/</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #cc00cc;">#navigation</span> li <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span> <span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*使导航栏编程水平导航栏*/</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #cc00cc;">#navigation</span> li a <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">block</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*把导航栏里的链接设置为块元素*/</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span> <span style="color: #933;">8px</span> <span style="color: #933;">15px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>CSS的关键我已经加上了注释。</p>
<p  class="related_post_title">Related Posts</p><ul class="related_post"><li><a href="http://blog.imbolo.com/whats-coming-in-wordpress-3-1/" title="WordPress 3.1 将带来什么？">WordPress 3.1 将带来什么？</a></li><li><a href="http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/" title="CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放">CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放</a></li><li><a href="http://blog.imbolo.com/create-a-simple-ajax-rss-widget-with-jquery-and-yahoo-pipes/" title="利用 Yahoo Pipes 和 jQuery 做一个 RSS 挂件">利用 Yahoo Pipes 和 jQuery 做一个 RSS 挂件</a></li><li><a href="http://blog.imbolo.com/center-multiple-divs-with-css/" title="CSS 多个子框架居中">CSS 多个子框架居中</a></li><li><a href="http://blog.imbolo.com/the-css3-flexible-box-model/" title="CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1">CSS3 灵活的盒子模型(Flexible Box Module) &#8211; 1</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://blog.imbolo.com/full-width-navigation-bar/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>用Google Analytics跟踪用户行为</title>
		<link>http://blog.imbolo.com/track-vieitor-actions-via-google-analytics/</link>
		<comments>http://blog.imbolo.com/track-vieitor-actions-via-google-analytics/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 16:15:14 +0000</pubDate>
		<dc:creator>bolo</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[WEB]]></category>

		<guid isPermaLink="false">http://blog.imbolo.com/?p=1574</guid>
		<description><![CDATA[Google Analytics（谷歌分析）为我们提供了强大的网站统计功能，其中Custom Reports（自定义报告）功能更是为我们扩展统计功能提供了方便。在这里我们探讨一下通过自定义报告功能跟踪用户行为的方法]]></description>
			<content:encoded><![CDATA[<p>Google Analytics（谷歌分析）为我们提供了强大的网站统计功能，其中Custom Reports（自定义报告）功能更是为我们扩展统计功能提供了方便。在这里我们探讨一下通过自定义报告功能跟踪用户行为的方法。<br />
Google Analytics的统计代码分为标准统计和异步统计两种，因此我们分开讨论。先看看两种基本的统计代码：</p>
<h5>标准统计</h5>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>
<span style="color: #003366; font-weight: bold;">var</span> gaJsHost <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;https:&quot;</span> <span style="color: #339933;">==</span> document.<span style="color: #660066;">location</span>.<span style="color: #660066;">protocol</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">?</span> <span style="color: #3366CC;">&quot;https://ssl.&quot;</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;http://www.&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span>unescape<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;%3Cscript src='&quot;</span> <span style="color: #339933;">+</span> gaJsHost <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>
<span style="color: #000066; font-weight: bold;">try</span><span style="color: #009900;">&#123;</span>
<span style="color: #003366; font-weight: bold;">var</span> pageTracker <span style="color: #339933;">=</span> _gat._getTracker<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;UA-xxxxxx-x&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
pageTracker._trackPageview<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>err<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p><span id="more-1574"></span></p>
<h5>异步统计</h5>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">var</span> _gaq <span style="color: #339933;">=</span> _gaq <span style="color: #339933;">||</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
_gaq.<span style="color: #660066;">push</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'_setAccount'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'UA-XXXXX-X'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
_gaq.<span style="color: #660066;">push</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'_trackPageview'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #003366; font-weight: bold;">var</span> ga <span style="color: #339933;">=</span> document.<span style="color: #660066;">createElement</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'script'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
ga.<span style="color: #660066;">src</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'https:'</span> <span style="color: #339933;">==</span> document.<span style="color: #660066;">location</span>.<span style="color: #660066;">protocol</span> <span style="color: #339933;">?</span>
    <span style="color: #3366CC;">'https://ssl'</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">'http://www'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span>
    <span style="color: #3366CC;">'.google-analytics.com/ga.js'</span><span style="color: #339933;">;</span>
ga.<span style="color: #660066;">setAttribute</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'async'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'true'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #660066;">documentElement</span>.<span style="color: #660066;">firstChild</span>.<span style="color: #660066;">appendChild</span><span style="color: #009900;">&#40;</span>ga<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<h4>1.添加用户行为</h4>
<p>其中“UA-XXXXX-X”为自己的Google Analytics ID。<br />
下面为添加用户行为的方法，先说采用<strong>标准统计代码</strong>的方法。以分析用户点击“Subscribe To Our RSS Feed”链接的行为为例。</p>
<h5>JavaScript代码</h5>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
</pre></td><td class="code"><pre class="html4strick" style="font-family:monospace;">&lt;a href=&quot;http://feeds2.feedburner.com/webresourcesdepot&quot; onclick=&quot;pageTracker._trackEvent('rss', 'clicked')&quot;Subscribe To Our RSS Feed&lt;/a&gt;
&lt;/a&gt;</pre></td></tr></table></div>

<p>用JavaScript添加行为的话需要为每个需要统计的项目都加上onclick事件。嫌麻烦的话也可以用jQuery监听统计对象。</p>
<h5>jQuery代码</h5>
<p>注：通过jQuery监听统计对象的话需要为统计对象加上特定的class（类）或者id，如下面的代码，需要为“Subscribe To Our RSS Feed”链接加上<em>class=&#8221;rss&#8221;</em>的类。</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'.rss'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    pageTracker._trackEvent<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'rss'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'clicked'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>以上方法针对标准统计代码，以下是异步统计代码添加事件的方法，同样分JavaScript和jQuery两种：</p>
<h5>JavaScript代码</h5>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>a href<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;http://feeds2.feedburner.com/webresourcesdepot&quot;</span> onclick<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;_gaq.push(['_trackEvent', 'rss', 'clicked'])&quot;</span><span style="color: #339933;">&gt;</span>Subscribe To Our RSS Feed<span style="color: #339933;">&lt;/</span>a<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<h5>jQuery代码</h5>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'.rss'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    _gaq.<span style="color: #660066;">push</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'_trackEvent'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'rss'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'clicked'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>注：用jQuery监听对象的话切记要添加对应的class或者id。</p>
<h4>2.添加自定义报告</h4>
<p>添加好需要统计的用户行为后，我们需要在Google Analytics里添加相应的报告，这样才能准确地统计并显示相关数据。<br />
以这篇文章所举的例子来说，我们可以方便地了解到有多少访客点击了“Subscribe To Our RSS Feed”这个链接。如果页面上有多个订阅链接，甚至可以知道那个订阅链接的点击率比较高，从而相应地调整订阅链接的位置，为调整网页布局提供一个可靠的参考。<br />
<img src="http://i1001.photobucket.com/albums/af131/bolo1988/custom-analytics-report.gif" alt="Google自定义报告" /><br />
如上图，可以统计出订阅链接的总点击次数。<br />
下面是两个实例教程，将对你如何充分利用自定义报告起到很好的启示。</p>
<h5>1.那些内容最能吸引访客订阅</h5>
<p>1.登录Google Analytics，点击“Custom Reporting>Create new custom report（自定义报告>创建自定义报告）”；<br />
2.选择“Content>Total Events（内容>事件总计）”作为metric（指标）；<br />
3.选择“Content>Page Title（内容>页标题）”，如果页面标题和内容都不是固定内容的话可以选择“Page（网页）”作为dimension（维度）；<br />
4.修改报告名称，并保存报告。</p>
<h5>2.获取订阅者来路</h5>
<p>1.登录Google Analytics，点击“Custom Reporting>Create new custom report（自定义报告>创建自定义报告）”；<br />
2.选择“Content>Total Events（内容>事件总计）”作为指标；<br />
3.选择“Traffic Sources>Source（流量来源>来源）”作为维度；<br />
4.修改报告名称，并保存报告。</p>
<h5>后记</h5>
<p>网站流量和用户行为分析是指定网站发展方向的重要参考（特别是CMS类网站），通过Google Analytics强大的分析功能，你可以轻松地查看访客在网站上的一举一动，从而对网站做出相应的优化，提高用户体验和黏度。<br />
原文链接：<a href="http://www.webresourcesdepot.com/tracking-new-rss-subscribers-with-google-analytics-to-understand-them-better/" rel=”external">Tracking New RSS Subscribers With Google Analytics (To Understand Them Better)</a></p>
<p  class="related_post_title">Related Posts</p><ul class="related_post"><li><a href="http://blog.imbolo.com/optimize-your-site-via-pagespeed/" title="用Pagespeed优化网站">用Pagespeed优化网站</a></li><li><a href="http://blog.imbolo.com/invite-others-to-google-wave/" title="Google Wave 邀请发放">Google Wave 邀请发放</a></li><li><a href="http://blog.imbolo.com/whats-coming-in-wordpress-3-1/" title="WordPress 3.1 将带来什么？">WordPress 3.1 将带来什么？</a></li><li><a href="http://blog.imbolo.com/app-inventor-for-android-try/" title="App Inventor for Android 使用初体验">App Inventor for Android 使用初体验</a></li><li><a href="http://blog.imbolo.com/css-turn-off-webkit-browsers-input-highlight-and-textarea-resize/" title="CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放">CSS 屏蔽 Webkit 浏览器 input 高亮和 textarea 缩放</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://blog.imbolo.com/track-vieitor-actions-via-google-analytics/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

