<?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>Life Studio &#187; W3C</title>
	<atom:link href="http://wange.im/tag/w3c/feed" rel="self" type="application/rss+xml" />
	<link>http://wange.im</link>
	<description>My Life, My Studio...</description>
	<lastBuildDate>Fri, 20 Jan 2012 01:49:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>拥抱 HTML5，前端的盛会</title>
		<link>http://wange.im/w3ctech-hug-html5.html</link>
		<comments>http://wange.im/w3ctech-hug-html5.html#comments</comments>
		<pubDate>Sat, 16 Apr 2011 13:32:13 +0000</pubDate>
		<dc:creator>万戈</dc:creator>
				<category><![CDATA[三言两语]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[w3ctech]]></category>

		<guid isPermaLink="false">http://wange.im/?p=4773</guid>
		<description><![CDATA[今天天气晴朗，万里无云 ^_^ 真是一个逃课的好日子，恩，是的，我又逃课鸟。不是加班、不是约会、不是睡觉，而是为了参加w3ctech 举办的这次技术交流会议，此次的主题是拥抱HTML5。如果我没记错的话，我是在一个半月前就报名了此次盛会，因为已经错过了上一次 D2 - W3C 标准大会，所以此次就在家门口上海举办的前端界 party 我又岂能再次错过？ 为了赶个早场，我是5：30就起床了（上课从来木有这样积极过，好惭愧～），和我的同事们一行十人浩浩荡荡就杀到了 w3ctech 设在上海海神诺富特大酒店的会场，足足离正式开场提前了一个小时，好鸡冻呀。根据之前在邀请函里所公布的日程安排，此次参加 w3ctech 盛会的嘉宾阵容那是相当的强大，有来自盛大的搞笑主持人周裕波童鞋，有来自 W3C 的美女李安琪姐姐，还有来自马来西亚的帅锅谢子斌 GG，还有百度、腾讯、口碑网、优酷、酷6等业内顶尖的牛人们，当然还有那些隐藏在来参加此次交流大会的各路大神们。 像我这样初学者级的小盆友过去纯粹是打个酱油，见一下大牛的，两眼闪着羡慕嫉妒恨的泪花仰望他们，不过除了打酱油，对此次 HTML5 的交流会还是很有收获的，完全颠覆了我对 HTML5 的看法。BS 我自己之前我 HTML5 的认识是如此的肤浅，完全脱离 HTML5 的深层次 web apps 应用，特别是 HTML5 在手持终端上的应用，比如说磊友科技的赵霏大神谈到的 HTML5 手机浏览器设计，因为涉及到的手机浏览器比较底层的开发，我听得不是太懂，但是大大开扩了我的眼界；还有盛大创新院的程劭非大神，由浅入深地介绍了 HTML5 在 Bambook 电子书开放平台中的应用（虽然有点点 AD 的嫌疑）；以及来自腾讯的于涛大神，向我们展示了 webQQ 在 HTML5 方面应用到的先进技术；还有优酷何涛大神向我们秀了一下他们在 iPAD 等手持设备上的完美兼容，让人叹服。还有还有，与会的某位我叫不上名字的听众向我们展示了他用 HTML5 做的基于 WEB 的游戏，其中移植了 MAC 上的那款超热门的游戏愤怒的小鸟，纯 HTML5 的哟！！！太特么牛叉了！ [...]]]></description>
			<content:encoded><![CDATA[<p>今天天气晴朗，万里无云 ^_^ 真是一个逃课的好日子，恩，是的，我又逃课鸟。不是加班、不是约会、不是睡觉，而是为了参加w3ctech 举办的这次技术交流会议，此次的主题是<strong>拥抱HTML5</strong>。如果我没记错的话，我是在一个半月前就报名了此次盛会，因为已经错过了上一次 D2 - W3C 标准大会，所以此次就在家门口上海举办的前端界 party 我又岂能再次错过？</p>
<p>为了赶个早场，我是5：30就起床了（上课从来木有这样积极过，好惭愧～），和我的同事们一行十人浩浩荡荡就杀到了 w3ctech 设在上海海神诺富特大酒店的会场，足足离正式开场提前了一个小时，好鸡冻呀。根据之前在邀请函里所公布的<a title="日程安排 - 拥抱HTML5 - W3CTECH 2011" rel="external nofollow" href="http://w3ctech.com/2011/html5/schedule" target="_blank">日程安排</a>，此次参加 w3ctech 盛会的嘉宾阵容那是相当的强大，有来自盛大的搞笑主持人周裕波童鞋，有来自 W3C 的美女李安琪姐姐，还有来自马来西亚的帅锅谢子斌 GG，还有百度、腾讯、口碑网、优酷、酷6等业内顶尖的牛人们，当然还有那些隐藏在来参加此次交流大会的各路大神们。</p>
<p>像我这样初学者级的小盆友过去纯粹是打个酱油，见一下大牛的，两眼闪着羡慕嫉妒恨的泪花仰望他们，不过除了打酱油，对此次 HTML5 的交流会还是很有收获的，完全颠覆了我对 HTML5 的看法。BS 我自己之前我 HTML5 的认识是如此的肤浅，完全脱离 HTML5 的深层次 web apps 应用，特别是 HTML5 在手持终端上的应用，比如说磊友科技的赵霏大神谈到的 HTML5 手机浏览器设计，因为涉及到的手机浏览器比较底层的开发，我听得不是太懂，但是大大开扩了我的眼界；还有盛大创新院的程劭非大神，由浅入深地介绍了 HTML5 在 Bambook 电子书开放平台中的应用（虽然有点点 AD 的嫌疑）；以及来自腾讯的于涛大神，向我们展示了 webQQ 在 HTML5 方面应用到的先进技术；还有优酷何涛大神向我们秀了一下他们在 iPAD 等手持设备上的完美兼容，让人叹服。还有还有，与会的某位我叫不上名字的听众向我们展示了他用 HTML5 做的基于 WEB 的游戏，其中移植了 MAC 上的那款超热门的游戏愤怒的小鸟，纯 HTML5 的哟！！！太特么牛叉了！</p>
<p>另外有一个让人兴奋的事情，<a title="HTML5 设计原理" href="http://www.cn-cuckoo.com/2010/10/21/the-design-of-html5-2151.html" target="_blank">HTML5 设计原理</a>的演讲者，Jeremy Keith，也就是《JavaScript DOM 编程艺术》的作者亲临现场，明天将会有一场他现场演绎的 HTML5 设计原理，可惜我明天要考试，不能再逃课了，无缘他的现场版了。但是让人欣慰的是今天有他的《JavaScript DOM 编程艺术》这本书的签售，哇，这个热闹我要凑一下，于是毫不犹豫掏出我皮夹里仅剩的一张百元大钞买下了他的书让他签名，如果 Jeremy Keith 知道那是我坚持到本月底的饭钱的话，他一定会感动到哭的。本来想让 Jeremy Keith 给我签个中文名，描一个也行嘛，8过人家说描也不会，好吧，那就签我名字的拼音吧。</p>
<p><img src="http://vpdqfq.bay.livefilestore.com/y1p3jQ2jGX24VtVluTzX9FvwKGkeYV7dBZEoHJl2VpKst5DMlfFWZRPDZytMbAEcsvBh3tDVCLbmfeSN5RPIypxdI5xZZZ_psa3/javascript.jpg" alt="" /></p>
<p>本来还有一个环节是让人鸡冻兴奋的，那就是抽奖送礼品（赞助商提供的书啥的），但是因为没有我的份而显得黯然失色，唉，不提了。</p>
<p>其实我是更期待明天那一场的 w3ctech 的拥抱 HTML5，那几个话题我更感兴趣，看我明天考完试赶到现场还来不来的及吧。恩恩，确实是一个不错的组织，一场完美的盛会，如果可以的话，w3ctech 的下一场交流会我也一定要去看看。</p>
<div id="rl_posts">    <div id="rl_posts_hd" class="box_hd">        <span id="rl_posts_title" class="box_title">与 <h2 itemprop="keywords"><a href="http://wange.im/tag/html5/" title="HTML5" rel="tag">HTML5</a>,<a href="http://wange.im/tag/w3c/" title="W3C" rel="tag">W3C</a>,<a href="http://wange.im/tag/w3ctech/" title="w3ctech" rel="tag">w3ctech</a></h2> 相关的文章        </span>    </div>    <div id="rl_posts_bd">        <ul class="clearfix"><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/mood.jpg" alt="三言两语" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/w3c-is-in-progress.html" rel="bookmark" title="W3C 规则也在与时俱进？！">W3C 规则也在与时俱进？！</a>        <div class="rl_date">2011年01月22日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/screenshot.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="新年新气象，博客换新衣" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/new-year-new-theme.html" rel="bookmark" title="新年新气象，博客换新衣">新年新气象，博客换新衣</a>        <div class="rl_date">2012年01月20日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/speech.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="给 WordPress 添加语音搜索功能" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/x-webkit-speech-in-wordpress.html" rel="bookmark" title="给 WordPress 添加语音搜索功能">给 WordPress 添加语音搜索功能</a>        <div class="rl_date">2011年12月4日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/mood.jpg" alt="三言两语" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/html5-innershiv-translated-doc.html" rel="bookmark" title="HTML5 innerShiv 翻译文档">HTML5 innerShiv 翻译文档</a>        <div class="rl_date">2011年03月11日</div>    </div></li>        </ul>    </div></div>]]></content:encoded>
			<wfw:commentRss>http://wange.im/w3ctech-hug-html5.html/feed</wfw:commentRss>
		<slash:comments>127</slash:comments>
		</item>
		<item>
		<title>W3C 规则也在与时俱进？！</title>
		<link>http://wange.im/w3c-is-in-progress.html</link>
		<comments>http://wange.im/w3c-is-in-progress.html#comments</comments>
		<pubDate>Sat, 22 Jan 2011 15:20:36 +0000</pubDate>
		<dc:creator>万戈</dc:creator>
				<category><![CDATA[电脑网络]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://wange.im/?p=4390</guid>
		<description><![CDATA[前段时间刚刚推出了我的万戈牌 HTML5 WordPress 主题，最让我得意的是这个主题通过了 W3C 的 HTML5 和 CSS3 验证，因为鄙人对代码有深度洁癖，容不下重构的页面中存在 CSS HACK 和其他 W3C 认为非法的元素，虽然已经到了有些病态的神经质状态，但我还是乐此不疲。 每次看到自己的网站在 W3C 验证之下显示绿绿的一条 “This document was successfully checked as HTML5!”心情就会无比嗨皮。所以心情有所不爽的时候，我就会去玩一下这个验证，然后让自己爽一下，YY有益身心健康～昨天被 Google 打击了一下，心情低落，于是今天又想拿 W3C 来自我娱乐一下。但是出我意料的是，之前已经通过 W3C 验证的主题居然又不能通过验证了？！这是神马情况？连 W3C 也要来欺负我吗？ 检查了一下首页和内页，错误百出，和之前一片绿绿的“This document was successfully checked as HTML5!”结果大相径庭，我撒泪当场。又仔细检查了一下错误的提示，所有的错误都指向了页面中的 onclick 属性。onclick 有什么问题吗？我之前也是这么用的，不是已经通过 W3C 的 HTML5 验证了吗？怎么一会儿又不让过了呢？ 我想唯一的解释就是 W3C 规则对于 HTML5 的解释也在与时俱进的修改着，我还没有看到任何官方的文档对此有作什么解释，所以也只是用自己的经验猜测。到底是 HTML5 在进步呢？还是 W3C [...]]]></description>
			<content:encoded><![CDATA[<p>前段时间刚刚推出了我的<a title="万戈牌主题上线测试" href="http://wange.im/wange-theme-beta.html">万戈牌 HTML5 WordPress 主题</a>，最让我得意的是这个主题通过了 W3C 的 HTML5 和 CSS3 验证，因为鄙人对代码有深度洁癖，容不下重构的页面中存在 CSS HACK 和其他 W3C 认为非法的元素，虽然已经到了有些病态的神经质状态，但我还是乐此不疲。</p>
<p>每次看到自己的网站在 W3C 验证之下显示绿绿的一条 “This document was successfully checked as HTML5!”心情就会无比嗨皮。所以心情有所不爽的时候，我就会去玩一下这个验证，然后让自己爽一下，YY有益身心健康～昨天<a title="哥曾经也是 PR4 的主！" href="http://wange.im/i-have-had-pr4.html">被 Google 打击了一下</a>，心情低落，于是今天又想拿 W3C 来自我娱乐一下。但是出我意料的是，之前已经通过 W3C 验证的主题居然又不能通过验证了？！这是神马情况？连 W3C 也要来欺负我吗？</p>
<p>检查了一下首页和内页，错误百出，和之前一片绿绿的“This document was successfully checked as HTML5!”结果大相径庭，我撒泪当场。又仔细检查了一下错误的提示，所有的错误都指向了页面中的 onclick 属性。onclick 有什么问题吗？我之前也是这么用的，不是已经通过 W3C 的 HTML5 验证了吗？怎么一会儿又不让过了呢？</p>
<p>我想唯一的解释就是 W3C 规则对于 HTML5 的解释也在与时俱进的修改着，我还没有看到任何官方的文档对此有作什么解释，所以也只是用自己的经验猜测。到底是 HTML5 在进步呢？还是 W3C 规则在完善呢？好吧，也管不了那么多，反正咱就不能落后了，明天找找原因要把这些错误搞定了，继续追求我的完美。</p>
<div id="rl_posts">    <div id="rl_posts_hd" class="box_hd">        <span id="rl_posts_title" class="box_title">与 <h2 itemprop="keywords"><a href="http://wange.im/tag/html5/" title="HTML5" rel="tag">HTML5</a>,<a href="http://wange.im/tag/w3c/" title="W3C" rel="tag">W3C</a>,<a href="http://wange.im/tag/wordpress/" title="WordPress" rel="tag">WordPress</a></h2> 相关的文章        </span>    </div>    <div id="rl_posts_bd">        <ul class="clearfix"><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/screenshot.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="新年新气象，博客换新衣" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/new-year-new-theme.html" rel="bookmark" title="新年新气象，博客换新衣">新年新气象，博客换新衣</a>        <div class="rl_date">2012年01月20日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/speech.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="给 WordPress 添加语音搜索功能" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/x-webkit-speech-in-wordpress.html" rel="bookmark" title="给 WordPress 添加语音搜索功能">给 WordPress 添加语音搜索功能</a>        <div class="rl_date">2011年12月4日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/javascript.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="拥抱 HTML5，前端的盛会" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/w3ctech-hug-html5.html" rel="bookmark" title="拥抱 HTML5，前端的盛会">拥抱 HTML5，前端的盛会</a>        <div class="rl_date">2011年04月16日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/wange-theme-beta.html" rel="bookmark" title="万戈牌主题上线测试">万戈牌主题上线测试</a>        <div class="rl_date">2011年01月4日</div>    </div></li>        </ul>    </div></div>]]></content:encoded>
			<wfw:commentRss>http://wange.im/w3c-is-in-progress.html/feed</wfw:commentRss>
		<slash:comments>100</slash:comments>
		</item>
		<item>
		<title>让浏览器的私有属性通过 W3C 验证</title>
		<link>http://wange.im/private-property-checked-w3c-validation.html</link>
		<comments>http://wange.im/private-property-checked-w3c-validation.html#comments</comments>
		<pubDate>Sat, 15 Jan 2011 14:04:24 +0000</pubDate>
		<dc:creator>万戈</dc:creator>
				<category><![CDATA[电脑网络]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[浏览器]]></category>

		<guid isPermaLink="false">http://wange.im/?p=4363</guid>
		<description><![CDATA[用过 Willin 大师 A9 主题的小盆友应该都会感叹这款主题的强大和代码的规范精简，虽然我没有用过大师的这款主题，但是我也曾下载了一个研究过，有很多细节值得学习。其中就有一个技巧让我叹为观止，就是让浏览器的一些私有属性通过 W3C 验证！特地拿过来分享给大家。 我们知道，像 border-radius 这样一些 CSS3 的属性即使在高级的 Firefox、Chrome 等浏览器中也是不能直接支持的，必须要加上 -moz-、-webkit- 这样的私有属性前缀才可以让浏览器们支持。但是很遗憾的是，在样式表中加上这些私有属性之后就无法通过 W3C 的验证，CSS2.0 说我们家族里没有 border-radius 这样的属性，CSS3.0 说我们家族里没有 -moz-、-webkit- 这样的怪胎。多杯具呀。 Willin 大师的方法让私有属性的 W3C 验证不再杯具（不知道是不是 Willin 大师的首创，至少这招我是从他那里学来的）。怎么一个方法呢？其实很简单，就是把样式写进 Javascript，W3C 验证会无视脚本，多简单的原理，只是我们都没有想到这一点。 举个例子，如下样式： &#60;style type="text/css"&#62;     .box{-moz-border-radius:5px;} &#60;/style&#62; 如果要写进 Javascript 的话就应该是： &#60;script type="text/javascript"&#62;     document.write('&#60;style type="text\/css"&#62;.box{-moz-border-radius:5px;}&#60;\/style&#62;'); &#60;/script&#62; 就是这样简单的转换就可以帮助你的浏览器私有属性通过 W3C 的验证，当然有了这个原理，我们还可以扩展一下，比如说 IE 的滤镜、expression 等被 W3C 认为是非法的东东都可以扔进脚本里绕开验证。 感谢 [...]]]></description>
			<content:encoded><![CDATA[<p>用过 Willin 大师 <a title="A9 主題下載" href="http://kan.willin.org/?p=1330" target="_blank">A9 主题</a>的小盆友应该都会感叹这款主题的强大和代码的规范精简，虽然我没有用过大师的这款主题，但是我也曾下载了一个研究过，有很多细节值得学习。其中就有一个技巧让我叹为观止，就是让浏览器的一些私有属性通过 W3C 验证！特地拿过来分享给大家。</p>
<p>我们知道，像 border-radius 这样一些 CSS3 的属性即使在高级的 Firefox、Chrome 等浏览器中也是不能直接支持的，必须要加上 -moz-、-webkit- 这样的私有属性前缀才可以让浏览器们支持。但是很遗憾的是，在样式表中加上这些私有属性之后就无法通过 W3C 的验证，CSS2.0 说我们家族里没有 border-radius 这样的属性，CSS3.0 说我们家族里没有 -moz-、-webkit- 这样的怪胎。多杯具呀。</p>
<p>Willin 大师的方法让私有属性的 W3C 验证不再杯具（不知道是不是 Willin 大师的首创，至少这招我是从他那里学来的）。怎么一个方法呢？其实很简单，就是把样式写进 Javascript，W3C 验证会无视脚本，多简单的原理，只是我们都没有想到这一点。</p>
<p>举个例子，如下样式：</p>
<div class="source" style="font-family: 'Courier New', 'Consolas', 'Lucida Console'; color: #000000;"><span style="color: #000080; font-weight: bold;">&lt;style </span><span style="color: #ff0000;">type=</span><span style="color: #0000ff;">"text/css"</span><span style="color: #000080; font-weight: bold;">&gt;</span><br />
    <span style="color: #000000;">.box</span><span style="color: #000000;">{</span><span style="color: #000000;">-</span><span style="color: #000000;">moz</span><span style="color: #000000;">-</span><span style="color: #000080; font-weight: bold;">border</span><span style="color: #000000;">-</span><span style="color: #000000;">radius</span><span style="color: #000000;">:</span><span style="color: #0000ff;">5px</span><span style="color: #000000;">;}</span><br />
<span style="color: #000080; font-weight: bold;">&lt;/style&gt;</span></div>
<p>如果要写进 Javascript 的话就应该是：</p>
<div class="source" style="font-family: 'Courier New', 'Consolas', 'Lucida Console'; color: #000000;"><span style="color: #000080; font-weight: bold;">&lt;script </span><span style="color: #ff0000;">type=</span><span style="color: #0000ff;">"text/javascript"</span><span style="color: #000080; font-weight: bold;">&gt;</span><br />
    <span style="color: #000000;">document</span><span style="color: #000000;">.</span><span style="color: #000000;">write</span>(<span style="color: #0000ff;">'&lt;style type="text\/css"&gt;.box{-moz-border-radius:5px;}&lt;\/style&gt;'</span>);<br />
<span style="color: #000080; font-weight: bold;">&lt;/script&gt;</span></div>
<p>就是这样简单的转换就可以帮助你的浏览器私有属性通过 W3C 的验证，当然有了这个原理，我们还可以扩展一下，比如说 IE 的滤镜、expression 等被 W3C 认为是非法的东东都可以扔进脚本里绕开验证。</p>
<p>感谢 Willin 大师的这个方法，让我的 <a title="万戈牌主题上线测试" href="http://wange.im/wange-theme-beta.html">HTML5 主题</a>顺利通过了 HTML5 和 CSS3 的 W3C 验证。有个神级的重构牛人和我说过这样一句话：验证不是目的，验证只是手段，通过验证来检验自己在编写样式的时候有没有出现低级的语法错误。这句话很受用，但是为了我那对代码有着洁癖的完美主义，我还是用了这样那样的手段让自己的网站通过这样那样的验证。</p>
<div id="rl_posts">    <div id="rl_posts_hd" class="box_hd">        <span id="rl_posts_title" class="box_title">与 <h2 itemprop="keywords"><a href="http://wange.im/tag/css/" title="CSS" rel="tag">CSS</a>,<a href="http://wange.im/tag/w3c/" title="W3C" rel="tag">W3C</a>,<a href="http://wange.im/tag/browser/" title="浏览器" rel="tag">浏览器</a></h2> 相关的文章        </span>    </div>    <div id="rl_posts_bd">        <ul class="clearfix"><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/div-css-and-ie.html" rel="bookmark" title="DIV+CSS与不同IE版本等的兼容性">DIV+CSS与不同IE版本等的兼容性</a>        <div class="rl_date">2010年01月31日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/simple-trick-to-solve-the-compatibility-issue-in-ie8.html" rel="bookmark" title="一招简单解决IE8兼容问题">一招简单解决IE8兼容问题</a>        <div class="rl_date">2009年05月23日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/cssforest.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="你看这个链接2不2？" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/webdings-font-family.html" rel="bookmark" title="你看这个链接2不2？">你看这个链接2不2？</a>        <div class="rl_date">2011年03月16日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/x-ua-compatible-ie9-to-ie7.html" rel="bookmark" title="让 IE9 见他爷爷去吧">让 IE9 见他爷爷去吧</a>        <div class="rl_date">2011年01月11日</div>    </div></li>        </ul>    </div></div>]]></content:encoded>
			<wfw:commentRss>http://wange.im/private-property-checked-w3c-validation.html/feed</wfw:commentRss>
		<slash:comments>155</slash:comments>
		</item>
		<item>
		<title>让 IE9 见他爷爷去吧</title>
		<link>http://wange.im/x-ua-compatible-ie9-to-ie7.html</link>
		<comments>http://wange.im/x-ua-compatible-ie9-to-ie7.html#comments</comments>
		<pubDate>Tue, 11 Jan 2011 12:04:21 +0000</pubDate>
		<dc:creator>万戈</dc:creator>
				<category><![CDATA[电脑网络]]></category>
		<category><![CDATA[IE9]]></category>
		<category><![CDATA[meta]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[兼容]]></category>
		<category><![CDATA[浏览器]]></category>

		<guid isPermaLink="false">http://wange.im/?p=4346</guid>
		<description><![CDATA[在昨天提到用 IE9 看我的网站首页会有点点杯具，本主题我花最多心思的一个分页导航居然在 IE9 下不能用，而且在主题上线一周后才发现这个 bug，这让我情何以堪，情何以堪啊！！！任何 bug 对我来说都是不被允许的，我决心要搞定它。其实要解决这个 bug 一点也不难，既然 IE9 不能实现这个拖动的分页导航，那就把 IE 浏览器直接降级为 IE8 或者 IE7 就可以了。这个方法我之前也有介绍过。 但是，这样做会引起另外一个让我情何以堪的后果。因为我用的是 HTML5 的声明，已经通过了 W3C 的 HTML5 标准验证，但是在 meta 中加入那一行浏览器降级代码之后，HTML5 的 W3C 就无法通过了，就因为那一个错误！好吧，为了我的完美主义，我要绕开这个降级代码，忽悠一下 W3C 验证。 原理很简单，就是用 PHP 判断浏览器的版本，如果是 IE9 再输出那段 meta 信息，那其他浏览也就避开了这段代码，也就可以顺利通过 W3C 验证了。具体方法如下： &#60;?php     $UA = $_SERVER['HTTP_USER_AGENT'];     if(strpos($UA, 'MSIE 9.0'))     echo '&#60;meta http-equiv="X-UA-Compatible" content="ie=7" [...]]]></description>
			<content:encoded><![CDATA[<p>在<a title="新的工作新的开始" href="http://wange.im/new-job-new-beginning.html">昨天提到</a>用 IE9 看我的网站首页会有点点杯具，本主题我花最多心思的一个分页导航居然在 IE9 下不能用，而且在<a title="万戈牌主题上线测试" href="http://wange.im/wange-theme-beta.html">主题上线</a>一周后才发现这个 bug，这让我情何以堪，情何以堪啊！！！任何 bug 对我来说都是不被允许的，我决心要搞定它。其实要解决这个 bug 一点也不难，既然 IE9 不能实现这个拖动的分页导航，那就把 IE 浏览器直接降级为 IE8 或者 IE7 就可以了。这个方法我<a title="一招简单解决IE8兼容问题" href="http://wange.im/simple-trick-to-solve-the-compatibility-issue-in-ie8.html">之前也有介绍</a>过。</p>
<p>但是，这样做会引起另外一个让我情何以堪的后果。因为我用的是 HTML5 的声明，已经通过了 W3C 的 HTML5 标准验证，但是在 meta 中加入那一行浏览器降级代码之后，HTML5 的 W3C 就无法通过了，就因为那一个错误！好吧，为了我的完美主义，我要绕开这个降级代码，忽悠一下 W3C 验证。</p>
<p>原理很简单，就是用 PHP 判断浏览器的版本，如果是 IE9 再输出那段 meta 信息，那其他浏览也就避开了这段代码，也就可以顺利通过 W3C 验证了。具体方法如下：</p>
<div class="source" style="font-family: 'Courier New', 'Consolas', 'Lucida Console'; color: #000000;"><span style="color: #008080;">&lt;?php</span><br />
    <span style="color: #000000;">$UA</span> <span style="color: #000000;">=</span> <span style="color: #000000;">$_SERVER</span><span style="color: #000000;">[</span><span style="color: #0000ff;">'HTTP_USER_AGENT'</span><span style="color: #000000;">];</span><br />
    <span style="color: #000080; font-weight: bold;">if</span>(<span style="color: #000000;">strpos</span>(<span style="color: #000000;">$UA</span><span style="color: #000000;">,</span> <span style="color: #0000ff;">'MSIE 9.0'</span>))<br />
    <span style="color: #000080; font-weight: bold;">echo</span> <span style="color: #0000ff;">'&lt;meta http-equiv="X-UA-Compatible" content="ie=7" /&gt;'</span>;<br />
<span style="color: #008080;">?&gt;</span></div>
<p>这样就可以让 IE9 在不打开兼容模式的前提下强制把 IE9 降级为 IE7，确保网站可以安全运行效果。但是这就又产生另外一个问题，IE9 自称是最能体现 HTML5 和 CSS3 的浏览器，所以本来网站在 IE9 下是可以有圆角有阴影的，但是这样一来，伪 IE7 下就不再有圆角和阴影这些 CSS3 的效果。没有关系，在用户体验方面，网站的功能体现肯定要比美观更重要，两者不用权衡，我选择前者。让 IE9 见他的爷爷 IE7 去吧。</p>
<p>文中方法来自：<a title="PHP 动态输出 X-UA-Compatible 参数" rel="bookmark" href="http://www.mangguo.org/php-dynamic-output-x-ua-compatible-parameter/">PHP 动态输出 X-UA-Compatible 参数 | 芒果</a></p>
<div id="rl_posts">    <div id="rl_posts_hd" class="box_hd">        <span id="rl_posts_title" class="box_title">与 <h2 itemprop="keywords"><a href="http://wange.im/tag/ie9/" title="IE9" rel="tag">IE9</a>,<a href="http://wange.im/tag/meta/" title="meta" rel="tag">meta</a>,<a href="http://wange.im/tag/w3c/" title="W3C" rel="tag">W3C</a>,<a href="http://wange.im/tag/compatible/" title="兼容" rel="tag">兼容</a>,<a href="http://wange.im/tag/browser/" title="浏览器" rel="tag">浏览器</a></h2> 相关的文章        </span>    </div>    <div id="rl_posts_bd">        <ul class="clearfix"><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/simple-trick-to-solve-the-compatibility-issue-in-ie8.html" rel="bookmark" title="一招简单解决IE8兼容问题">一招简单解决IE8兼容问题</a>        <div class="rl_date">2009年05月23日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/div-css-and-ie.html" rel="bookmark" title="DIV+CSS与不同IE版本等的兼容性">DIV+CSS与不同IE版本等的兼容性</a>        <div class="rl_date">2010年01月31日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/give-up-xp-for-installing-ie9.html" rel="bookmark" title="为 IE9 抛弃 XP？">为 IE9 抛弃 XP？</a>        <div class="rl_date">2011年03月15日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/private-property-checked-w3c-validation.html" rel="bookmark" title="让浏览器的私有属性通过 W3C 验证">让浏览器的私有属性通过 W3C 验证</a>        <div class="rl_date">2011年01月15日</div>    </div></li>        </ul>    </div></div>]]></content:encoded>
			<wfw:commentRss>http://wange.im/x-ua-compatible-ie9-to-ie7.html/feed</wfw:commentRss>
		<slash:comments>178</slash:comments>
		</item>
		<item>
		<title>您是在 google reader 看到本文的吗？</title>
		<link>http://wange.im/r-u-reading-this-in-goole-reader.html</link>
		<comments>http://wange.im/r-u-reading-this-in-goole-reader.html#comments</comments>
		<pubDate>Sun, 07 Feb 2010 08:24:25 +0000</pubDate>
		<dc:creator>万戈</dc:creator>
				<category><![CDATA[电脑网络]]></category>
		<category><![CDATA[feed]]></category>
		<category><![CDATA[Feedsky]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[博客]]></category>

		<guid isPermaLink="false">http://wange.im/?p=2667</guid>
		<description><![CDATA[论坛里灌水的太多，推-特上推友又太少，所以心存疑惑，想来想去还是通过日志发布了，而且今天要向大家求助的问题也最适合在日志里说，因为我比较啰嗦，推上一句话说不明白。 问题的症结在于 google reader 好像对我的日志不再更新了，导致小站的访问量和评论数直线下降，甚至一些常来的老面孔都不见了。这个问题在最近一周已经陆陆续续有好几位朋友提出，我就奇怪了，最近没折腾和 feed 有关的东西呀，也没有增加或减少插件，一切照旧，这问题从何而来，又如何解决呢？ 我还是没弄清楚小站的 feed 源在 google reader 中不更新是个别现象还是普遍现象，所以在这里做个小调查，劳烦各位参与一下。调查的问题就如本文标题：请问您是通过什么方式看到这篇日志的呢？ 1、google reader。这个是我最想要得知的答案，如果您是在 google reader 中阅读本文的话，那就太好了，证明小站的订阅源还算是正常运作的。 2、其他订阅而来。我早已烧制了 feedsky 的订阅，如果您是通过 feedsky 订阅的小站，那么也可能会收到邮箱的推送，或者其他非 google reader 的更新提示。 3、碰巧点击。呃……非常感谢您的参与，如果还没有订阅小站的话，可以尝试一下：feed.wange.im 下面是我对这个现象的简单的分析，做个记录： 1、http://wange.im/feed 此订阅源在各个版本的浏览器，包括 IE 和 Firefox 中都可以正常打开，没有任何错误提示。 2、我用 W3C 标准的 Feed Validation Service 检测了一下订阅源，不幸报错，错误提示为：Server returned (104, 'Connection reset by peer')，我这种非专业人士愣是没看懂这是什么意思，反正我知道没有显示 Congratulations! 就不是什么好事啦，麻烦懂行的朋友给解释一下。 3、我用 google reader 订阅了自己的博客，经过两天的测试，日志也没有如期更新，不过在 google reader 中刷新一下即可手动更新，这也不是什么正常事，总不能要求每个博友每天都手动更新一下订阅吧，那还要 [...]]]></description>
			<content:encoded><![CDATA[<p>论坛里灌水的太多，推-特上推友又太少，所以心存疑惑，想来想去还是通过日志发布了，而且今天要向大家求助的问题也最适合在日志里说，因为我比较啰嗦，推上一句话说不明白。</p>
<p>问题的症结在于 google reader 好像对我的日志不再更新了，导致小站的访问量和评论数直线下降，甚至一些常来的老面孔都不见了。这个问题在最近一周已经陆陆续续有好几位朋友提出，我就奇怪了，最近没折腾和 feed 有关的东西呀，也没有增加或减少插件，一切照旧，这问题从何而来，又如何解决呢？</p>
<p>我还是没弄清楚小站的 feed 源在 google reader 中不更新是个别现象还是普遍现象，所以在这里做个小调查，劳烦各位参与一下。调查的问题就如本文标题：请问您是通过什么方式看到这篇日志的呢？</p>
<p>1、google reader。这个是我最想要得知的答案，如果您是在 google reader 中阅读本文的话，那就太好了，证明小站的订阅源还算是正常运作的。</p>
<p>2、其他订阅而来。我早已烧制了 feedsky 的订阅，如果您是通过 feedsky 订阅的小站，那么也可能会收到邮箱的推送，或者其他非 google reader 的更新提示。</p>
<p>3、碰巧点击。呃……非常感谢您的参与，如果还没有订阅小站的话，可以尝试一下：<a title="订阅本站" href="http://feed.wange.im">feed.wange.im</a></p>
<p>下面是我对这个现象的简单的分析，做个记录：</p>
<p>1、<a href="http://wange.im/feed">http://wange.im/feed</a> 此订阅源在各个版本的浏览器，包括 IE 和 Firefox 中都可以正常打开，没有任何错误提示。</p>
<p>2、我用 W3C 标准的 <a title="Feed Validation Service" href="http://validator.w3.org/feed/" target="_blank">Feed Validation Service</a> 检测了一下订阅源，不幸报错，错误提示为：Server returned (104, 'Connection reset by peer')，我这种非专业人士愣是没看懂这是什么意思，反正我知道没有显示 Congratulations! 就不是什么好事啦，麻烦懂行的朋友给解释一下。</p>
<p>3、我用 google reader 订阅了自己的博客，经过两天的测试，日志也没有如期更新，不过在 google reader 中刷新一下即可手动更新，这也不是什么正常事，总不能要求每个博友每天都手动更新一下订阅吧，那还要 google reader 做啥？</p>
<p>4、在我绑定的 feedsky 中，<a title="订阅本站" href="http://feed.wange.im">feed.wange.im</a> 也是可以照常更新，无任何异常情况。</p>
<p>杯具了，郁闷了，我的 feed 源到底是正常还是不正常，who 来 help help 我～～～</p>
<div id="rl_posts">    <div id="rl_posts_hd" class="box_hd">        <span id="rl_posts_title" class="box_title">与 <h2 itemprop="keywords"><a href="http://wange.im/tag/feed/" title="feed" rel="tag">feed</a>,<a href="http://wange.im/tag/feedsky/" title="Feedsky" rel="tag">Feedsky</a>,<a href="http://wange.im/tag/google/" title="google" rel="tag">google</a>,<a href="http://wange.im/tag/w3c/" title="W3C" rel="tag">W3C</a>,<a href="http://wange.im/tag/blog/" title="博客" rel="tag">博客</a></h2> 相关的文章        </span>    </div>    <div id="rl_posts_bd">        <ul class="clearfix"><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/C3C8B704573706D9!567?filename=domain.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="关于更改域名的最后通牒" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/final-statement-on-changing-domain.html" rel="bookmark" title="关于更改域名的最后通牒">关于更改域名的最后通牒</a>        <div class="rl_date">2010年07月19日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/you-subscribe-to-my-blog.html" rel="bookmark" title="你订阅了我的博客吗？">你订阅了我的博客吗？</a>        <div class="rl_date">2010年06月15日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/surprise-from-google.html" rel="bookmark" title="Google 赐予我的意外惊喜">Google 赐予我的意外惊喜</a>        <div class="rl_date">2011年11月10日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/diy-qq-list-form.html" rel="bookmark" title="自定义 QQ 邮件列表订阅表单">自定义 QQ 邮件列表订阅表单</a>        <div class="rl_date">2011年05月18日</div>    </div></li>        </ul>    </div></div>]]></content:encoded>
			<wfw:commentRss>http://wange.im/r-u-reading-this-in-goole-reader.html/feed</wfw:commentRss>
		<slash:comments>171</slash:comments>
		</item>
		<item>
		<title>DIV+CSS与不同IE版本等的兼容性</title>
		<link>http://wange.im/div-css-and-ie.html</link>
		<comments>http://wange.im/div-css-and-ie.html#comments</comments>
		<pubDate>Sun, 31 Jan 2010 12:59:34 +0000</pubDate>
		<dc:creator>万戈</dc:creator>
				<category><![CDATA[电脑网络]]></category>
		<category><![CDATA[转来载去]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[IE]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[兼容]]></category>
		<category><![CDATA[浏览器]]></category>

		<guid isPermaLink="false">http://wange.im/?p=2634</guid>
		<description><![CDATA[为了方便自己查询，省得每次遇到问题都要满世界搜，转篇实用的：DIV+CSS 与不同 IE 版本等的兼容性。 一、!important (功能有限) 随着 IE7 对 !important 的支持， !important 方法现在只针对 IE6 的兼容。（注意写法，记得该声明位置需要提前。）例如： #example { width: 100px !important; /* IE7+FF */ width: 200px; /* IE6 */ } 二、CSS HACK 的方法（新手可以看看，高手就当路过吧） 首先需要知道的是： 所有浏览器 通用 height: 100px; IE6 专用 _height: 100px; IE7 专用 *+height: 100px; IE6、IE7 共用 *height: 100px; IE7、FF 共用 height: 100px !important; 例如： [...]]]></description>
			<content:encoded><![CDATA[<p>为了方便自己查询，省得每次遇到问题都要满世界搜，转篇实用的：DIV+CSS 与不同 IE 版本等的兼容性。</p>
<p><strong>一、!important (功能有限)</strong></p>
<p>随着 IE7 对 !important 的支持， !important 方法现在只针对 IE6 的兼容。（注意写法，记得该声明位置需要提前。）例如：</p>
<p>#example {<br />
width: 100px !important; /* IE7+FF */<br />
width: 200px; /* IE6 */<br />
}</p>
<p><strong>二、CSS HACK 的方法（新手可以看看，高手就当路过吧）</strong></p>
<p>首先需要知道的是：</p>
<p>所有浏览器 通用 height: 100px;<br />
IE6 专用 _height: 100px;<br />
IE7 专用 *+height: 100px;<br />
IE6、IE7 共用 *height: 100px;<br />
IE7、FF 共用 height: 100px !important;</p>
<p>例如：</p>
<p>#example { height:100px; } /* FF */</p>
<p>* html #example { height:200px; } /* IE6 */</p>
<p>*+html #example { height:300px; } /* IE7 */</p>
<p>下面的这种方法比较简单</p>
<p>举几个例子：</p>
<p>1、IE6 - IE7+FF</p>
<p>#example {<br />
height:100px; /* FF+IE7 */<br />
_height:200px; /* IE6 */<br />
}<br />
其实这个用上面说的第一种方法也可以<br />
#example {<br />
height:100px !important; /* FF+IE7 */<br />
height:200px; /* IE6 */<br />
}</p>
<p>2、IE6+IE7 - FF</p>
<p>#example {<br />
height:100px; /* FF */<br />
*height:200px; /* IE6+IE7 */<br />
}</p>
<p>3、IE6+FF - IE7</p>
<p>#example {<br />
height:100px; /* IE6+FF */<br />
*+height:200px; /* IE7 */<br />
}</p>
<p>4、IE6 IE7 FF 各不相同</p>
<p>#example {<br />
height:100px; /* FF */<br />
_height:200px; /* IE6 */<br />
*+height:300px; /* IE7 */<br />
}<br />
或：<br />
#example {<br />
height:100px; /* FF */<br />
*height:300px; /* IE7 */<br />
_height:200px; /* IE6 */<br />
}</p>
<p>需要注意的是，代码的顺序一定不能颠倒了，要不又前功尽弃了。因为浏览器在解释程序的时候，如果重名的话，会用后面的覆盖前面的，就象给变量赋值一个道理，所以我们把通用的放前面，越专用的越放后面。</p>
<p>解释一下4的代码：</p>
<p>读代码的时候，第一行 height:100px;  大家都通用，IE6 IE7 FF 都显示100px。到了第二行*height:300px; FF不认识这个属性，IE6 IE7 都认，所以FF还显示100px，而 IE6 IE7 把第一行得到的height属性给覆盖了，都显示300px。到了第三行 _height:200px; 只有IE6认识，所以 IE6 就又覆盖了在第二行得到的 height，最终显示200px。这样，三个浏览器都有自己的height属性了，各玩各的去吧。</p>
<p>这样说要是你还不明白，要么你去撞墙，要么我去!不过还是你去比较好。</p>
<p>哦，差点忘了说了：</p>
<p>*+html 对 IE7 的兼容 必须保证HTML顶部有如下声明：<br />
&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"　"<a href="http://www.w3.org/TR/html4/loose.dtd">http://www.w3.org/TR/html4/loose.dtd</a>"&gt;</p>
<p><strong>三、使用IE专用的条件注释</strong></p>
<p>&lt;!--其他浏览器 --&gt;</p>
<p>&lt;link rel="stylesheet" type="text/css" href="css.css" /&gt;</p>
<p>&lt;!--[if IE 7]&gt;</p>
<p>&lt;!-- 适合于IE7 --&gt;</p>
<p>&lt;link rel="stylesheet" type="text/css" href="ie7.css" /&gt;</p>
<p>&lt;![endif]--&gt;</p>
<p>&lt;!--[if lte IE 6]&gt;</p>
<p>&lt;!-- 适合于IE6及以下 --&gt;</p>
<p>&lt;link rel="stylesheet" type="text/css" href="ie.css" /&gt;</p>
<p>&lt;![endif]--&gt;</p>
<p>貌似要编三套 css，我还没用过，先粘过来再说</p>
<p>IE 的 if 条件 Hack</p>
<p>1. &lt;!--[if !IE]&gt;&lt;!--&gt; 除IE外都可识别 &lt;!--&lt;![endif]--&gt;<br />
2. &lt;!--[if IE]&gt; 所有的IE可识别 &lt;![endif]--&gt;<br />
3. &lt;!--[if IE 5.0]&gt; 只有IE5.0可以识别 &lt;![endif]--&gt;<br />
4. &lt;!--[if IE 5]&gt; 仅IE5.0与IE5.5可以识别 &lt;![endif]--&gt;<br />
5. &lt;!--[if gt IE 5.0]&gt; IE5.0以及IE5.0以上版本都可以识别 &lt;![endif]--&gt;<br />
6. &lt;!--[if IE 6]&gt; 仅IE6可识别 &lt;![endif]--&gt;<br />
7. &lt;!--[if lt IE 6]&gt; IE6以及IE6以下版本可识别 &lt;![endif]--&gt;<br />
8. &lt;!--[if gte IE 6]&gt; IE6以及IE6以上版本可识别 &lt;![endif]--&gt;<br />
9. &lt;!--[if IE 7]&gt; 仅IE7可识别 &lt;![endif]--&gt;<br />
10. &lt;!--[if lt IE 7]&gt; IE7以及IE7以下版本可识别 &lt;![endif]--&gt;<br />
11. &lt;!--[if gte IE 7]&gt; IE7以及IE7以上版本可识别 &lt;![endif]--&gt;注:gt = Great Then 大于<br />
&gt; = &gt; 大于号<br />
lt = Less Then 小于<br />
&lt; = &lt; 小于号<br />
gte = Great Then or Equal 大于或等于<br />
lte = Less Then or Equal 小于或等于</p>
<p><strong>四、css filter的办法（据作者称是从国外某经典网站翻译过来的说）</strong></p>
<p>新建一个css样式如下：</p>
<p>#item {</p>
<p>width: 200px;</p>
<p>height: 200px;</p>
<p>background: red;</p>
<p>}</p>
<p>新建一个div,并使用前面定义的css的样式：</p>
<p>&lt;div &gt;some text here&lt;/div&gt;</p>
<p>在body表现这里加入 lang 属性，中文为zh：</p>
<p>&lt;body lang="en"&gt;</p>
<p>现在对div元素再定义一个样式：</p>
<p>*:lang(en) #item{</p>
<p>background:green !important;</p>
<p>}</p>
<p>这样做是为了用 !important 覆盖原来的 css 样式，由于:lang 选择器 ie7.0 并不支持，所以对这句话不会有任何作用，于是也达到了 ie6.0下同样的效果，但是很不幸地的是，safari 同样不支持此属性，所以需要加入以下 css 样式：</p>
<p>#item:empty {</p>
<p>background: green !important</p>
<p>}</p>
<p>:empty选择器为 css3 的规范，尽管 safari 并不支持此规范，但是还是会选择此元素，不管是否此元素存在，现在绿色会现在在除 ie 各版本以外的浏览器上。</p>
<p><strong>五、FLOAT 闭合（clearing float）</strong></p>
<p>网页在某些浏览器上显示错位很多时候都是因为使用了 float 浮动而没有真正闭合，这也是 div 无法自适应高度的一个原因。如果父 div 没有设 float 而其子div却设了 float 的话,父div无法包住整个子 DIV，这种情况一般出现在一个父 DIV 下包含多个子 DIV。解决办法：</p>
<p>1、给父 DIV 也设上 float (不要骂我，我知道是废话)</p>
<p>2、在所有子 DIV 后新加一个空 DIV (不推荐，有些浏览器可以看见空 DIV 产生的空隙)</p>
<p>比如：</p>
<p>.parent{width:100px;}<br />
.son1{float:left;width:20px;}<br />
.son2{float:left;width:80px;}<br />
.clear{clear:both;margin:0;parding0;height:0px;font-size:0px;}</p>
<p>&lt;div&gt;<br />
&lt;div&gt;&lt;/div&gt;<br />
&lt;div&gt;&lt;/div&gt;<br />
&lt;div&gt;&lt;/div&gt;<br />
&lt;/div&gt;</p>
<p>3、万能 float 闭合</p>
<p>将以下代码加入Global CSS 中,给需要闭合的div加上 class=”clearfix” 即可,屡试不爽.<br />
代码:<br />
&lt;style&gt;<br />
/* Clear Fix */<br />
.clearfix:after {<br />
content:".";<br />
display:block;<br />
height:0;<br />
clear:both;<br />
visibility:hidden;<br />
}<br />
.clearfix {<br />
display:inline-block;<br />
}<br />
/* Hide from IE Mac \*/<br />
.clearfix {display:block;}<br />
/* End hide from IE Mac */<br />
/* end of clearfix */<br />
&lt;/style&gt;</p>
<p>:after（伪对象）,设置在对象后发生的内容，通常和 content 配合使用，IE 不支持此伪对象，非 Ie  浏览器支持，所以并不影响到IE/WIN浏览器。这种的最麻烦。</p>
<p>4、overflow:auto（刚看到的，极力推荐）</p>
<p>只要在父 DIV 的CSS中加上 overflow:auto 就搞定。</p>
<p>举例：</p>
<p>.parent{width:100px;overflow:auto}<br />
.son1{float:left;width:20px;}<br />
.son2{float:left;width:80px;}</p>
<p>&lt;div&gt;<br />
&lt;div&gt;&lt;/div&gt;<br />
&lt;div&gt;&lt;/div&gt;<br />
&lt;/div&gt;</p>
<p>作者原话：原理是，外围元素之所以不能很好的延伸，问题出在了 overflow 上，因为 overflow 不可见（见W3C的解释）。现在只要将给外围元素添加一个“overflow:auto”，就可以解决问题，结果是除了IE，真的可以解决。下来就要解决IE的问题了，再加上“_height:1%”，这个问题就完全解决了。</p>
<p>我试了一下，其实不加"_height:1%“在IE下也行，留着吧。</p>
<p><strong>六、需要注意的一些兼容细节</strong></p>
<p>1, FF 下给 div 设置 padding 后会导致 width 和 height 增加(DIV的实际宽度=DIV宽+Padding), 但IE不会.</p>
<p>解决办法：给DIV设定IE、FF两个宽度，在IE的宽度前加上IE特有标记" * "号。</p>
<p>2, 页面居中问题.</p>
<p>body {TEXT-ALIGN: center;} 在IE下足够了，但 FF 下失效。</p>
<p>解决办法：加上"MARGIN-RIGHT: auto; MARGIN-LEFT: auto; "</p>
<p>3, 有的时候在IE6上看见一些奇怪的间隙，可我们高度明明设好了呀。</p>
<p>解决办法：试试在有空隙的DIV上加上"font-size:0px;"</p>
<p>4, 关于手形光标. cursor: pointer. 而hand 只适用于 IE.</p>
<p>5, 浮动IE6产生的双倍距离</p>
<p>#box{ float:left;<br />
width:100px;<br />
margin:0 0 0 100px;<br />
}<br />
这种情况之下IE6会产生200px的距离</p>
<p>解决办法：加上 display:inline，使浮动忽略</p>
<p>这里细说一下block,inline两个元素,Block元素的特点是:总是在新行上开始,高度,宽度,行高,边距都可以控制(块元素);Inline元素的特点是:和其他元素在同一行上,…不可控制(内嵌元素);<br />
#box{ display:block; //可以为内嵌元素模拟为块元素 display:inline; //实现同一行排列的的效果</p>
<p>6 页面的最小宽度</p>
<p>min-width是个非常方便的CSS命令，它可以指定元素最小也不能小于某个宽度，这样就能保证排版一直正确。但IE不认得min-这个定义，但实际上它把正常的width和height当作有min的情况来使。这样问题就大了，如果只用宽度和高度，正常的浏览器里这两个值就不会变，如果只用min-width和min-height的话，IE下面根本等于没有设置宽度和高度。比如要设置背景图片，这个宽度是比较重要的。</p>
<p>解决办法：为了让这一命令在IE上也能用，可以把一个&lt;div&gt; 放到 &lt;body&gt; 标签下，然后为div指定一个类：<br />
然后CSS这样设计：<br />
#container{<br />
min-width: 600px;<br />
width:e-xpression(document.body.clientWidth &lt; 600? “600px”: “auto” );<br />
}<br />
第一个min-width是正常的；但第2行的width使用了Javascript，这只有IE才认得，这也会让你的HTML文档不太正规。它实际上通过Javascript的判断来实现最小宽度。</p>
<p>7、UL和FORM标签的padding与margin</p>
<p>ul标签在FF中默认是有padding值的,而在IE中只有margin默认有值。FORM标签在IE中,将会自动margin一些边距,而在FF中margin则是0；</p>
<p>解决办法：css中首先都使用这样的样式ul,form{margin:0;padding:0;}给定义死了,后面就不会为这个头疼了.</p>
<p>8 ,DIV浮动IE文本产生3象素的bug</p>
<p>下面这段是我在网上粘过来的</p>
<p>左边对象浮动，右边采用外补丁的左边距来定位，右边对象内的文本会离左边有3px的间距.<br />
#box{<br />
float:left;<br />
width:800px;}<br />
#left{<br />
float:left;<br />
width:50%;}<br />
#right{<br />
width:50%;<br />
}<br />
*html #left{<br />
margin-right:-3px;<br />
//这句是关键<br />
}<br />
HTML代码<br />
&lt;DIV id=box&gt;<br />
&lt;DIV id=left&gt;&lt;/DIV&gt;<br />
&lt;DIV id=right&gt;&lt;/DIV&gt;<br />
&lt;/DIV&gt;</p>
<p>针对上面这段代码，下面说一下我的理解：</p>
<p>第一、只要right定义了width属性，在FF下绝对就会两行显示<br />
第二、两个width都定义为百分比的话，就算都为100%在IE下也会一行显示。所以上面那句所谓“这句是关键”根本没用，不加也在一行，除非你width定义的是数值才用得上。</p>
<p>所以说上面这段代码其实用处不大，至少在FF下不行。其实只要只定义left的width就行了，right不定义width就不管在IE还是FF 下都能成功，但这样的话父DIV BOX并没有真正的包含LEFT和RIGHT两子DIV,可以用我上面说的第5种办法解决。最简单的办法就是在RIGHT中加上float:left就 OK了，真磨叽！</p>
<p>9,截字省略号</p>
<p>.hh { -o-text-overflow:ellipsis;<br />
text-overflow:ellipsis;<br />
white-space:<br />
nowrapoverflow:hidden;<br />
}<br />
这个是在越出长度后会自行的截掉多出部分的文字，并以省略号结尾。技术是好技术，很多人都喜欢乱用，但注意 Firefox 并不支持</p>
<p>本文转自：<a href="http://www.kukala.com.cn/archives/586.html" target="_blank">http://www.kukala.com.cn/archives/586.html</a></p>
<div id="rl_posts">    <div id="rl_posts_hd" class="box_hd">        <span id="rl_posts_title" class="box_title">与 <h2 itemprop="keywords"><a href="http://wange.im/tag/css/" title="CSS" rel="tag">CSS</a>,<a href="http://wange.im/tag/ie/" title="IE" rel="tag">IE</a>,<a href="http://wange.im/tag/w3c/" title="W3C" rel="tag">W3C</a>,<a href="http://wange.im/tag/compatible/" title="兼容" rel="tag">兼容</a>,<a href="http://wange.im/tag/browser/" title="浏览器" rel="tag">浏览器</a></h2> 相关的文章        </span>    </div>    <div id="rl_posts_bd">        <ul class="clearfix"><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/ie-bug.html" rel="bookmark" title="汇总 IE 在 CSS 中常见的 中 bug">汇总 IE 在 CSS 中常见的 中 bug</a>        <div class="rl_date">2010年01月29日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/revise-inaccessible-in-ie.html" rel="bookmark" title="修正部分 IE 访客浏览器假死现象">修正部分 IE 访客浏览器假死现象</a>        <div class="rl_date">2009年10月14日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/simple-trick-to-solve-the-compatibility-issue-in-ie8.html" rel="bookmark" title="一招简单解决IE8兼容问题">一招简单解决IE8兼容问题</a>        <div class="rl_date">2009年05月23日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/zoom-in-pic-with-css.html" rel="bookmark" title="杂谈 CSS 实现的图片放大效果">杂谈 CSS 实现的图片放大效果</a>        <div class="rl_date">2011年02月8日</div>    </div></li>        </ul>    </div></div>]]></content:encoded>
			<wfw:commentRss>http://wange.im/div-css-and-ie.html/feed</wfw:commentRss>
		<slash:comments>88</slash:comments>
		</item>
		<item>
		<title>CSS 中 ID 与 Class 的区别及使用方法</title>
		<link>http://wange.im/id-and-class-in-css.html</link>
		<comments>http://wange.im/id-and-class-in-css.html#comments</comments>
		<pubDate>Thu, 21 Jan 2010 11:16:39 +0000</pubDate>
		<dc:creator>万戈</dc:creator>
				<category><![CDATA[电脑网络]]></category>
		<category><![CDATA[转来载去]]></category>
		<category><![CDATA[Class]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[id]]></category>
		<category><![CDATA[JS]]></category>
		<category><![CDATA[W3C]]></category>

		<guid isPermaLink="false">http://wange.im/?p=2593</guid>
		<description><![CDATA[对于 CSS 初学者来说，ID 和 Class 的区别是个十分值得探讨和注意的话题。接下来，我就对 ID 和 Class 的区别及适用场合做简单的阐述。 孪生兄弟：ID 和 Class 很多刚迈入网页设计师行业的人对 CSS 中 ID 和 Class 的认识还停留在比较混乱的阶段。很多人甚至认为这两兄弟功能上是完全一样的，这就导致了他们对 ID 和 Class 的滥用。 ID 以及它的适用场合 ID 是唯一标识（identification）的意思；这是一个非常优雅和漂亮的 CSS 属性。但同时我们又很容易将它应用在错误的场合。与每个人的身份证号码必须唯一一样的道理，ID 在一个 XHTML 和 HTML 文档中的使用次数也必须唯一，即 ID 不能重复使用。重复使用 ID 标签不仅会导致你的页面无法通过 W3C 验证，而且会对 JavaScript 操作 DOM 造成负面影响。总之，ID 就像页面某个元素的身份证一样（如&#60;div id="test"&#62;&#60;/div&#62;），它最多仅能出现一次。 主流浏览器能够识别 HTML 和 XHTML 文档中的 ID 属性。假设我们希望在网页顶部做一个链接；当我们点击这个链接时，页面会自动滚动下滑到正文区域去；此时我们可以在正文外围元素或正文的标题元素上添加一个id="title"的属性/值，然后在链接上添加如下锚代码： &#60;a [...]]]></description>
			<content:encoded><![CDATA[<p>对于 CSS 初学者来说，ID 和 Class 的区别是个十分值得探讨和注意的话题。接下来，我就对 ID 和 Class 的区别及适用场合做简单的阐述。</p>
<p><strong>孪生兄弟：ID 和 Class</strong></p>
<p>很多刚迈入网页设计师行业的人对 CSS 中 ID 和 Class 的认识还停留在比较混乱的阶段。很多人甚至认为这两兄弟功能上是完全一样的，这就导致了他们对 ID 和 Class 的滥用。</p>
<p><strong>ID 以及它的适用场合</strong></p>
<p>ID 是唯一标识（identification）的意思；这是一个非常优雅和漂亮的 CSS 属性。但同时我们又很容易将它应用在错误的场合。与每个人的身份证号码必须唯一一样的道理，ID 在一个 XHTML 和 HTML 文档中的使用次数也必须唯一，即 ID 不能重复使用。重复使用 ID 标签不仅会导致你的页面无法通过 W3C 验证，而且会对 JavaScript 操作 DOM 造成负面影响。总之，ID 就像页面某个元素的身份证一样（如&lt;div id="test"&gt;&lt;/div&gt;），它最多仅能出现一次。</p>
<p>主流浏览器能够识别 HTML 和 XHTML 文档中的 ID 属性。假设我们希望在网页顶部做一个链接；当我们点击这个链接时，页面会自动滚动下滑到正文区域去；此时我们可以在正文外围元素或正文的标题元素上添加一个id="title"的属性/值，然后在链接上添加如下锚代码：</p>
<div class="source" style="font-family: 'Courier New','Lucida Console','monospace'; color: #000000;"><span style="color: #000080; font-weight: bold;">&lt;a</span> <span style="color: #ff0000;">href=</span><span style="color: #0000ff;">"#title"</span><span style="color: #000080; font-weight: bold;">&gt;</span><span style="color: #000000;">Life Studio</span><span style="color: #000080; font-weight: bold;">&lt;/a&gt;</span><br />
<span style="color: #000080; font-weight: bold;">&lt;div</span> <span style="color: #ff0000;">id=</span><span style="color: #0000ff;">"title"</span><span style="color: #000080; font-weight: bold;">&gt;</span><span style="color: #000000;">万戈-Life Studio-http://wange.im</span><span style="color: #000080; font-weight: bold;">&lt;/a&gt;</span></div>
<p>在 CSS 文档代码中，我们可以通过符号"#"来选择我们自定义的 ID 属性。</p>
<p>同时，JavaScript 也非常依赖 HTML 和 XHTML 中的 ID 属性，其中最重要的过程函数莫过于 getElementById() 。</p>
<p><strong>Class 以及它的适用场合</strong></p>
<p>与 ID 类似，Class 也可以被 JavaScript 代码所操控；但与 ID 不同的是，在同一 HTML 文档中，我们可以多次使用 Class。CSS 能够让内容与表现相分离的这种特性就得益与 Class 的强大。很多初学者知道我们能够多次将同一 Class 属性定义在不同的 HTML 元素标签上；但他们或许不知道，我们还可以将多个 Class 属性定义在同一 HTML 标签上：</p>
<div class="source" style="font-family: 'Courier New','Lucida Console','monospace'; color: #000000;"><span style="color: #000000;">.left</span> <span style="color: #008080;">{</span><br />
<span style="color: #ff0000;">float</span><span style="color: #000000;">:</span> <span style="color: #ff0000;">left</span>;<br />
<span style="color: #008080;">}</span><br />
<span style="color: #000000;">.larger</span> p <span style="color: #008080;">{</span><br />
<span style="color: #ff0000;">font</span><span style="color: #000000;">-</span><span style="color: #ff0000;">size</span><span style="color: #000000;">:</span> <span style="color: #0000ff;">125</span><span style="color: #000000;">%;</span><br />
<span style="color: #008080;">}</span><br />
<span style="color: #000000;">&lt;</span><span style="color: #000080; font-weight: bold;">div</span> <span style="color: #000080; font-weight: bold;">class</span><span style="color: #000000;">=</span><span style="color: #0000ff;">"left larger"</span><span style="color: #000000;">&gt;</span><br />
<span style="color: #000000;">&lt;</span>p<span style="color: #000000;">&gt;</span><span style="color: #000080; font-weight: bold;">Life</span> <span style="color: #000080; font-weight: bold;">Studio</span><span style="color: #000000;">&lt;/</span>p<span style="color: #000000;">&gt;</span><br />
<span style="color: #000000;">&lt;/</span><span style="color: #000080; font-weight: bold;">div</span><span style="color: #000000;">&gt;</span></div>
<p>第二段代码是一个完美的可通过 W3C 验证的 HTML 代码；它将两个不同的 Class 属性定义在同一 DIV 上，实现让一个段落&lt;p&gt;在向左浮动的同时，将其字体大小设置成文档默认字体的125%倍。</p>
<p>可以想象，这种组合使用 Class 的技术能够减小 CSS 文件大小并提高代码使用效率。</p>
<p>同样值得注意的是，我们也可以将 ID 和 Class 同时定义在某个 HTML 元素上！</p>
<p><strong>那么 ID 与 Class 相比较，我该选择使用哪个？</strong></p>
<p>这是一个初学网页设计的人经常面对的问题，而事实也证明是这样。很多 CSS 编写者将 ID 的用法与 Class 的用法相混淆，这导致他们在同一 HTML 页面上多次使用同一 ID 属性。</p>
<p>虽然这种用法或许并不影响页面的外观（浏览器能正常解析），但却给页面的规范性和日后的网页维护留下了隐患。说它不规范是因为它没有遵循 W3C 推荐的 CSS 使用规范，这样的代码无法通过 W3C 认证，而且不能保证以后的浏览器能够正常的进行解析。说它给日后的网页维护留下隐患是因为正如我们上面所谈到的，Class 的大量使用一方面能够减少 CSS 文件大小，进而加快网页速度；另一方面通过 Class 的组合使用提高 CSS 编程效率，这主要是因为 Class 能够重复使用，无需像 ID 那样，增加一个 ID，必需在对应的 CSS 代码中增加对属性的定义。</p>
<p>结合上面的描述，我推荐给大家如下的规范作为 CSS 的“游戏规则”：尽可能多的使用 Class 定义网页的样式；仅在与 JavaScript 操作相关的 HTML 元素上使用 ID 属性。</p>
<p>Tips：当我们看到一个 ID 时，会意识到有 JavaScript 可能在操作这个元素（方便 JS 代码查错）。</p>
<p><strong>总结</strong></p>
<p>无论怎样，是选择 ID 还是选择 Class？这一切都取决于你。希望本文对大家认识 ID 和 Class 有一定的帮助作用。</p>
<p>本文转自：http://www.docin.com/p-8097684.html</p>
<div id="rl_posts">    <div id="rl_posts_hd" class="box_hd">        <span id="rl_posts_title" class="box_title">与 <h2 itemprop="keywords"><a href="http://wange.im/tag/class/" title="Class" rel="tag">Class</a>,<a href="http://wange.im/tag/css/" title="CSS" rel="tag">CSS</a>,<a href="http://wange.im/tag/id/" title="id" rel="tag">id</a>,<a href="http://wange.im/tag/js/" title="JS" rel="tag">JS</a>,<a href="http://wange.im/tag/w3c/" title="W3C" rel="tag">W3C</a></h2> 相关的文章        </span>    </div>    <div id="rl_posts_bd">        <ul class="clearfix"><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/private-property-checked-w3c-validation.html" rel="bookmark" title="让浏览器的私有属性通过 W3C 验证">让浏览器的私有属性通过 W3C 验证</a>        <div class="rl_date">2011年01月15日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/blink-effect-with-css-or-js.html" rel="bookmark" title="CSS 或 JS 实现闪烁文字">CSS 或 JS 实现闪烁文字</a>        <div class="rl_date">2010年02月8日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/div-css-and-ie.html" rel="bookmark" title="DIV+CSS与不同IE版本等的兼容性">DIV+CSS与不同IE版本等的兼容性</a>        <div class="rl_date">2010年01月31日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/ktm_small.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="JS 实现放大镜产品展示效果（二）" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/enlarge-show-effects-with-js-2.html" rel="bookmark" title="JS 实现放大镜产品展示效果（二）">JS 实现放大镜产品展示效果（二）</a>        <div class="rl_date">2009年11月6日</div>    </div></li>        </ul>    </div></div>]]></content:encoded>
			<wfw:commentRss>http://wange.im/id-and-class-in-css.html/feed</wfw:commentRss>
		<slash:comments>110</slash:comments>
		</item>
		<item>
		<title>在新窗口中打开 WordPress 评论者链接</title>
		<link>http://wange.im/wordpress-comment-author-link-open-in-new-window.html</link>
		<comments>http://wange.im/wordpress-comment-author-link-open-in-new-window.html#comments</comments>
		<pubDate>Sun, 01 Nov 2009 05:59:49 +0000</pubDate>
		<dc:creator>万戈</dc:creator>
				<category><![CDATA[电脑网络]]></category>
		<category><![CDATA[external]]></category>
		<category><![CDATA[JS]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[留言]]></category>
		<category><![CDATA[链接]]></category>

		<guid isPermaLink="false">http://wange.im/?p=2031</guid>
		<description><![CDATA[WordPress 程序源码写的很规范，符合 W3C 的 xhtml1-strict.dtd 标准。比说，让评论者链接在新窗口中打开，Wordpress 用的是 rel="external"，而不是 target="_blank"。符合规范，这当然是好事啦，但是我们知道仅凭 rel="external" 是不能独自完成在新窗口打开的任务的，还需要一个 external.js 配合才行，而 WordPress 源程序中并没有包含 external.js 这个文件，也很少有主题将这个脚本纳入其中。 这里提供两种方案使 WordPress 评论者的链接在新窗口打开。 方法一：用 rel="external" 实现。 1、将以下代码另存为 external.js 文件。 function externallinks() { if (!document.getElementsByTagName) return; var anchors = document.getElementsByTagName("a"); for (var i=0; i&#60;anchors.length; i++) { var anchor = anchors[i]; if (anchor.getAttribute("href") &#38;&#38; anchor.getAttribute("rel") == "external nofollow") anchor.target = [...]]]></description>
			<content:encoded><![CDATA[<p>WordPress 程序源码写的很规范，符合 W3C 的 xhtml1-strict.dtd 标准。比说，让评论者链接在新窗口中打开，Wordpress 用的是 rel="external"，而不是 target="_blank"。符合规范，这当然是好事啦，但是我们知道仅凭 rel="external" 是不能独自完成在新窗口打开的任务的，还需要一个 external.js 配合才行，而 WordPress 源程序中并没有包含 external.js 这个文件，也很少有主题将这个脚本纳入其中。</p>
<p>这里提供两种方案使 WordPress 评论者的链接在新窗口打开。</p>
<p><strong>方法一：用 rel="external" 实现。</strong></p>
<p>1、将以下代码另存为 external.js 文件。</p>
<div class="source">
<div style="FONT-FAMILY: 'Courier New','Lucida Console','monospace'; COLOR: #000000"><span style="COLOR: #000080; FONT-WEIGHT: bold">function</span> <span style="COLOR: #000000">externallinks</span>() <span style="COLOR: #000000">{</span><br />
<span style="COLOR: #000080; FONT-WEIGHT: bold">if</span> (<span style="COLOR: #000000">!</span><span style="COLOR: #000000">document</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getElementsByTagName</span>) <span style="COLOR: #000080; FONT-WEIGHT: bold">return</span>;<br />
<span style="COLOR: #000080; FONT-WEIGHT: bold">var</span> <span style="COLOR: #000000">anchors</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">document</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getElementsByTagName</span>(<span style="COLOR: #0000ff">"a"</span>);<br />
<span style="COLOR: #000080; FONT-WEIGHT: bold">for</span> (<span style="COLOR: #000080; FONT-WEIGHT: bold">var</span> <span style="COLOR: #000000">i</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">0</span>; <span style="COLOR: #000000">i</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">anchors</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">length</span>; <span style="COLOR: #000000">i</span><span style="COLOR: #000000">++</span>) <span style="COLOR: #000000">{</span><br />
<span style="COLOR: #000080; FONT-WEIGHT: bold">var</span> <span style="COLOR: #000000">anchor</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">anchors</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">i</span><span style="COLOR: #000000">];</span><br />
<span style="COLOR: #000080; FONT-WEIGHT: bold">if</span> (<span style="COLOR: #000000">anchor</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getAttribute</span>(<span style="COLOR: #0000ff">"href"</span>) <span style="COLOR: #000000">&amp;&amp;</span><br />
<span style="COLOR: #000000">anchor</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getAttribute</span>(<span style="COLOR: #0000ff">"rel"</span>) <span style="COLOR: #000000">==</span> <span style="COLOR: #0000ff">"external nofollow"</span>)<br />
<span style="COLOR: #000000">anchor</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">target</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #0000ff">"_blank"</span>;<br />
<span style="COLOR: #000000">}</span><br />
<span style="COLOR: #000000">}</span><br />
<span style="COLOR: #000000">window</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">onload</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">externallinks</span>;</div>
</div>
<p>2、然后将 external.js 文件上传到主题根目录下，并用以下方式调用。</p>
<div class="source">
<div style="FONT-FAMILY: 'Courier New','Lucida Console','monospace'; COLOR: #000000"><span style="COLOR: #000080; FONT-WEIGHT: bold">&lt;script </span><span style="COLOR: #ff0000">type=</span><span style="COLOR: #0000ff">"text/javascript"</span> <span style="COLOR: #ff0000">src=</span><span style="COLOR: #0000ff">"</span><span style="COLOR: #008080">&lt;?php</span> <span style="COLOR: #000000">bloginfo</span>(<span style="COLOR: #0000ff">'template_directory'</span>); <span style="COLOR: #008080">?&gt;</span><span style="COLOR: #0000ff">/external.js"</span><span style="COLOR: #000080; FONT-WEIGHT: bold">&gt;&lt;/script&gt;</span></div>
</div>
<p><strong>方法二：用 target="_blank" 实现。</strong>（转自 荒野无灯，原址请见<a title="让wordpress评论者链接在新窗口中打开" rel="external nofollow" href="http://www.hacklog.cn/php/wordpress-comment-author-link-open-in-new-window.html" target="_blank">http://www.hacklog.cn/php/wordpress-comment-author-link-open-in-new-window.html</a>）</p>
<p>1、打开/wp-includes/comment-template.php，查找“function get_comment_author_link”。</p>
<p>2、在第148行（Wordpress 2.8.4，其他版本可参照）处添加 target='_blank'，如下：</p>
<div class="source">
<div style="FONT-FAMILY: 'Courier New','Lucida Console','monospace'; COLOR: #000000"><span style="COLOR: #000000">$return</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #0000ff">"&lt;a href='$url' target='_blank' rel='external nofollow' class='url'&gt;$author&lt;/a&gt;"</span>;</div>
</div>
<p>我现在用的是方法二，<a title="HackLOG" rel="external nofollow" href="http://www.hacklog.cn/" target="_blank">荒野无灯</a>的方法，效果可以点击下面的留言中评论者链接。</p>
<div id="rl_posts">    <div id="rl_posts_hd" class="box_hd">        <span id="rl_posts_title" class="box_title">与 <h2 itemprop="keywords"><a href="http://wange.im/tag/external/" title="external" rel="tag">external</a>,<a href="http://wange.im/tag/js/" title="JS" rel="tag">JS</a>,<a href="http://wange.im/tag/w3c/" title="W3C" rel="tag">W3C</a>,<a href="http://wange.im/tag/wordpress/" title="WordPress" rel="tag">WordPress</a>,<a href="http://wange.im/tag/leave-word/" title="留言" rel="tag">留言</a>,<a href="http://wange.im/tag/link/" title="链接" rel="tag">链接</a></h2> 相关的文章        </span>    </div>    <div id="rl_posts_bd">        <ul class="clearfix"><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/welcome-ooxx-back-in-wordpress.html" rel="bookmark" title="Wordpress 之欢迎 OOXX 归来">Wordpress 之欢迎 OOXX 归来</a>        <div class="rl_date">2011年01月19日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/remove-comments-url-in-wordpress.html" rel="bookmark" title="Wordpress 去掉评论中链接的方法">Wordpress 去掉评论中链接的方法</a>        <div class="rl_date">2010年07月8日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/nofollow.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="选择性地给链接加 nofollow 标签" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/add-nofollow-to-links-selectively.html" rel="bookmark" title="选择性地给链接加 nofollow 标签">选择性地给链接加 nofollow 标签</a>        <div class="rl_date">2010年01月17日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/hide-visitor-info-in-wordpress.html" rel="bookmark" title="记录并隐藏 Wordpress 评论者信息">记录并隐藏 Wordpress 评论者信息</a>        <div class="rl_date">2009年12月6日</div>    </div></li>        </ul>    </div></div>]]></content:encoded>
			<wfw:commentRss>http://wange.im/wordpress-comment-author-link-open-in-new-window.html/feed</wfw:commentRss>
		<slash:comments>170</slash:comments>
		</item>
		<item>
		<title>通过 W3C CSS v3.0 校验！</title>
		<link>http://wange.im/pass-w3c-css-v3.html</link>
		<comments>http://wange.im/pass-w3c-css-v3.html#comments</comments>
		<pubDate>Wed, 29 Jul 2009 12:20:06 +0000</pubDate>
		<dc:creator>万戈</dc:creator>
				<category><![CDATA[三言两语]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[W3C]]></category>

		<guid isPermaLink="false">http://wange.im/?p=1395</guid>
		<description><![CDATA[半个月前，我刚通过了 W3C CSS v2.1 的验证，今天我又通过了 W3C CSS v3.0 的验证，可喜可贺呀。 CSS 3.0 本就是建立在 CSS 2.1 的基础之上的，因为之前已经通过了 W3C CSS v2.1的校验，今天再去验证 W3C CSS v3.0，几乎不费吹灰之力就通过了。我只是在原来的 style.css 中的 h2 标签加了一个 text-shadow 的 CSS 3.0 的属性值而已，其他都没改动，用 Firefox 或者 Chrome 浏览器的朋友应该可以一睹这一属性的芳容，所有的日志标题都有了文字阴影的效果，看起来挺酷的吧。还在用 IE 浏览器的童鞋就没这福份了，因为 IE 暂不支持这一属性。 text-shadow 属性我早有耳闻，但是一直以来都没有看到过效果，也就没有直观的感受，也懒得去试验这个属性。今天正巧在Bronco的博客上看到博主使用的 text-shadow 吸引了我，firebug 了一下就挖过来了，其实用法很简单，转身就立马给自己的博客标题也加上了，看上去还不错，呵呵。 为了样式表中这唯一一个 CSS 3.0 的属性，我还特地去做了 W3C CSS v3.0 校验，果然顺利通过，和上次一样，贴图作个留念： 与 CSS,W3C 相关的文章 让浏览器的私有属性通过 W3C [...]]]></description>
			<content:encoded><![CDATA[<p>半个月前，我刚<a title="《通过 W3C CSS v2.1 校验！》" href="http://wange.im/pass-w3c-css-v21.html">通过了 W3C CSS v2.1 的验证</a>，今天我又通过了 W3C CSS v3.0 的验证，可喜可贺呀。</p>
<p>CSS 3.0 本就是建立在 CSS 2.1 的基础之上的，因为之前已经通过了 W3C CSS v2.1的校验，今天再去验证 W3C CSS v3.0，几乎不费吹灰之力就通过了。我只是在原来的 style.css 中的 h2 标签加了一个 text-shadow 的 CSS 3.0 的属性值而已，其他都没改动，用 Firefox 或者 Chrome 浏览器的朋友应该可以一睹这一属性的芳容，所有的日志标题都有了文字阴影的效果，看起来挺酷的吧。还在用 IE 浏览器的童鞋就没这福份了，因为 IE 暂不支持这一属性。</p>
<p>text-shadow 属性我早有耳闻，但是一直以来都没有看到过效果，也就没有直观的感受，也懒得去试验这个属性。今天正巧在<a title="信马由缰" rel="external nofollow" href="http://heybronco.net/" target="_blank">Bronco的博客</a>上看到博主使用的 text-shadow 吸引了我，firebug 了一下就挖过来了，其实用法很简单，转身就立马给自己的博客标题也加上了，看上去还不错，呵呵。</p>
<p>为了样式表中这唯一一个 CSS 3.0 的属性，我还特地去做了 W3C CSS v3.0 校验，果然顺利通过，和上次一样，贴图作个留念：</p>
<p style="text-align: center;"><img class="aligncenter" title="W3C CSS v3.0" src="http://wqwtia.bay.livefilestore.com/y1pBEvr3eVSB3ZGHj7cz9LjYaMVStsPX7QNXviAmgGethBLb9-LItQvgMeUwffEoMfVyhDyCDHGmiQfcYEem4P8Zg/w3c-css3.jpg" alt="" width="560" height="110" /></p>
<div id="rl_posts">    <div id="rl_posts_hd" class="box_hd">        <span id="rl_posts_title" class="box_title">与 <h2 itemprop="keywords"><a href="http://wange.im/tag/css/" title="CSS" rel="tag">CSS</a>,<a href="http://wange.im/tag/w3c/" title="W3C" rel="tag">W3C</a></h2> 相关的文章        </span>    </div>    <div id="rl_posts_bd">        <ul class="clearfix"><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/mood.jpg" alt="三言两语" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/private-property-checked-w3c-validation.html" rel="bookmark" title="让浏览器的私有属性通过 W3C 验证">让浏览器的私有属性通过 W3C 验证</a>        <div class="rl_date">2011年01月15日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/mood.jpg" alt="三言两语" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/div-css-and-ie.html" rel="bookmark" title="DIV+CSS与不同IE版本等的兼容性">DIV+CSS与不同IE版本等的兼容性</a>        <div class="rl_date">2010年01月31日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/mood.jpg" alt="三言两语" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/id-and-class-in-css.html" rel="bookmark" title="CSS 中 ID 与 Class 的区别及使用方法">CSS 中 ID 与 Class 的区别及使用方法</a>        <div class="rl_date">2010年01月21日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/w3c_css.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="通过 W3C CSS v2.1 校验！" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/pass-w3c-css-v21.html" rel="bookmark" title="通过 W3C CSS v2.1 校验！">通过 W3C CSS v2.1 校验！</a>        <div class="rl_date">2009年07月14日</div>    </div></li>        </ul>    </div></div>]]></content:encoded>
			<wfw:commentRss>http://wange.im/pass-w3c-css-v3.html/feed</wfw:commentRss>
		<slash:comments>34</slash:comments>
		</item>
		<item>
		<title>网站通过 W3C 标准的条件</title>
		<link>http://wange.im/w3c-standards.html</link>
		<comments>http://wange.im/w3c-standards.html#comments</comments>
		<pubDate>Wed, 15 Jul 2009 00:00:08 +0000</pubDate>
		<dc:creator>万戈</dc:creator>
				<category><![CDATA[电脑网络]]></category>
		<category><![CDATA[转来载去]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[优化]]></category>

		<guid isPermaLink="false">http://wange.im/?p=1361</guid>
		<description><![CDATA[由于我的 WordPress 偏执狂个性催使我将 WordPress 优化至完美。今天刚刚通过了 W3C CSS v2.1 的校验，我现在又在着手通过 W3C XHTML 的验证，在午夜大哥的提点下，W3C XHTML 总算肯验证我的 WordPress 页面了，之前一直显示“Sorry! This document can not be checked.”原来是因为自动截断中文时产生的乱码导致 W3C 标准无法识别。总算是打开了通向 W3C XHTML 标准的大门，不过我的首页有200+Errors，不是一般的多啊，吓了自己一跳。这里还是要再次感谢下午夜大哥，他还介绍给我一篇文章《网站通过W3C标准的条件》，转载过来方便以后自己对照着做。 网站通过W3C标准的条件需要注意以下几个问题： 1、XHTML 1.0文件类别宣告的正确写法 (不可小写) A:过度标准（Transitional） &#60;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&#62; B:框架标准（Frameset） &#60;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"&#62; C:严格标准（Strict） 包含以上须注意的问题,还有其他更严格的标准 &#60;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML [...]]]></description>
			<content:encoded><![CDATA[<p>由于我的 WordPress 偏执狂个性催使我将 WordPress 优化至完美。今天刚刚<a title="《通过 W3C CSS v2.1 校验！》" href="http://wange.im/pass-w3c-css-v21.html">通过了 W3C CSS v2.1 的校验</a>，我现在又在着手通过 W3C XHTML 的验证，在<a title="午夜WuYeah" rel="external nofollow" href="http://www.wuyeah.com/" target="_blank">午夜</a>大哥的提点下，W3C XHTML 总算肯验证我的 WordPress 页面了，之前一直显示“Sorry! This document can not be checked.”原来是因为自动截断中文时产生的乱码导致 W3C 标准无法识别。总算是打开了通向 W3C XHTML 标准的大门，不过我的首页有200+Errors，不是一般的多啊，吓了自己一跳。这里还是要再次感谢下<a title="午夜WuYeah" rel="external nofollow" href="http://www.wuyeah.com/" target="_blank">午夜</a>大哥，他还介绍给我一篇文章《网站通过W3C标准的条件》，转载过来方便以后自己对照着做。</p>
<p>网站通过W3C标准的条件需要注意以下几个问题：</p>
<p><strong>1、XHTML 1.0文件类别宣告的正确写法 (不可小写)</strong></p>
<p>A:过度标准（Transitional）</p>
<p><code>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;</code></p>
<p>B:框架标准（Frameset）</p>
<p><code>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"<br />
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"&gt;</code></p>
<p>C:严格标准（Strict）</p>
<p>包含以上须注意的问题,还有其他更严格的标准<br />
<code>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"<br />
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;</code></p>
<p><strong>2、头文件问题</strong></p>
<p>所有的网页头文件都一律都改为 W3C 标准形式，写法如下：</p>
<p><code>&lt;head&gt;<br />
&lt;meta http-equiv="content-type" content="text/html; charset=gb2312" /&gt;<br />
&lt;meta http-equiv="content-language" content="zh-cn" /&gt;<br />
&lt;meta name="keywords" content="..." /&gt;<br />
&lt;meta name="description" content="..."/&gt;<br />
&lt;title&gt;...&lt;/title&gt;<br />
&lt;/head&gt;</code></p>
<p><strong>3、不允许使用<code>target="_blank"</code></strong></p>
<p>在HTML4.01可以使用<code>target="_blank"</code>，但 XHTML1.0 是不被允许的。</p>
<p>比如原来这样写的代码：<code>&lt;a href="document.html" target="_blank"&gt; 打开一个新窗口&lt;/a&gt;</code></p>
<p>现在需要写成这样：<code>&lt;a href="document.html" rel="external"&gt;打开一个新窗口&lt;/a&gt;</code></p>
<p>这是符合 strict 标准的方法。当然还必须配合一个 javascript 才有效。</p>
<p>javascript 完整的代码 JS 如下:</p>
<p><code>function externallinks() {<br />
if (!document.getElementsByTagName) return;<br />
var anchors = document.getElementsByTagName("a");<br />
for (var i=0; i&lt;anchors.length; i++) {<br />
var anchor = anchors[i];<br />
if (anchor.getAttribute("href") &amp;&amp;<br />
anchor.getAttribute("rel") == "external")<br />
anchor.target = "_blank"; }<br />
}<br />
window.onload = externallinks; </code></p>
<p>然后把它保存成一个.js 文件(比如open.js)，再通过外部联接方法调用：</p>
<p><code>&lt;script type="text/javascript" src="external.js"&gt;&lt;/script&gt;</code></p>
<p><strong>4、XHTML 1.0 要求所有的标识必须关闭，所有没有成对的空标识必须以 /&gt; 结尾。</strong><code>&lt;p&gt;&lt;/p&gt;和&lt;a href="index.html"&gt;&lt;/a&gt;</code>这就是成对。</p>
<p>错误 <code>&lt;br&gt; &lt;hr&gt;</code>正确 <code>&lt;br /&gt; &lt;hr /&gt;</code></p>
<p>错误 <code>&lt;input type="text" name="name"&gt;</code>正确 <code>&lt;input type="text" name="name" /&gt;</code></p>
<p>错误 <code>&lt;meta ...&gt;</code>正确 <code>&lt;meta ... /&gt;</code></p>
<p>错误 <code>&lt;link rel="stylesheet" type="text/css" href="style.css"&gt;</code>正确 <code>&lt;link rel="stylesheet" type="text/css" href="style.css" /&gt;</code></p>
<p>错误 <code>&lt;img src="bg.gif" border="0" alt="说明文字"&gt;</code>正确 <code>&lt;img src="bg.gif" border="0" alt="说明文字" /&gt;</code> </p>
<p><strong>5、所有标识元素名称都使用小写</strong></p>
<p>错误 <code>&lt;HTML&gt; &lt;TITLE&gt; &lt;HEAD&gt; &lt;BODY&gt;</code>正确 <code>&lt;html&gt; &lt;title&gt; &lt;head&gt; &lt;body&gt;</code></p>
<p>错误 <code>&lt;IMG SRC="BG.GIF" BORDER="0" ALT="说明文字"&gt;</code>正确 <code>&lt;img src="bg.gif" border="0" alt="说明文字" /&gt;</code><br />
错误 <code>&lt;UL&gt;&lt;LI&gt;&lt;/LI&gt;&lt;/UL&gt;</code>正确 <code>&lt;ul&gt;&lt;li&gt;&lt;/li&gt;&lt;/ul&gt;</code></p>
<p>以上只是举例，是所有标签元素名称都必须是小写 </p>
<p><strong>6、同一个 id 选择器不可重复使用一个网页中 id="xx" 同一个选择器不能重复使用，若需要重复请用 class="xx"</strong></p>
<p><strong>7、W3C标准标识必须是成对的 </strong></p>
<p><code>&lt;p&gt; &lt;/p&gt; &lt;span&gt;&lt;/span&gt; &lt;div&gt;&lt;/div&gt;</code></p>
<p><strong>8、正确的标识顺序 </strong></p>
<p>错误 <code>&lt;b&gt;&lt;i&gt;文字&lt;/b&gt;&lt;/i&gt;</code><br />
正确 <code>&lt;b&gt;&lt;i&gt;文字&lt;/i&gt;&lt;/b&gt;</code></p>
<p><strong>9、JS 写法</strong></p>
<p>Javascript 我们通常会写为：错误 <code>&lt;script language="javascript"&gt;</code></p>
<p>W3C标准必须为程式指定类型type=text/javascript,所以要写为：正确 <code>&lt;script type="text/javascript"&gt;</code><br />
或者 <code>&lt;script language="javascript" type="text/javascript"&gt;</code></p>
<p>载入外部.js：</p>
<p>正确 <code>&lt;script type="text/javascript" src="script.js"&gt;&lt;/script&gt; </code></p>
<p><strong>10、绝对不可省略双引号或单引号</strong></p>
<p>错误 <code>style=font-size:9pt</code>正确 <code>style="font-size:9pt"</code></p>
<p>错误 <code>&lt;img src=bg.gif width=140 height=30 alt=text /&gt;</code>正确 <code>&lt;img src="bg.gif" width="140" height="30" alt="text" /&gt;</code></p>
<p>错误 <code>&lt;a href=home&gt;text&lt;/a&gt;</code>正确 <code>&lt;a href="home"&gt;text&lt;/a&gt;</code></p>
<p><strong>11、W3C 标准规定图片标识加上文字说明 alt="图片说明"</strong></p>
<p>错误 <code>&lt;img src="bg.gif" height="50" border="0" /&gt;</code>正确 <code>&lt;img src="bg.gif" height="50" border="0" alt="说明文字" /&gt; </code></p>
<p><strong>12、背景音乐不允许使用 bgsound 标签，不过我们依然可以用 JavaScript 来解决这个问题。js 代码如下：</strong></p>
<p><code>&lt;!-- Begin<br />
var MSIE=navigator.userAgent.indexOf("MSIE");<br />
var NETS=navigator.userAgent.indexOf("Netscape");<br />
var OPER=navigator.userAgent.indexOf("Opera");<br />
if((MSIE&gt;-1) || (OPER&gt;-1)) {<br />
document.write("&lt;BGSOUND SRC=背景音乐地址 LOOP=INFINITE&gt;");<br />
} else {<br />
document.write("&lt;EMBED SRC=背景音乐地址 AUTOSTART=TRUE ");<br />
document.write("HIDDEN=true VOLUME=100 LOOP=TRUE&gt;");<br />
}<br />
// end --&gt;</code>然后保存成.js文件(比如background_music.js)，通过外部联接方法调用它</p>
<p><strong>13<code>、&lt;embed&gt;</code>标识的争议</strong></p>
<p><code>&lt;embed&gt;</code>是Netscape的私有标识，W3C 标准从 HTML3.2  HTML 4.01 到 XHTML 1.0 中都没有这个标识，所以使用<code>&lt;embed&gt;</code>的页面是不能通过标准测试。</p>
<p>W3C标准推荐使用 <code>&lt;object&gt;</code> 标识,用 <code>&lt;object&gt;</code> 插入 flash 影片的代码可以写为:</p>
<p><code>&lt;object type="application/x-shockwave-flash" data="index.swf" width="400" height="200"&gt;<br />
&lt;param name="movie" value="index.swf" /&gt;<br />
&lt;/object&gt; </code></p>
<p>但这样的写法可能 IE5/IE6 Win 浏览器版本会出现问题。<code>&lt;embed&gt;</code>标识因为广大的受到运用，不再标准范围引起很大的争议，想要解决这个问题，只能等IE浏览器对 <code>&lt;object&gt; </code>有更好的支持或者 W3C 愿意收录 <code>&lt;embed&gt; </code>标识。</p>
<p><strong>14、 W3C标准规定不允许使用框架标签<code>&lt;IFRAME&gt;</code></strong></p>
<p>用 JavaScript 解决问题了。javascript 完整的代码如下：</p>
<p><code>function ifr(url,w,h){document.write(’&lt;iframe id="ifr" name="ifr" width="’+w+’" height="’+h+’" border="0" frameborder="0" scrolling="no" src="’+url+’"&gt;&lt;/iframe&gt;’);} 然后把它保存成一个.js文件(比如iframe.js)，然后通过外部联接方法调用：&lt;script type="text/javascript" src="ifr.js"&gt;&lt;/script&gt; 在你需要插入框架的地方写以下代码即可：&lt;script type="text/javascript"&gt;ifr(’需插入的网页地址’,’567’,’485’);&lt;/script&gt;</code>  函数ifr()使用说明：ifr(’这里写地址’,’这里写宽度’,’这里写长度’,)</p>
<p><strong>15、google广告问题</strong></p>
<p>google 广告的代码是不符合 W3C 标准的，只好又把它转成 JS 调用，但 GOOGLE 政策里是写着不允许修改代码的，关于这点只能等待看看在以后会有什么修改了。JS文件(google.js)代码如下：</p>
<p><code>document.writeln("&lt;script type="text/javascript"&gt;&lt;!--");<br />
document.writeln("google_ad_client = "pub-0538745384335317";");<br />
document.writeln("google_ad_width = 125;");<br />
document.writeln("google_ad_height = 125;");<br />
document.writeln("google_ad_format = "125x125_as";");<br />
document.writeln("google_ad_type = "text_image";");<br />
document.writeln("//2007-06-29: http://www.100byte.com/");<br />
document.writeln("google_ad_channel = "4751988107";");<br />
document.writeln("google_color_border = "1a1a1a";");<br />
document.writeln("google_color_bg = "1a1a1a";");<br />
document.writeln("google_color_link = "d0eb6a";");<br />
document.writeln("google_color_text = "ffffff";");<br />
document.writeln("google_color_url = "8ad459";");<br />
document.writeln("google_ui_features = "rc:6";");<br />
document.writeln("//--&gt;");<br />
document.writeln("&lt;/script&gt;");<br />
document.writeln("&lt;script type="text/javascript"");<br />
document.writeln(" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;");<br />
document.writeln("&lt;/script&gt;")</code> </p>
<p>各位可以按照自己的情况修改，网上也有许多把 HTML 代码转为 JS 代码的地方。最后在需要挂广告的地方放入代码 <code>&lt;script type="text/javascript" src="google.js"&gt;&lt;/script&gt;</code></p>
<p><strong>16、W3C 标准注解文字不可包含--符号</strong></p>
<p>错误 <code>&lt;!-- index--box --&gt;</code>正确 <code>&lt;!-- indexbox --&gt;</code></p>
<p>小贴士：在样式表的注释中注意尽量避免用中文</p>
<p><strong>17、正确使用 CSS 样式表</strong></p>
<p>样式表放在文件本身的时候，一定要放在<code>&lt;head&gt;&lt;/head&gt;</code>之间</p>
<p><code>&lt;link rel="stylesheet" type="text/css" href="style.css" /&gt;<br />
&lt;style type="text/css"&gt;<br />
&lt;!--<br />
body{font-size:9pt;}<br />
--&gt;<br />
&lt;/style&gt;</code> </p>
<p>注意：<br />
错误 <code>&lt;style&gt;</code>正确 <code>&lt;style type="text/css"&gt;</code></p>
<p><strong>18、使用表格常犯的错误</strong></p>
<p>在做表格通常会指定宽与高，例如:<code>&lt;table border="1" width="300" height="100"&gt;<br />
&lt;tr&gt;&lt;td&gt; 内容 &lt;/td&gt;&lt;/tr&gt;<br />
&lt;/table&gt; </code>这样做是没有办法通过,可使用CSS来控制标识元素的高度<code>.table{ height:100px; }&lt;table&gt;&lt;tr&gt;&lt;td&gt; TEXT &lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; </code>但若使用太多表格,在CSS一一指定不同高,也不是好方法其实很简单将高度 height 属性指定在储存格就可以了通过测试<br />
<code>&lt;table border="0" width="300"&gt; &lt;tr&gt;&lt;td height="100"&gt; TEXT &lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; </code>但这不是W3C标准,建议多使用div代替不必要的 table</p>
<p><strong>19、非标识一部分的符号以编码表示(窗体内包含以下符号也必须用编码表示)</strong></p>
<p>&lt; 以 &amp;lt; 表示<br />
&gt; 以 &amp;gt; 表示<br />
&amp; 以 &amp;amp; 表示<br />
程序中的连结 &amp; 也要改用 &amp;amp;<br />
错误 <code>&lt;a href="foo.cgi?chapter=1&amp;section=2"&gt;</code><br />
正确 <code>&lt;a href="foo.cgi?chapter=1&amp;amp;section=2"&gt; </code></p>
<p><strong>20、所有属性都必须有值</strong></p>
<p>XHTML1.0 规定所有属性都必须有值, 若没有就必须重复属性作为值</p>
<p>错误 <code>&lt;input type="radio" value="v1" checked name="s1" /&gt;</code><br />
正确 <code>&lt;input type="radio" value="v1" checked="checked" name="s1" /&gt;</code><br />
错误 <code>&lt;option selected&gt;S1&lt;/option&gt;</code><br />
正确 <code>&lt;option selected="selected"&gt;S1&lt;/option&gt;</code><br />
错误 <code>&lt;td nowrap&gt;</code><br />
正确 <code>&lt;td nowrap="nowrap"&gt;</code></p>
<p>本文转自：http://www.yeskp.cn/Newcontents/34.html</p>
<div id="rl_posts">    <div id="rl_posts_hd" class="box_hd">        <span id="rl_posts_title" class="box_title">与 <h2 itemprop="keywords"><a href="http://wange.im/tag/w3c/" title="W3C" rel="tag">W3C</a>,<a href="http://wange.im/tag/optimize/" title="优化" rel="tag">优化</a></h2> 相关的文章        </span>    </div>    <div id="rl_posts_bd">        <ul class="clearfix"><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/w3c_css.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="通过 W3C CSS v2.1 校验！" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/pass-w3c-css-v21.html" rel="bookmark" title="通过 W3C CSS v2.1 校验！">通过 W3C CSS v2.1 校验！</a>        <div class="rl_date">2009年07月14日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/timthumb.php?src=http://wange.im/cache/javascript.jpg&amp;h=45&amp;w=45&amp;zc=1" alt="拥抱 HTML5，前端的盛会" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/w3ctech-hug-html5.html" rel="bookmark" title="拥抱 HTML5，前端的盛会">拥抱 HTML5，前端的盛会</a>        <div class="rl_date">2011年04月16日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/w3c-is-in-progress.html" rel="bookmark" title="W3C 规则也在与时俱进？！">W3C 规则也在与时俱进？！</a>        <div class="rl_date">2011年01月22日</div>    </div></li><li>    <div class="rl_thumb"><img src="http://wange.im/wp-content/themes/wange/imgs/category/computer.jpg" alt="电脑网络" width="45" height="45" itemprop="thumbnailUrl" />    </div>    <div class="rl_title">        <a href="http://wange.im/private-property-checked-w3c-validation.html" rel="bookmark" title="让浏览器的私有属性通过 W3C 验证">让浏览器的私有属性通过 W3C 验证</a>        <div class="rl_date">2011年01月15日</div>    </div></li>        </ul>    </div></div>]]></content:encoded>
			<wfw:commentRss>http://wange.im/w3c-standards.html/feed</wfw:commentRss>
		<slash:comments>37</slash:comments>
		</item>
	</channel>
</rss>

