<?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>上海SEO &#187; 上海SEO 网站制作</title>
	<atom:link href="http://www.seoweb-sh.com/category/web/feed" rel="self" type="application/rss+xml" />
	<link>http://www.seoweb-sh.com</link>
	<description>上海地区SEO行业专业服务团队,为公司与企业网站提供优质全方位的网站优化,SEO培训,网站设计,网站制作服务。SEO咨询电话：15921222870</description>
	<lastBuildDate>Thu, 29 Jul 2010 00:46:54 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>最简单网页变灰代码，网页变灰CSS（一句代码）</title>
		<link>http://www.seoweb-sh.com/1454.html</link>
		<comments>http://www.seoweb-sh.com/1454.html#comments</comments>
		<pubDate>Wed, 21 Apr 2010 01:02:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[DIV/CSS]]></category>
		<category><![CDATA[最简单网页变灰的方法]]></category>
		<category><![CDATA[网页变灰CSS]]></category>
		<category><![CDATA[网页变灰代码]]></category>

		<guid isPermaLink="false">http://www.seoweb-sh.com/?p=1454</guid>
		<description><![CDATA[以下为全站CSS代码。html { filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); } 
使用方法：这段代码可以变网页为黑白，将代码加到CSS最顶端就可以实现素装。建议全国站长动起来。为在地震中遇难的同胞哀悼。 
如果网站没有使用CSS，可以在网页/模板的HTML代码&#60;head&#62;和&#60;/head&#62; 之间插入： 
&#60;style&#62; 
html{filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);} 
&#60;/style&#62; 
有一些站长的网站可能使用这个css 不能生效，是因为网站没有使用最新的网页标准协议 
&#60;!DOCTYPE html PUBLIC &#8221;-//W3C//DTD XHTML 1.0 Transitional//EN&#8221; &#8221;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&#8220;&#62; 
&#60;html xmlns=&#8221;http://www.w3.org/1999/xhtml&#8220;&#62; 
请将网页最头部的&#60;html&#62;替换为以上代码。 
有一些网站FLASH动画的颜色不能被CSS滤镜控制，可以在FLASH代码的&#60;object …&#62;和&#60;/object&#62;之间插入： 
&#60;param value=&#8221;false&#8221; name=&#8221;menu&#8221;/&#62; 
&#60;param value=&#8221;opaque&#8221; name=&#8221;wmode&#8221;/&#62; 
最简单的把页面变成灰色的代码是在head 之间加 
&#60;style type=&#8221;text/css&#8221;&#62; 
html { 
FILTER: gray 
} 
&#60;/style&#62; 
一般的discuz论坛在 你的控制css 文件下修改 
/images/header/header.css 这个文件
]]></description>
			<content:encoded><![CDATA[<p>以下为全站CSS代码。html { filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); } </p>
<p>使用方法：这段代码可以变网页为黑白，将代码加到CSS最顶端就可以实现素装。建议全国站长动起来。为在地震中遇难的同胞哀悼。 </p>
<p>如果网站没有使用CSS，可以在网页/模板的HTML代码&lt;head&gt;和&lt;/head&gt; 之间插入： </p>
<p>&lt;style&gt; <br />
html{filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);} <br />
&lt;/style&gt; </p>
<p>有一些站长的网站可能使用这个css 不能生效，是因为网站没有使用最新的网页标准协议 </p>
<p>&lt;!DOCTYPE html PUBLIC &#8221;-//W3C//DTD XHTML 1.0 Transitional//EN&#8221; &#8221;<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" target="_blank">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</a>&#8220;&gt; <br />
&lt;html xmlns=&#8221;<a href="http://www.w3.org/1999/xhtml" target="_blank">http://www.w3.org/1999/xhtml</a>&#8220;&gt; </p>
<p>请将网页最头部的&lt;html&gt;替换为以上代码。 </p>
<p>有一些网站FLASH动画的颜色不能被CSS滤镜控制，可以在FLASH代码的&lt;object …&gt;和&lt;/object&gt;之间插入： <br />
&lt;param value=&#8221;false&#8221; name=&#8221;menu&#8221;/&gt; <br />
&lt;param value=&#8221;opaque&#8221; name=&#8221;wmode&#8221;/&gt; </p>
<p>最简单的把页面变成灰色的代码是在head 之间加 <br />
&lt;style type=&#8221;text/css&#8221;&gt; </p>
<p>html { <br />
FILTER: gray <br />
} <br />
&lt;/style&gt; </p>
<p>一般的discuz论坛在 你的控制css 文件下修改 <br />
/images/header/header.css 这个文件</p>
]]></content:encoded>
			<wfw:commentRss>http://www.seoweb-sh.com/1454.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>挥别8年竞价历史 Baidu凤巢系统全面上线</title>
		<link>http://www.seoweb-sh.com/1057.html</link>
		<comments>http://www.seoweb-sh.com/1057.html#comments</comments>
		<pubDate>Thu, 03 Dec 2009 07:58:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Flash SEO优化]]></category>
		<category><![CDATA[百度，凤巢系统]]></category>

		<guid isPermaLink="false">http://www.seoweb-sh.com/?p=1057</guid>
		<description><![CDATA[　　12月1日-12月6日是百度全面启用搜索营销专业版(即凤巢系统)。简单的来说，左测排名保持最上方三条和最下方三条，和现有google 版面一样。
　　以竞价排名为主的网络营销是百度最重要的收入来源，今年第三季度百度总营业收入为12.787亿人民币，其中来自网络营销的收入为12.782亿元人民币，比重已接近100%。不过竞价排名在为百度创收的同时，也一度带来负面影响。
　　2008年底，百度CEO李彦宏首度向外界透露，将推出专业版搜索营销系统凤巢，以解决普通搜索和竞价排名搜索结果混淆的问题。今年百度发布第三季财报时，李彦宏正式对外公布将于12月1日全面向凤巢系统切换。
　　百度商业产品重大更新
　　在原竞价排名的机制下，百度将普通的搜索结果和竞价排名的搜索结果排列在一起，仅在相关搜索结果的右下角以“推广”二字标出；另外在一个搜索结果页面上最多可能出现十条竞价排名内容，并且排列在最上面，容易造成用户使用的不便。
　　启用凤巢之后，百度将搜索页面的广告位分为左上、左下、右侧三个部分，其中变化最大的就是左侧的广告位和表现形式。
　　在新的凤巢系统下，百度在普通搜索结果的最上方和最下方分别开辟了两个广告区域，以较深的底色、并在右上角标注“推广链接”字样等方式，同普通的搜索结果内容进行显著的区隔，并且每个区域的推广链接一般不会超过三条。
　　不过，如果推广信息和用户的搜索结果匹配度非常高，百度仍将沿用原竞价排名采用的“推广”模式。如果达不到相关的标准，就会以新的方式予以展现。
　　除了外在的表现形式，凤巢和竞价排名在结构方面也有了明显的变化。百度方面透露，此前竞价排名的结构方式为“推广平台-关键词组-关键词A……N-单一创意”，而在凤巢系统下这一结构变为“推广平台-推广计划-推广单元-关键词对应创意”。
　　对于上述变化，百度商业运营副总裁沈晧瑜指出凤巢能够针对不同产品线、不同的推广战役、不同的地域市场，带来面向不同推广目标的精细化管理模式。“凤巢是百度商业产品的一次重大更新”。
]]></description>
			<content:encoded><![CDATA[<p>　　12月1日-12月6日是百度全面启用搜索营销专业版(即凤巢系统)。简单的来说，左测排名保持最上方三条和最下方三条，和现有google 版面一样。</p>
<p>　　以竞价排名为主的网络营销是百度最重要的收入来源，今年第三季度百度总营业收入为12.787亿人民币，其中来自网络营销的收入为12.782亿元人民币，比重已接近100%。不过竞价排名在为百度创收的同时，也一度带来负面影响。<span id="more-1057"></span></p>
<p>　　2008年底，百度CEO李彦宏首度向外界透露，将推出专业版搜索营销系统凤巢，以解决普通搜索和竞价排名搜索结果混淆的问题。今年百度发布第三季财报时，李彦宏正式对外公布将于12月1日全面向凤巢系统切换。</p>
<p>　　<strong>百度商业产品重大更新</strong></p>
<p>　　在原竞价排名的机制下，百度将普通的搜索结果和竞价排名的搜索结果排列在一起，仅在相关搜索结果的右下角以“推广”二字标出；另外在一个搜索结果页面上最多可能出现十条竞价排名内容，并且排列在最上面，容易造成用户使用的不便。</p>
<p>　　启用凤巢之后，百度将搜索页面的广告位分为左上、左下、右侧三个部分，其中变化最大的就是左侧的广告位和表现形式。</p>
<p>　　在新的凤巢系统下，百度在普通搜索结果的最上方和最下方分别开辟了两个广告区域，以较深的底色、并在右上角标注“推广链接”字样等方式，同普通的搜索结果内容进行显著的区隔，并且每个区域的推广链接一般不会超过三条。</p>
<p>　　不过，如果推广信息和用户的搜索结果匹配度非常高，百度仍将沿用原竞价排名采用的“推广”模式。如果达不到相关的标准，就会以新的方式予以展现。</p>
<p>　　除了外在的表现形式，凤巢和竞价排名在结构方面也有了明显的变化。百度方面透露，此前竞价排名的结构方式为“推广平台-关键词组-关键词A……N-单一创意”，而在凤巢系统下这一结构变为“推广平台-推广计划-推广单元-关键词对应创意”。</p>
<p>　　对于上述变化，百度商业运营副总裁沈晧瑜指出凤巢能够针对不同产品线、不同的推广战役、不同的地域市场，带来面向不同推广目标的精细化管理模式。“凤巢是百度商业产品的一次重大更新”。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.seoweb-sh.com/1057.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>针对语言或地区选择器的SEO解决方案</title>
		<link>http://www.seoweb-sh.com/1038.html</link>
		<comments>http://www.seoweb-sh.com/1038.html#comments</comments>
		<pubDate>Tue, 17 Nov 2009 02:21:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[上海SEO网站成功案例]]></category>
		<category><![CDATA[区域SEO]]></category>
		<category><![CDATA[语言SEO]]></category>

		<guid isPermaLink="false">http://www.seoweb-sh.com/?p=1038</guid>
		<description><![CDATA[你的大品牌网站终于得到了回报，吸引了大量的关键词查询。你的网站获得了国际性的流量，则你需要确保用户能获得适当的内容，而不要牺牲你建立的SEO.
今天，我们讨论全球性或是语言选择器背后的意图。这一问题可能会引起你的SEO宣传活动，语言选择器的替代品。如果你只是无法消除它，最终会有 最佳实践来执行。为了完成本专栏的目的，你的网站必须是英文版本的，但不论你身处何地，你的网站是什么类型的，相同的原则都是适应的。
全球性品牌经常需要网站或是内容要针对特定地区或操某种语言的用户。本专栏的目的不是对此进行辩论，而是研究最有效的办法为用户提供替代内容。
第一，要解决一款出色的语言选择器来帮助你建立网站用户群。需要考虑以下因素：
当你在本土以外的地区搜索你的品牌诸如谷歌法国或是雅虎阿根廷，特定地区内容是否显示或者在搜索结果网页附近？如果是，你可能需要在主页上放一个语言选择器，因为需要替代内容的用户可能已自动获得这些内容。
你的主要域名的作用是什么？诸如宝马、可口可乐和本田等基本上是把直接流量导向正确儿童网站的门户。你现有流量的语言细目分类是什么？如果80%到90%的流量来自你的你的本土或是主网站语言区，是否需要一个出色的语言选择器？
最后一个问题有点难度。你可以说，如果有80―90%的流量集中在一个地区，一个出色的语言选择器可能会帮助流量的多元化。
如果你把主页的大部分用于语言地区选择，你可能会面临失去部分SEO资产的风险。
第一，你的Sitelinks质量可能会面临危险。要知道Sitelinks的两 大主要功能：提供深度内部内容的快速接入，确保消费有价值的SERP资产，让竞争对手减少网页。分析一下谷歌搜索引擎对可乐的查询。网站的架构提供其8个 Sitelinks，其中8个指向不同的国际内容门户。
这是可乐想要的，但是否是你想要的？
第二，你可能盗用了你的主页的权威性。任何链接到你的主页的网页都是重要的。设想一下，有大量的链接指向你的主页，然后决定你想如何区分并冲淡其中国际门户网页的权威性。你的国际主页是否应该分享，或者他们会象国际主页一样会产生自己的权威性？
在回答这个问题前，先来分析一下你的分析工具，看有多少用户目前使用你的Sitelinks.在测试中，我针对多外网站运行。我发现有 20－35%的用户点击其中的8个Sitelinks，并直接引向深度产品和服务内容。如果只有Sitelinks选择是 来自不同地区的内容，他们是否会如此做？
最好的办法是在网页上设置一个地区语言选择器，如此，你就可以轻松地从主页找到内容。一般来说，这是一个标题链接，用户可以从任何网页接触。这 给用户找到适合自己内容的方便机会，但它不会给你的主要增加大量或是更多的链接。如果这种架构影响你的Sitelinks，它只会增加链接到选择器网页的 链接。
尽管每个问题都讨论了，你可能还没有重要的选择。你的指示可能是，“开发一个语言选择器，让它成为用户第一个看到的东西，保持它与SEO的友好关系。”这个任务很艰巨，但不是不可能。要记住以下方法：
――在主页上建立一个传统的导航计划，可以对核心地区的内容进行深度链接。换句话说，要确保你的左边或是顶部的导航计划的完整性，这样，搜索引擎就可以 从根部索引重要的网页。
――在JavaScript中编写语言选择器，这样，搜索引擎就会不可能多次地索引链接。
除了语言选择器，要考虑阅读你的用户IP地址，并自动地向用户发送根据他们的IP地址确定的针对特定地区的内容。从搜索引擎的角度看，这不但有效而且完全可以接受，因为它有时就是搜索引擎的做法。
第三，我意识到你可以在谷歌站点管理工具中调整并封锁特定的Sitelinks.因此，它可以很容易地进行封锁。但最为重要的是，没有调整重要架构因素时，谷歌可以选择取代你的封锁链接。
]]></description>
			<content:encoded><![CDATA[<p>你的大品牌网站终于得到了回报，吸引了大量的关键词查询。你的网站获得了国际性的流量，则你需要确保用户能获得适当的内容，而不要牺牲你建立的<a href="http://www.seoweb-sh.com/">SEO</a>.</p>
<p>今天，我们讨论全球性或是语言选择器背后的意图。这一问题可能会引起你的SEO宣传活动，语言选择器的替代品。如果你只是无法消除它，最终会有 最佳实践来执行。为了完成本专栏的目的，你的网站必须是英文版本的，但不论你身处何地，你的网站是什么类型的，相同的原则都是适应的。<span id="more-1038"></span></p>
<p>全球性品牌经常需要网站或是内容要针对特定地区或操某种语言的用户。本专栏的目的不是对此进行辩论，而是研究最有效的办法为用户提供替代内容。</p>
<p>第一，要解决一款出色的语言选择器来帮助你建立网站用户群。需要考虑以下因素：</p>
<p>当你在本土以外的地区搜索你的品牌诸如谷歌法国或是雅虎阿根廷，特定地区内容是否显示或者在搜索结果网页附近？如果是，你可能需要在主页上放一个语言选择器，因为需要替代内容的用户可能已自动获得这些内容。</p>
<p>你的主要域名的作用是什么？诸如宝马、可口可乐和本田等基本上是把直接流量导向正确儿童网站的门户。你现有流量的语言细目分类是什么？如果80%到90%的流量来自你的你的本土或是主网站语言区，是否需要一个出色的语言选择器？</p>
<p>最后一个问题有点难度。你可以说，如果有80―90%的流量集中在一个地区，一个出色的语言选择器可能会帮助流量的多元化。</p>
<p>如果你把主页的大部分用于语言地区选择，你可能会面临失去部分SEO资产的风险。</p>
<p>第一，你的Sitelinks质量可能会面临危险。要知道Sitelinks的两 大主要功能：提供深度内部内容的快速接入，确保消费有价值的SERP资产，让竞争对手减少网页。分析一下谷歌搜索引擎对可乐的查询。网站的架构提供其8个 Sitelinks，其中8个指向不同的国际内容门户。</p>
<p>这是可乐想要的，但是否是你想要的？</p>
<p>第二，你可能盗用了你的主页的权威性。任何链接到你的主页的网页都是重要的。设想一下，有大量的链接指向你的主页，然后决定你想如何区分并冲淡其中国际门户网页的权威性。你的国际主页是否应该分享，或者他们会象国际主页一样会产生自己的权威性？</p>
<p>在回答这个问题前，先来分析一下你的分析工具，看有多少用户目前使用你的Sitelinks.在测试中，我针对多外网站运行。我发现有 20－35%的用户点击其中的8个Sitelinks，并直接引向深度产品和服务内容。如果只有Sitelinks选择是 来自不同地区的内容，他们是否会如此做？</p>
<p>最好的办法是在网页上设置一个地区语言选择器，如此，你就可以轻松地从主页找到内容。一般来说，这是一个标题链接，用户可以从任何网页接触。这 给用户找到适合自己内容的方便机会，但它不会给你的主要增加大量或是更多的链接。如果这种架构影响你的Sitelinks，它只会增加链接到选择器网页的 链接。</p>
<p>尽管每个问题都讨论了，你可能还没有重要的选择。你的指示可能是，“开发一个语言选择器，让它成为用户第一个看到的东西，保持它与SEO的友好关系。”这个任务很艰巨，但不是不可能。要记住以下方法：</p>
<p>――在主页上建立一个传统的导航计划，可以对核心地区的内容进行深度链接。换句话说，要确保你的左边或是顶部的导航计划的完整性，这样，搜索引擎就可以 从根部索引重要的网页。</p>
<p>――在JavaScript中编写语言选择器，这样，搜索引擎就会不可能多次地索引链接。</p>
<p>除了语言选择器，要考虑阅读你的用户IP地址，并自动地向用户发送根据他们的IP地址确定的针对特定地区的内容。从搜索引擎的角度看，这不但有效而且完全可以接受，因为它有时就是搜索引擎的做法。</p>
<p>第三，我意识到你可以在谷歌站点管理工具中调整并封锁特定的Sitelinks.因此，它可以很容易地进行封锁。但最为重要的是，没有调整重要架构因素时，谷歌可以选择取代你的封锁链接。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.seoweb-sh.com/1038.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML兼容总结</title>
		<link>http://www.seoweb-sh.com/1032.html</link>
		<comments>http://www.seoweb-sh.com/1032.html#comments</comments>
		<pubDate>Tue, 10 Nov 2009 01:24:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[DIV/CSS]]></category>
		<category><![CDATA[CSS兼容]]></category>
		<category><![CDATA[html兼容]]></category>
		<category><![CDATA[浏览器兼容]]></category>

		<guid isPermaLink="false">http://www.seoweb-sh.com/?p=1032</guid>
		<description><![CDATA[接触DIV+CSS架构已经快两年了，个人觉得css入门不难，但要学精并非一朝一夕的，现在大部分网络公司都比较主张用div+css来布局，这就面临着一个比较难的问题——浏览器的兼容性。
下面整理了一下相关的兼容问题，希望大家再在其基础上补充！
所有浏览器 通用 （市面上主要用到的IE6 IE7 FF）
height: 100px;

IE6 专用
_height: 100px;
IE6 专用
*height: 100px;
IE7 专用
*+height: 100px;
IE7、FF 共用
height: 100px !important;
一、CSS 兼容
以下两种方法几乎能解决现今所有兼容.
1, !important (不是很推荐，用下面的一种感觉最安全)
随着IE7对!important的支持, !important 方法现在只针对IE6的兼容.(注意写法.记得该声明位置需要提前.)
代码:
&#60;style&#62;
#wrapper {
width: 100px!important; /* IE7+FF */
width: 80px; /* IE6 */
}
&#60;/style&#62;
2, IE6/IE77对FireFox &#60;from 针对firefox ie6 ie7的css样式&#62;
*+html 与 *html 是IE特有的标签, firefox 暂不支持.而*+html 又为 IE7特有标签.
代码:
&#60;style&#62;
#wrapper { width: 120px; } /* FireFox */
*html #wrapper { width: 80px;} /* ie6 fixed [...]]]></description>
			<content:encoded><![CDATA[<p>接触DIV+CSS架构已经快两年了，个人觉得css入门不难，但要学精并非一朝一夕的，现在大部分网络公司都比较主张用div+css来布局，这就面临着一个比较难的问题——浏览器的兼容性。<br />
下面整理了一下相关的兼容问题，希望大家再在其基础上补充！<br />
所有浏览器 通用 （市面上主要用到的IE6 IE7 FF）<br />
height: 100px;<br />
<span id="more-1032"></span><br />
IE6 专用<br />
_height: 100px;</p>
<p>IE6 专用<br />
*height: 100px;</p>
<p>IE7 专用<br />
*+height: 100px;</p>
<p>IE7、FF 共用<br />
height: 100px !important;<br />
一、CSS 兼容<br />
以下两种方法几乎能解决现今所有兼容.</p>
<p>1, !important (不是很推荐，用下面的一种感觉最安全)</p>
<p>随着IE7对!important的支持, !important 方法现在只针对IE6的兼容.(注意写法.记得该声明位置需要提前.)</p>
<p>代码:<br />
&lt;style&gt;<br />
#wrapper {<br />
width: 100px!important; /* IE7+FF */<br />
width: 80px; /* IE6 */<br />
}<br />
&lt;/style&gt;</p>
<p>2, IE6/IE77对FireFox &lt;from 针对firefox ie6 ie7的css样式&gt;</p>
<p>*+html 与 *html 是IE特有的标签, firefox 暂不支持.而*+html 又为 IE7特有标签.</p>
<p>代码:<br />
&lt;style&gt;<br />
#wrapper { width: 120px; } /* FireFox */<br />
*html #wrapper { width: 80px;} /* ie6 fixed */<br />
*+html #wrapper { width: 60px;} /* ie7 fixed, 注意顺序 */<br />
&lt;/style&gt;</p>
<p>注意:<br />
*+html 对IE7的兼容 必须保证HTML顶部有如下声明：</p>
<p>代码:<br />
&lt;!DOCTYPE HTML PUBLIC &#8220;-//W3C//DTD HTML 4.01 Transitional//EN&#8221;　&#8221;<a href="http://www.w3.org/TR/html4/loose.dtd">http://www.w3.org/TR/html4/loose.dtd</a>&#8220;&gt;</p>
<p>二、万能 float 闭合(非常重要!) 可以用这个解决多个div对齐时的间距不对，</p>
<p>关于 clear float 的原理可参见 [How To Clear Floats Without Structural Markup]<br />
将以下代码加入Global CSS 中,给需要闭合的div加上 class=”clearfix” 即可,屡试不爽.</p>
<p>代码:<br />
&lt;style&gt;<br />
/* Clear Fix */<br />
.clearfix:after {<br />
content:&#8221;.&#8221;;<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>三、其他兼容技巧(相当有用)</p>
<p>1, FF下给 div 设置 padding 后会导致 width 和 height 增加, 但IE不会.(可用!important解决)<br />
2, 居中问题.<br />
1).垂直居中.将 line-height 设置为 当前 div 相同的高度, 再通过 vetical-align: middle.( 注意内容不要换行.)<br />
2).水平居中. margin: 0 auto;(当然不是万能)<br />
3, 若需给 a 标签内内容加上 样式, 需要设置 display: block;(常见于导航标签)<br />
4, FF 和 IE 对 BOX 理解的差异导致相差 2px 的还有设为 float的div在ie下 margin加倍等问题.<br />
5, ul 标签在 FF 下面默认有 list-style 和 padding . 最好事先声明, 以避免不必要的麻烦. (常见于导航标签和内容列表)<br />
6, 作为外部 wrapper 的 div 不要定死高度, 最好还加上 overflow: hidden.以达到高度自适应.<br />
7, 关于手形光标. cursor: pointer. 而hand 只适用于 IE.贴上代码:<br />
8、IE6 的双倍边距 BUG<br />
    &lt;style type=&#8221;text/css&#8221;&gt;  <br />
        body {margin:0}  <br />
        div { float:left; margin-left:10px; ; height:200px; border:1px solid red }  <br />
    &lt;/style&gt;<br />
   浮动后本来外边距10px, 但IE 解释为20px, 解决办法是加上 display:inline<br />
9、为什么FF 下文本无法撑开容器的高度？<br />
　 标准浏览器中固定高度值的容器是不会象IE6 里那样被撑开的, 那我又想固定高度，又想能被撑开需要怎样设置呢？办法就是去掉height 设      置min-height:200px; 这里为了照顾不认识min-height 的IE6 可以这样定义：<br />
   div { height:auto!important; height:200px; min-height:200px; }<br />
兼容代码:兼容最推荐的模式。<br />
/* FF */<br />
.submitbutton {<br />
float:left;<br />
width: 40px;<br />
height: 57px;<br />
margin-top: 24px;<br />
margin-right: 12px;<br />
}<br />
/* IE6 */<br />
*html .submitbutton {<br />
margin-top: 21px;<br />
}<br />
/* IE7 */<br />
*+html .submitbutton {<br />
margin-top: 21px;<br />
}<br />
什么是浏览器兼容：当我们使用不同的浏览器（Firefox IE7 IE6）访问同一个网站，或者页面的时候，会出现一些不兼容的问题，有的显示出来正常，有的显示出来不正常，我们在编写CSS的时候会很恼火，刚修复了这个浏览器的问题，结果另外一个浏览器却出了新问题。而兼容就是一种办法，能让你在一个CSS里面独立的写支持不同浏览器的样式。这下就和谐了。呵呵！<br />
程序代码</p>
<p>第一个兼容，IE FF 所有浏览器 公用（其实也不算是兼容）<br />
height:100px;<br />
第二个兼容 IE6专用<br />
_height:100px;<br />
第三个兼容 IE6 IE7公用<br />
*height:100px;<br />
height:100px;<br />
*height:120px;<br />
_height:150px;</p>
<p>在FF下，第2、3个属性FF不认识，所以它读的是 height:100px;</p>
<p>在IE7下，第三个属性IE7不认识，所以它读第1、2个属性，又因为第二个属性覆盖了第一个属性，所以IE7最终读出的是第2个属性 *height:120px;</p>
<p>在IE6下，三个属性IE6都认识，所以三个属性都可以读取，又因为第三个属性覆盖掉前2个属性，所以IE6最终读取的是第三个属性。</p>
<p>1 针对firefox ie6 ie7的css样式</p>
<p>现在大部分都是用!important来兼容，对于ie6和firefox测试可以正常显示，但是ie7对!important可以正确解释，会导致页面没按要求显示！找到一个针对IE7不错的兼容方式就是使用“*+html”，现在用IE7浏览一下，应该没有问题了现在写一个CSS可以这样：</p>
<p>#1 { color: #333; } /* Moz */<br />
* html #1 { color: #666; } /* IE6 */<br />
*+html #1 { color: #999; } /* IE*/</p>
<p>那么在firefox下字体颜色显示为#333，IE6下字体颜色显示为#666，IE7下字体颜色显示为#999。</p>
<p>2 css布局中的居中问题</p>
<p>主要的样式定义如下：</p>
<p>body {TEXT-ALIGN: center;}<br />
#center { MARGIN-RIGHT: auto; MARGIN-LEFT: auto; }</p>
<p>说明：</p>
<p>首先在父级元素定义TEXT-ALIGN: center;这个的意思就是在父级元素内的内容居中；对于IE这样设定就已经可以了。</p>
<p>但在mozilla中不能居中。解决办法就是在子元素定义时候设定时再加上“MARGIN-RIGHT: auto;MARGIN-LEFT: auto; ”</p>
<p>需要说明的是，如果你想用这个方法使整个页面要居中，建议不要套在一个DIV里，你可以依次拆出多个div，只要在每个拆出的div里定义MARGIN-RIGHT: auto;MARGIN-LEFT: auto; 就可以了。</p>
<p>3 盒模型不同解释.</p>
<p>#box{<br />
width:600px;<br />
//for ie6.0- w\idth:500px;<br />
//for ff+ie6.0<br />
}<br />
#box{<br />
width:600px!important<br />
//for ff<br />
width:600px;<br />
//for ff+ie6.0<br />
width /**/:500px;<br />
//for ie6.0-<br />
}</p>
<p>4 浮动ie产生的双倍距离</p>
<p>#box{ float:left; width:100px; margin:0 0 0 100px; //这种情况之下IE会产生200px的距离 display:inline; //使浮动忽略}</p>
<p>这里细说一下block,inline两个元素,Block元素的特点是:总是在新行上开始,高度,宽度,行高,边距都可以控制(块元素);Inline元素的特点是:和其他元素在同一行上,…不可控制(内嵌元素);</p>
<p>#box{ display:block; //可以为内嵌元素模拟为块元素 display:inline; //实现同一行排列的的效果 diplay:table;</p>
<p>5 IE与宽度和高度的问题</p>
<p>IE 不认得min-这个定义，但实际上它把正常的width和height当作有min的情况来使。这样问题就大了，如果只用宽度和高度，正常的浏览器里这两个值就不会变，如果只用min-width和min-height的话，IE下面根本等于没有设置宽度和高度。比如要设置背景图片，这个宽度是比较重要的。要解决这个问题，可以这样：</p>
<p>#box{ width: 80px; height: 35px;}html&amp;gt;body #box{ width: auto; height: auto; min-width: 80px; min-height: 35px;}</p>
<p>6 页面的最小宽度</p>
<p>min- width是个非常方便的CSS命令，它可以指定元素最小也不能小于某个宽度，这样就能保证排版一直正确。但IE不认得这个，而它实际上把 width当做最小宽度来使。为了让这一命令在IE上也能用，可以把一个&lt;div&gt; 放到 &lt;body&gt; 标签下，然后为div指定一个类：<br />
然后CSS这样设计：</p>
<p>#container{<br />
min-width: 600px;<br />
width:e­xpression(document.body.clientWidth &lt; 600? “600px”: “auto” );<br />
}</p>
<p>第一个min-width是正常的；但第2行的width使用了Javascript，这只有IE才认得，这也会让你的HTML文档不太正规。它实际上通过Javascript的判断来实现最小宽度。</p>
<p>7 清除浮动</p>
<p>.兼容box{<br />
display:table;<br />
//将对象作为块元素级的表格显示<br />
}</p>
<p>或者</p>
<p>.兼容box{<br />
clear:both;<br />
}</p>
<p>或者加入:after（伪对象）,设置在对象后发生的内容，通常和content配合使用，IE不支持此伪对象，非Ie 浏览器支持，所以并不影响到IE/WIN浏览器。这种的最麻烦的</p>
<p>……#box:after{<br />
content: “.”;<br />
display: block;<br />
height: 0;<br />
clear: both;<br />
visibility: hidden;<br />
}</p>
<p>8 DIV浮动IE文本产生3象素的bug</p>
<p>左边对象浮动，右边采用外补丁的左边距来定位，右边对象内的文本会离左边有3px的间距.</p>
<p>#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 />
&amp;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>9 属性选择器(这个不能算是兼容,是隐藏css的一个bug)</p>
<p>p[id]{}div[id]{}<br />
p[id]{}div[id]{}</p>
<p>这个对于IE6.0和IE6.0以下的版本都隐藏,FF和OPera作用</p>
<p>属性选择器和子选择器还是有区别的,子选择器的范围从形式来说缩小了,属性选择器的范围比较大,如p[id]中,所有p标签中有id的都是同样式的.</p>
<p>10 IE捉迷藏的问题</p>
<p>当div应用复杂的时候每个栏中又有一些链接，DIV等这个时候容易发生捉迷藏的问题。<br />
有些内容显示不出来，当鼠标选择这个区域是发现内容确实在页面。<br />
解决办法：对#layout使用line-height属性 或者给#layout使用固定高和宽。页面结构尽量简单。</p>
<p>11 高度不适应</p>
<p>高度不适应是当内层对象的高度发生变化时外层高度不能自动进行调节，特别是当内层对象使用<br />
margin 或paddign 时。例：</p>
<p>&lt;div id=”box”&gt;<br />
&lt;p&gt;p对象中的内容&lt;/p&gt;<br />
&lt;/div&gt;</p>
<p>CSS：</p>
<p>#box {background-color:#eee; }<br />
#box p {margin-top: 20px;margin-bottom: 20px; text-align:center; }</p>
<p>解决方法：在P对象上下各加2个空的div对象CSS代码：.1{height:0px;overflow:hidden;}或者为DIV加上border属性。</p>
<p>屏蔽IE浏览器（也就是IE下不显示）<br />
*:lang(zh) select {font:12px !important;} /*FF,OP可见*/<br />
select:empty {font:12px !important;} /*safari可见*/<br />
这里select是选择符，根据情况更换。第二句是MAC上safari浏览器独有的。</p>
<p>仅IE7识别<br />
*+html {…}<br />
当面临需要只针对IE7做样式的时候就可以采用这个兼容。</p>
<p>IE6及IE6以下识别<br />
* html {…}<br />
这个地方要特别注意很多地主都写了是IE6的兼容其实IE5.x同样可以识别这个兼容。其它浏览器不识别。<br />
html/**/ &amp;gt;body select {……}<br />
这句与上一句的作用相同。</p>
<p>仅IE6不识别<br />
select { display /*IE6不识别*/:none;}<br />
这里主要是通过CSS注释分开一个属性与值，流释在冒号前。</p>
<p>仅IE6与IE5不识别<br />
select/**/ { display /*IE6,IE5不识别*/:none;}<br />
这里与上面一句不同的是在选择符与花括号之间多了一个CSS注释。</p>
<p>仅IE5不识别<br />
select/*IE5不识别*/ { display:none;}<br />
这一句是在上一句中去掉了属性区的注释。只有IE5不识别</p>
<p>盒模型解决方法<br />
selct {width:IE5.x宽度; voice-family :&#8221;"}&#8221;"; voice-family:inherit; width:正确宽度;}<br />
盒模型的清除方法不是通过!important来处理的。这点要明确。</p>
<p>清除浮动<br />
select:after {content:&#8221;.&#8221;; display:block; height:0; clear:both; visibility:hidden;}<br />
在Firefox中，当子级都为浮动时，那么父级的高度就无法完全的包住整个子级，那么这时用这个清除浮动的兼容来对父级做一次定义，那么就可以解决这个问题 。</p>
<p>截字省略号<br />
select { -o-text-overflow:ellipsis; text-overflow:ellipsis; white-space:nowrapoverflow:hidden; }<br />
这个是在越出长度后会自行的截掉多出部分的文字，并以省略号结尾，很好的一个技术。只是目前Firefox并不支持。</p>
<p>只有Opera识别<br />
@media all and (min-width: 0px){ select {……} }<br />
针对Opera浏览器做单独的设定。</p>
<p>以上都是写CSS中的一些兼容，建议遵循正确的标签嵌套(div ul li 嵌套结构关系)，这样可以减少你使用兼容的频率，不要进入理解误区，并不是一个页面就需要很多的兼容来保持多浏览器兼容)，很多情况下也许一个兼容都不用也可以让浏览器工作得非常好，这些都是用来解决局部的兼容性问题，如果希望把兼容性的内容也分离出来，不妨试一下下面的几种过滤器。这些过滤器有的是写在 CSS中通过过滤器导入特别的样式，也有的是写在HTML中的通过条件来链接或是导入需要的补丁样式。</p>
<p>IE5.x的过滤器，只有IE5.x可见<br />
@media tty {<br />
i{content:&#8221;";/*&#8221; &#8220;*/}} @import ’ie5win.css’; /*&#8221;;}<br />
}/* */</p>
<p>IE5/MAC的过滤器，一般用不着<br />
/**//*/<br />
@import &#8220;ie5mac.css&#8221;;<br />
/**/</p>
<p>IE的if条件兼容 自己可以灵活使用参看这篇IE条件注释<br />
Only IE<br />
所有的IE可识别</p>
<p>只有IE5.0可以识别<br />
Only IE 5.0+<br />
IE5.0包换IE5.5都可以识别</p>
<p>仅IE6可识别<br />
Only IE 7/-<br />
IE6以及IE6以下的IE5.x都可识别<br />
Only IE 7/-<br />
仅IE7可识别</p>
<p>Css 当中有许多的东西不不按照某些规律来的话，会让你很心烦，虽然你可以通过很多的兼容，很多的!important 来控制它，但是你会发现长此以往你会很不甘心，看看许多优秀的网站，他们的CSS让IE6,Ie7,Firefox,甚至Safari,Opera运行起来完美无缺是不是很羡慕？而他们看似复杂的模版下面使用的兼容 少得可怜。其实你要知道IE 和 Firefox 并不不是那么的不和谐，我们找到一定的方法，是完全可以让他们和谐共处的。不要你认为发现了兼容的办法，你就掌握了一切，我们并不是兼容的奴隶。</p>
<p>div ul li 的嵌套顺序</p>
<p>具体嵌套写法</p>
<p>遵循上面得嵌套方式，&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;/li&gt;&lt;/ul&gt;&lt; /div&gt; 然后在CSS 里面告诉 ul {Margin:0px;Padding:0px;list-style:none;}，其中list-style:none是不让&lt;li&gt; 标记的最前方显示圆点或者数字等目录类型的标记，因为IE和Firefox显示出来默认效果有些不一样。因此这样不需要做任何手脚，你的IE6、和 IE7、Firefox显示出来的东西(外距，间距，高度，宽度)就几乎没什么区别了，也许细心的你会在某一个时刻发现一、两个象素的差别，但那已经很完美了，不需要你通过调整大片的CSS来控制它们的显示了，你愿意，你可以仅仅兼容一两个地方，而且通常这种兼容可以适应各种地方，不需要你重复在不同的地方调试不同的兼容方式–减轻你的烦。你可以ul.class1, ul.class2, ul.class3 {xxx:xxxx}的方式方便的整理出你要兼容的地方，而统一兼容。尝试一下吧，再也不要乱嵌套了，虽然在Div+CSS的方式下你几乎可以想怎么嵌套就怎么嵌套，但是按照上面的规律你将轻松很多，从而事半功倍！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.seoweb-sh.com/1032.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>W3C 验证失败的常见原因</title>
		<link>http://www.seoweb-sh.com/1002.html</link>
		<comments>http://www.seoweb-sh.com/1002.html#comments</comments>
		<pubDate>Mon, 28 Sep 2009 09:15:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[上海SEO 网站制作]]></category>

		<guid isPermaLink="false">http://www.seoweb-sh.com/?p=1002</guid>
		<description><![CDATA[本文开始前介绍一些使用W3C验证程序时需要注意的问题。
　　不要担心验证程序的警告——如果验证程序说发现12处错误以及83处警告，不要理它，继续进行下一步。
　　一次更正一个错误——按顺序进展工作，从上到下，一次修正一个错误。HTML用浏览器从上到下浏览，这些错误也是按同样顺序显示。
每次修正代码后要刷新代码，使它们重新生效——一个小错误常常会引发之后整页的连串错误。因此如果操作不当，“修正错误”也可能引发更多错误。每次修正后使代码重新生效，这样就可以确保完全解决问题。
　　知道了上面这些基本的异常情况，下面我们就来看看版面设计无效的几个原因。
1、div 标签未关闭
　　这是版面设计失效的最常见原因之一。当我们了解到这是多少精致的版块设计失效的罪魁祸首时，总会大吃一惊。开启的div标签是最普遍的版块设计失误之一，也是最难诊断的失误之一。验证程序有时会指向错误的开启div标签，诊断时就像大海捞针一样麻烦。
2、麻烦的embed标签
　　九十年代早期，Microsoft和Netscape的浏览器开始能够辨认非标准的独有字体。遗憾的是这意味着W3C验证程序还不能识别某些关键HTML 标签，如“embed”，即使这些标签已经被广泛使用。如果确实希望得到严格的DOCTYPE（文档类型）验证，就只能放弃嵌套。
如果同时想要生效的版面设计和嵌入式媒体，可以试试Flash Satay方法。
3、不当的DOCTYPE声明
　　不声明DOCTYPE，或者在文件开始错误声明DOCTYPE，也是一个常见错误。根据一般经验，Strict DOCTYPE是大家追求的最高级验证。Strict validation表明你的网页能够在所有浏览器上都得到最佳展示。Strict 声明代码如下：
&#60;!DOCTYPE html PUBLIC &#8220;-//W3C//DTD XHTML 1.0 Strict//EN&#8221; &#8220;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&#8220;&#62;
4、结尾斜线
　　如果你的网站不能验证，很有可能是在代码的某个地方漏写了结尾斜线。我们很容易忽略结尾斜线之类的东西，特别是在image标签等元素中。例如：
在严格的DOCTYPE中这是无效的。要在img标签结尾处加上“/”以解决此问题。
&#60;img src=&#8221;" alt=&#8221;"&#62;
5、Align标签
　　如果DOCTYPE被设为Transitional，你就会使用“align”标签，但如果要求更高一点希望得到Strict验证，你会看到很多错误。 Align是另一个不可用于版面设计的标签。可以尝试用“float”或者“text-align”来代替align转换元素。
6、JavaScript
　　如果已经声明Strict DOCTYPE，就需要在JavaScript中覆盖CDATA标签。验证程序的这一方面难倒了很多程序员，因为网站倾向于为广告和追踪脚本使用嵌入的 JavaScript。如果必须用到JavaScript，可以在其前后加上如下标签：
&#60;script type=&#8221;text/javascript&#8221;&#62;
/* &#60;![CDATA[ */
// JavaScript here
};
/* ]]&#62; */
&#60;/script&#62;
 
7、图像需要“alt”属性
　　你可能还没有注意到，图像也是高级验证的潜在绊脚石。除了结尾斜线，高级验证也要求用alt标签来描述图像，如alt= ”Scary vampire picture”。
　　搜索引擎也靠alt标签来识别网页上的图像，所以无论怎样加上alt标签总是好的。
8、未知实体数据
　　实体数据是又一个影响验证的易犯错误。我们可以考虑用适当的编码字符来代替“&#38;”等符号。entire list中列出在XHTML版块设计中可用的适当的编码字符实体数据。
9、不良嵌套
　　嵌套就是元素里又包括元素，如下所示：
&#60;div&#62;&#60;strong&#62;Sweet!&#60;/strong&#62;&#60;/div&#62;
　　我们容易混淆嵌套元素的顺序。例如在div标签前启动strong标签，但又先关闭div标签。这可能不会改变版块布局，但却会使你的版块设计失效。
10、缺少“title”标签
　　尽管这看上去是一个很明显的错误，很多程序员（包括我自己）还是经常会在“head”版块中遗漏title标签。当你看到“missing a required sub-element of HEAD”（缺少HEAD的必要子元素）时，才会发现自己忘记添加title标签了
]]></description>
			<content:encoded><![CDATA[<p>本文开始前介绍一些使用W3C验证程序时需要注意的问题。<br />
　　不要担心验证程序的警告——如果验证程序说发现12处错误以及83处警告，不要理它，继续进行下一步。</p>
<p>　　一次更正一个错误——按顺序进展工作，从上到下，一次修正一个错误。HTML用浏览器从上到下浏览，这些错误也是按同样顺序显示。<span id="more-1002"></span></p>
<p>每次修正代码后要刷新代码，使它们重新生效——一个小错误常常会引发之后整页的连串错误。因此如果操作不当，“修正错误”也可能引发更多错误。每次修正后使代码重新生效，这样就可以确保完全解决问题。</p>
<p>　　知道了上面这些基本的异常情况，下面我们就来看看版面设计无效的几个原因。</p>
<p>1、div 标签未关闭</p>
<p>　　这是版面设计失效的最常见原因之一。当我们了解到这是多少精致的版块设计失效的罪魁祸首时，总会大吃一惊。开启的div标签是最普遍的版块设计失误之一，也是最难诊断的失误之一。验证程序有时会指向错误的开启div标签，诊断时就像大海捞针一样麻烦。</p>
<p>2、麻烦的embed标签</p>
<p>　　九十年代早期，Microsoft和Netscape的浏览器开始能够辨认非标准的独有字体。遗憾的是这意味着W3C验证程序还不能识别某些关键HTML 标签，如“embed”，即使这些标签已经被广泛使用。如果确实希望得到严格的DOCTYPE（文档类型）验证，就只能放弃嵌套。</p>
<p>如果同时想要生效的版面设计和嵌入式媒体，可以试试Flash Satay方法。</p>
<p>3、不当的DOCTYPE声明</p>
<p>　　不声明DOCTYPE，或者在文件开始错误声明DOCTYPE，也是一个常见错误。根据一般经验，Strict DOCTYPE是大家追求的最高级验证。Strict validation表明你的网页能够在所有浏览器上都得到最佳展示。Strict 声明代码如下：</p>
<p>&lt;!DOCTYPE html PUBLIC &#8220;-//W3C//DTD XHTML 1.0 Strict//EN&#8221; &#8220;<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd</a>&#8220;&gt;<br />
4、结尾斜线</p>
<p>　　如果你的网站不能验证，很有可能是在代码的某个地方漏写了结尾斜线。我们很容易忽略结尾斜线之类的东西，特别是在image标签等元素中。例如：</p>
<p>在严格的DOCTYPE中这是无效的。要在img标签结尾处加上“/”以解决此问题。</p>
<p>&lt;img src=&#8221;" alt=&#8221;"&gt;<br />
5、Align标签</p>
<p>　　如果DOCTYPE被设为Transitional，你就会使用“align”标签，但如果要求更高一点希望得到Strict验证，你会看到很多错误。 Align是另一个不可用于版面设计的标签。可以尝试用“float”或者“text-align”来代替align转换元素。</p>
<p>6、JavaScript</p>
<p>　　如果已经声明Strict DOCTYPE，就需要在JavaScript中覆盖CDATA标签。验证程序的这一方面难倒了很多程序员，因为网站倾向于为广告和追踪脚本使用嵌入的 JavaScript。如果必须用到JavaScript，可以在其前后加上如下标签：</p>
<p>&lt;script type=&#8221;text/javascript&#8221;&gt;</p>
<p>/* &lt;![CDATA[ */<br />
// JavaScript here<br />
};<br />
/* ]]&gt; */<br />
&lt;/script&gt;<br />
 <br />
7、图像需要“alt”属性</p>
<p>　　你可能还没有注意到，图像也是高级验证的潜在绊脚石。除了结尾斜线，高级验证也要求用alt标签来描述图像，如alt= ”Scary vampire picture”。</p>
<p>　　搜索引擎也靠alt标签来识别网页上的图像，所以无论怎样加上alt标签总是好的。</p>
<p>8、未知实体数据</p>
<p>　　实体数据是又一个影响验证的易犯错误。我们可以考虑用适当的编码字符来代替“&amp;”等符号。entire list中列出在XHTML版块设计中可用的适当的编码字符实体数据。</p>
<p>9、不良嵌套</p>
<p>　　嵌套就是元素里又包括元素，如下所示：</p>
<p>&lt;div&gt;&lt;strong&gt;Sweet!&lt;/strong&gt;&lt;/div&gt;<br />
　　我们容易混淆嵌套元素的顺序。例如在div标签前启动strong标签，但又先关闭div标签。这可能不会改变版块布局，但却会使你的版块设计失效。</p>
<p>10、缺少“title”标签</p>
<p>　　尽管这看上去是一个很明显的错误，很多程序员（包括我自己）还是经常会在“head”版块中遗漏title标签。当你看到“missing a required sub-element of HEAD”（缺少HEAD的必要子元素）时，才会发现自己忘记添加title标签了</p>
]]></content:encoded>
			<wfw:commentRss>http://www.seoweb-sh.com/1002.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>5种方法立刻写出更好的CSS代码</title>
		<link>http://www.seoweb-sh.com/999.html</link>
		<comments>http://www.seoweb-sh.com/999.html#comments</comments>
		<pubDate>Mon, 28 Sep 2009 09:12:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[DIV/CSS]]></category>
		<category><![CDATA[上海SEO 网站制作]]></category>

		<guid isPermaLink="false">http://www.seoweb-sh.com/999.html</guid>
		<description><![CDATA[每个人都可以编写CSS代码，甚至你现在已经让它为你的项目工作了。但是CSS还可以更好吗？开始用这5个Tips改进你的CSS吧！
1.重置
首先，很认真的告诉你，总是要重置某些分类。无论你是使用 Eric Meyer Reset、YUI Reset
或者你自己编写的重置代码，只要使用就对了。
它能很简单的移除所有元素的填充（padding）和边距（margin）：
html, body, div, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, blockquote,
pre, form, fieldset, table, th, td { margin: 0; padding: 0; }
Eric Meyer Reset和YUI Reset都是非常强大的，但是对于我而言，它们走的太远了。我觉得你最终需要重置一切，然后重新定义所有元素的属性。这就是为什么Eric Meyer推荐更有效的使用（重置样式表），而你不要只是使用他的重置样式表，将它拖放到你的项目中。调整它（的重置样式表），建立属于自己的重置样式表。
噢，请停止使用：
* { margin: 0; padding: 0; }
花更多的时间去制作它，当你移除了填充（padding）你认为单选按钮会发生什么变化？表单元素有时能够做些时髦的事情，所以最有效的方式就是将他们独立。
2.排序
一个小的测试
这个例子就是要让你思考如何更快的找到右边距属性？
Example#1
div#header h1 {
z-index: 101;
color: #000;
position: relative;
line-height: 24px;
margin-right: 48px;
border-bottom: 1px solid #dedede;
font-size: 18px;
}
Example#2
div#header h1 { [...]]]></description>
			<content:encoded><![CDATA[<p>每个人都可以编写CSS代码，甚至你现在已经让它为你的项目工作了。但是CSS还可以更好吗？开始用这5个Tips改进你的CSS吧！<br />
1.重置<br />
首先，很认真的告诉你，总是要重置某些分类。无论你是使用 Eric Meyer Reset、YUI Reset</p>
<p>或者你自己编写的重置代码，只要使用就对了。</p>
<p>它能很简单的移除所有元素的填充（padding）和边距（margin）：<span id="more-999"></span></p>
<p>html, body, div, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, blockquote,<br />
pre, form, fieldset, table, th, td { margin: 0; padding: 0; }</p>
<p>Eric Meyer Reset和YUI Reset都是非常强大的，但是对于我而言，它们走的太远了。我觉得你最终需要重置一切，然后重新定义所有元素的属性。这就是为什么Eric Meyer推荐更有效的使用（重置样式表），而你不要只是使用他的重置样式表，将它拖放到你的项目中。调整它（的重置样式表），建立属于自己的重置样式表。</p>
<p>噢，请停止使用：</p>
<p>* { margin: 0; padding: 0; }</p>
<p>花更多的时间去制作它，当你移除了填充（padding）你认为单选按钮会发生什么变化？表单元素有时能够做些时髦的事情，所以最有效的方式就是将他们独立。</p>
<p>2.排序<br />
一个小的测试<br />
这个例子就是要让你思考如何更快的找到右边距属性？</p>
<p>Example#1</p>
<p>div#header h1 {<br />
z-index: 101;<br />
color: #000;<br />
position: relative;<br />
line-height: 24px;<br />
margin-right: 48px;<br />
border-bottom: 1px solid #dedede;<br />
font-size: 18px;<br />
}</p>
<p>Example#2</p>
<p>div#header h1 { border-bottom: 1px solid #dedede; color: #000; font-size: 18px; line-height: 24px; margin-right: 48px; position: relative; z-index: 101;}你不能告诉我Example#2不能更快的找到右边距属性。根据字母排序你的元素属性。一致的创建你的CSS，将帮助你节省花费在寻找一个特殊属性的时间。</p>
<p>我知道一些人用这样的方法去组织代码，其他人又用另一种方法去组织，但是在我的公司，我们协商一致做出决定，所有的代码都将按照字母排序来组织。通过这样组织代码与其他人协同工作一定是有帮助的。当我碰到属性没有按照字母排序的层叠样式表我每一次都会退缩。</p>
<p>3.组织<br />
你应该组织你的样式表以致相关的内容靠在一起，更简单的找到想要的。使用更有效的注解。举个例子，这是我如何构造我的层叠样式表：</p>
<p>/*****Reset*****/移除元素的填充（padding）和边距（margin）。/*****Basic Elements*****/定义基本元素的样式: body, h1-h6, ul, ol, a, p, 等./*****Generic Classes*****/定义简单的风格，好像浮动的某一侧, 移除元素的下边距, 等当然，它们大部分都与我们希望的语义不相关,但是它们是高效处理代码所必须的。/*****Basic Layout*****/定义基本的模板: header, footer等. 帮助定义网页布局的基本元素/*****Header*****/定义所有Hearder元素/*****Content*****/定义所有内容框内的元素/*****Footer*****/定义所有Footer的元素/*****Etc*****/定义其他的选择器。通过注解和归类相似元素的分组，将更快的找到你想要的。</p>
<p>4.一致性<br />
无论你决定使用什么方式去编写代码，保持一致。我已经对全部放在1行VS多行的CSS编写编写方式的争论感到乏味和疲倦。这是不需要争辩的。每个人都有自己的观点，所以选择一种你喜欢的工作方式，并在所有的样式表中保持一致。</p>
<p>就我个人而言，我将使用两者结合的方式。如果一个选择器超过了3个属性，我将截断它采用多行的方式编写。</p>
<p>div#header { float: left; width: 100%; }<br />
div#header div.column {<br />
border-right: 1px solid #ccc;<br />
float: rightright;<br />
margin-right: 50px;<br />
padding: 10px;<br />
width: 300px;<br />
}<br />
div#header h1 { float: left; position: relative; width: 250px; }</p>
<p>所以找到你喜欢的工作方式然后保持一致。</p>
<p>5.从正确的地方开始<br />
在完成标记语言之前不要去尝试靠近你的样式表。</p>
<p>当我准备分割一张网页的时候，创建CSS文件之前，我需要预览并且标记body开标签到body的闭合标签之间的所有文档。我不会增加额外的DIV ,ID,或者类选择器。我将会添加一些一般的DIV，就好像hearder、content、footer.因为我知道这些东西是现实存在的。</p>
<p>通过先标记文档，你将不会碰到本已注定的divities1和classitis2麻烦!/*You only need to add in that stuff once you have begun to write the CSS and realize that you are going to need another hook to accomplish what you are trying to achieve.*/(原文未译）。</p>
<p>利用CSS子选择器指定子元素；不要只是机械的给元素添加类或者ID选择器。记住：没有一个良好的格式化文档（或者标记结构）CSS是无价值的。</p>
<p>总结<br />
这些Tips能够帮助我更好的完成CSS代码的编写。但是这并不意味着这张列表的结束，接下来我将会去带来一些其他的与大家分享。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.seoweb-sh.com/999.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Analytics高级群体功能使用方法</title>
		<link>http://www.seoweb-sh.com/986.html</link>
		<comments>http://www.seoweb-sh.com/986.html#comments</comments>
		<pubDate>Fri, 18 Sep 2009 03:28:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[上海SEO网站成功案例]]></category>
		<category><![CDATA[Analytics高级群体功能]]></category>
		<category><![CDATA[Google Analytics]]></category>

		<guid isPermaLink="false">http://www.seoweb-sh.com/?p=986</guid>
		<description><![CDATA[因客户要求需要查看具体产品从各省市访问的人数， 或查看 上海地区有多少人访问了该主品页面。要出这样的一个报告当然原有的 Google analytics 一般功能也可以实现的，不过analytics还有一个高级群体测试版本。通过这个高级群体可以生成更加复杂的报告。下面简单的说一下使用方法.

其实高级群体的定义方法很简单。通过 OR 和AND 指令和拖动功能就能实现。
1.访问Google Analytics帐户，在控制台的设置中进入“高级群体”管理选项。
2.点击右上方的“创建新的自定义群体”（如果尚未创建过自定义群体，最下方也有创建的链接）
3.从左侧的列表视图中维度的访问者选取“访问者类型”选项卡，并拖动到右侧的“维度或指标”虚线框内，条件选择“完全匹配”，值选择为“Returning Visitor”；同时添加and语句，将“市县”拖动到“维度或指标”虚线框内，条件选择“完全匹配”，值选择为“Beijing”。可以点击右上方的测试群体细分，来获知以上条件下网站的访问次数为多少。
4.给该群体命名为：“北京回访者”后，创建群体。
5.回到“管理高级群体”，将自定义群体的“北京回访者”应用到报告
现在再查看报告，就已经帮我们把群体筛选好了，赶快试试吧。
]]></description>
			<content:encoded><![CDATA[<p>因客户要求需要查看具体产品从各省市访问的人数， 或查看 上海地区有多少人访问了该主品页面。要出这样的一个报告当然原有的 Google analytics 一般功能也可以实现的，不过analytics还有一个高级群体测试版本。通过这个高级群体可以生成更加复杂的报告。下面简单的说一下使用方法.<br />
<span id="more-986"></span><br />
其实高级群体的定义方法很简单。通过 OR 和AND 指令和拖动功能就能实现。</p>
<div>1.访问Google Analytics帐户，在控制台的设置中进入“高级群体”管理选项。</div>
<div>2.点击右上方的“创建新的自定义群体”（如果尚未创建过自定义群体，最下方也有创建的链接）</div>
<div>3.从左侧的列表视图中<strong>维度</strong>的<strong>访问者</strong>选取“<strong>访问者类型</strong>”选项卡，并拖动到右侧的“<strong>维度或指标</strong>”虚线框内，条件选择“<strong>完全匹配</strong>”，值选择为“<strong>Returning Visitor</strong>”；同时添加and语句，将“<strong>市县</strong>”拖动到“<strong>维度或指标</strong>”虚线框内，条件选择“<strong>完全匹配</strong>”，值选择为“<strong>Beijing</strong>”。可以点击右上方的测试群体细分，来获知以上条件下网站的访问次数为多少。</div>
<div>4.给该群体命名为：“<strong>北京回访者”</strong>后，创建群体。</div>
<div>5.回到“<strong>管理高级群体</strong>”，将自定义群体的“北京回访者”应用到报告</div>
<p>现在再查看报告，就已经帮我们把群体筛选好了，赶快试试吧。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.seoweb-sh.com/986.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS Reset的应用</title>
		<link>http://www.seoweb-sh.com/980.html</link>
		<comments>http://www.seoweb-sh.com/980.html#comments</comments>
		<pubDate>Thu, 10 Sep 2009 01:57:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[DIV/CSS]]></category>
		<category><![CDATA[上海SEO 网站制作]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[CSS Reset]]></category>
		<category><![CDATA[Reset]]></category>

		<guid isPermaLink="false">http://www.seoweb-sh.com/?p=980</guid>
		<description><![CDATA[知道CSS Reset是什么吗？通常情况下，它也被写成Reset CSS，即重设浏览器的样式。在各种浏览器中，都会对CSS的选择器默认一些数值，譬如当h1没有被设置数值时，显示一定大小。但并不是所有的浏览器都使 用一样的数值，所以，有了CSS Reset，以让网页的样式在各浏览器中表现一致。

正在使用CSS的你，用过CSS Reset吗？当然，或许你用了，却不知道正在用，比如你可能用到：
* { padding: 0; margin: 0; border: 0; }
这也是一款CSS Reset的方法，让所有的选择器的padding、margin和border都设置成0。这是一种强大的方法，也是最简单，最安全的方法，不过，也是 最占用资源的方法。对于小型的网站来说，用这个并不会带来大的资源浪费，但如果是像Yahoo这种架构非常大的网站，刚需要有选择地进行CSS重设，以减 少资源浪费。下面是Yahoo的CSS重设代码，也是受最多人喜爱的CSS Reset方法，YUI选择的方法是：
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,
form,fieldset,input,textarea,p,blockquote,th,td {
padding: 0;
margin: 0;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
fieldset,img {
border: 0;
}
address,caption,cite,code,dfn,em,strong,th,var {
font-weight: normal;
font-style: normal;
}
ol,ul {
list-style: none;
}
caption,th {
text-align: left;
}
h1,h2,h3,h4,h5,h6 {
font-weight: normal;
font-size: 100%;
}
q:before,q:after {
content:”;
}
abbr,acronym { border: 0;
}
OK，相信你也已经了解了CSS重设的目的，或许你也可以根据自己的喜好，写一个自己的CSS重设系统，毕竟大家的需求和习惯的不同的。而你可以参照下面的几款：
Ateneu Popular CSS Reset
html, body, div, span, applet, object, iframe, h1, h2, h3,
h4, h5, h6, p, [...]]]></description>
			<content:encoded><![CDATA[<p>知道<a title="CSS Reset" href="http://www.seoweb-sh.com/980.html ">CSS Reset</a>是什么吗？通常情况下，它也被写成Reset CSS，即重设浏览器的样式。在各种浏览器中，都会对<a title="CSS" href="http://www.seoweb-sh.com/tag/css">CSS</a>的选择器默认一些数值，譬如当h1没有被设置数值时，显示一定大小。但并不是所有的浏览器都使 用一样的数值，所以，有了CSS Reset，以让网页的样式在各浏览器中表现一致。<br />
<span id="more-980"></span><br />
正在使用CSS的你，用过CSS Reset吗？当然，或许你用了，却不知道正在用，比如你可能用到：</p>
<p>* { padding: 0; margin: 0; border: 0; }</p>
<p>这也是一款CSS Reset的方法，让所有的选择器的padding、margin和border都设置成0。这是一种强大的方法，也是最简单，最安全的方法，不过，也是 最占用资源的方法。对于小型的网站来说，用这个并不会带来大的资源浪费，但如果是像Yahoo这种架构非常大的网站，刚需要有选择地进行CSS重设，以减 少资源浪费。下面是Yahoo的CSS重设代码，也是受最多人喜爱的CSS Reset方法，YUI选择的方法是：</p>
<p><span style="color: #8b0000;">body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,<br />
form,fieldset,input,textarea,p,blockquote,th,td {<br />
padding: 0;<br />
margin: 0;<br />
}<br />
table {<br />
border-collapse: collapse;<br />
border-spacing: 0;<br />
}<br />
fieldset,img {<br />
border: 0;<br />
}<br />
address,caption,cite,code,dfn,em,strong,th,var {<br />
font-weight: normal;<br />
font-style: normal;<br />
}<br />
ol,ul {<br />
list-style: none;<br />
}<br />
caption,th {<br />
text-align: left;<br />
}<br />
h1,h2,h3,h4,h5,h6 {<br />
font-weight: normal;<br />
font-size: 100%;<br />
}<br />
q:before,q:after {<br />
content:”;<br />
}<br />
abbr,acronym { border: 0;<br />
}</span><br />
OK，相信你也已经了解了CSS重设的目的，或许你也可以根据自己的喜好，写一个自己的CSS重设系统，毕竟大家的需求和习惯的不同的。而你可以参照下面的几款：</p>
<p><strong><span style="color: #ff0000;">Ateneu Popular CSS Reset<br />
</span></strong><span style="color: #8b0000;">html, body, div, span, applet, object, iframe, h1, h2, h3,<br />
h4, h5, h6, p, blockquote, pre, a, abbr, acronym,<br />
address, big, cite, code, del, dfn, em, font, img, ins,<br />
kbd, q, s, samp, small, strike, strong, sub, sup, tt,<br />
var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,<br />
table, caption, tbody, tfoot, thead, tr, th, td {<br />
margin: 0;<br />
padding: 0;<br />
border: 0;<br />
outline: 0;<br />
font-weight: inherit;<br />
font-style: inherit;<br />
font-size: 100%;<br />
font-family: inherit;<br />
vertical-align: baseline;<br />
}<br />
:focus { outline: 0;}<br />
a, a:link, a:visited, a:hover, a:active{text-decoration:none}<br />
table { border-collapse: separate;border-spacing: 0;}<br />
th, td {text-align: left; font-weight: normal;}<br />
img, iframe {border: none; text-decoration:none;}<br />
ol, ul {list-style: none;}<br />
input, textarea, select, button {font-size: 100%;font-family: inherit;}<br />
select {margin: inherit;}<br />
hr {margin: 0;padding: 0;border: 0;color: #000;background-color: #000;height: 1px}</span></p>
<p><span style="color: #ff0000;"><strong>Chris Poteet’s Reset CSS</strong></span><br />
<span style="color: #8b0000;">* {<br />
vertical-align: baseline;<br />
font-family: inherit;<br />
font-style: inherit;<br />
font-size: 100%;<br />
border: none;<br />
padding: 0;<br />
margin: 0;<br />
}<br />
body {<br />
padding: 5px;<br />
}<br />
h1, h2, h3, h4, h5, h6, p, pre, blockquote, form, ul, ol, dl {<br />
margin: 20px 0;<br />
}<br />
li, dd, blockquote {<br />
margin-left: 40px;<br />
}<br />
table {<br />
border-collapse: collapse;<br />
border-spacing: 0;<br />
}</span></p>
<p><strong><span style="color: #ff0000;">Eric Meyer Reset CSS</span></strong><br />
<span style="color: #8b0000;">html, body, div, span, applet, object, iframe, table, caption,<br />
tbody, tfoot, thead, tr, th, td, del, dfn, em, font, img, ins,<br />
kbd, q, s, samp, small, strike, strong, sub, sup, tt, var,<br />
h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr,<br />
acronym, address, big, cite, code, dl, dt, dd, ol, ul, li,<br />
fieldset, form, label, legend {<br />
vertical-align: baseline;<br />
font-family: inherit;<br />
font-weight: inherit;<br />
font-style: inherit;<br />
font-size: 100%;<br />
outline: 0;<br />
padding: 0;<br />
margin: 0;<br />
border: 0;<br />
}<br />
:focus {<br />
outline: 0;<br />
}<br />
body {<br />
background: white;<br />
line-height: 1;<br />
color: black;<br />
}<br />
ol, ul {<br />
list-style: none;<br />
}<br />
table {<br />
border-collapse: separate;<br />
border-spacing: 0;<br />
}<br />
caption, th, td {<br />
font-weight: normal;<br />
text-align: left;<br />
}<br />
blockquote:before, blockquote:after, q:before, q:after {<br />
content: &#8220;&#8221;;<br />
}<br />
blockquote, q {<br />
quotes: &#8220;&#8221; &#8220;&#8221;;<br />
}</span><br />
<strong><span style="color: #ff0000;">Tantek Celik Reset CSS</span></strong><br />
<span style="color: #8b0000;">:link,:visited { text-decoration:none }<br />
ul,ol { list-style:none }<br />
h1,h2,h3,h4,h5,h6,pre,code { font-size:1em; }<br />
ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input<br />
{ margin:0; padding:0 }<br />
a img,:link img,:visited img { border:none }<br />
address { font-style:normal }</span><br />
<strong><span style="color: #ff0000;">Christian Montoya Reset CSS</span></strong><br />
<span style="color: #8b0000;">html, body, form, fieldset {<br />
margin: 0;<br />
padding: 0;<br />
font: 100%/120% Verdana, Arial, Helvetica, sans-serif;<br />
}<br />
h1, h2, h3, h4, h5, h6, p, pre,<br />
blockquote, ul, ol, dl, address {<br />
margin: 1em 0;<br />
padding: 0;<br />
}<br />
li, dd, blockquote {<br />
margin-left: 1em;<br />
}<br />
form label {<br />
cursor: pointer;<br />
}<br />
fieldset {<br />
border: none;<br />
}<br />
input, select, textarea {<br />
font-size: 100%;<br />
font-family: inherit;<br />
}</span><br />
<span style="color: #ff0000;"><strong>Rudeworks Reset CSS</strong></span><br />
<span style="color: #8b0000;">* {<br />
margin: 0;<br />
padding: 0;<br />
border: none;<br />
}<br />
html {<br />
font: 62.5% &#8220;Lucida Grande&#8221;, Lucida, Verdana, sans-serif;<br />
text-shadow: #000 0px 0px 0px;<br />
}<br />
ul {<br />
list-style: none;<br />
list-style-type: none;<br />
}<br />
h1, h2, h3, h4, h5, h6, p, pre,<br />
blockquote, ul, ol, dl, address {<br />
font-weight: normal;<br />
margin: 0 0 1em 0;<br />
}<br />
cite, em, dfn {<br />
font-style: italic;<br />
}<br />
sup {<br />
position: relative;<br />
bottom: 0.3em;<br />
vertical-align: baseline;<br />
}<br />
sub {<br />
position: relative;<br />
bottom: -0.2em;<br />
vertical-align: baseline;<br />
}<br />
li, dd, blockquote {<br />
margin-left: 1em;<br />
}<br />
code, kbd, samp, pre, tt, var, input[type='text'], textarea {<br />
font-size: 100%;<br />
font-family: monaco, &#8220;Lucida Console&#8221;, courier, mono-space;<br />
}<br />
del {<br />
text-decoration: line-through;<br />
}<br />
ins, dfn {<br />
border-bottom: 1px solid #ccc;<br />
}<br />
small, sup, sub {<br />
font-size: 85%;<br />
}<br />
abbr, acronym {<br />
text-transform: uppercase;<br />
font-size: 85%;<br />
letter-spacing: .1em;<br />
border-bottom-style: dotted;<br />
border-bottom-width: 1px;<br />
}<br />
a abbr, a acronym {<br />
border: none;<br />
}<br />
sup {<br />
vertical-align: super;<br />
}<br />
sub {<br />
vertical-align: sub;<br />
}<br />
h1 {<br />
font-size: 2em;<br />
}<br />
h2 {<br />
font-size: 1.8em;<br />
}<br />
h3 {<br />
font-size: 1.6em;<br />
}<br />
h4 {<br />
font-size: 1.4em;<br />
}<br />
h5 {<br />
font-size: 1.2em;<br />
}<br />
h6 {<br />
font-size: 1em;<br />
}<br />
a, a:link, a:visited, a:hover, a:active {<br />
outline: 0;<br />
text-decoration: none;<br />
}<br />
a img {<br />
border: none;<br />
text-decoration: none;<br />
}<br />
img {<br />
border: none;<br />
text-decoration: none;<br />
}<br />
label, button {<br />
cursor: pointer;<br />
}<br />
input:focus, select:focus, textarea:focus {<br />
background-color: #FFF;<br />
}<br />
fieldset {<br />
border: none;<br />
}<br />
.clear {<br />
clear: both;<br />
}<br />
.float-left {<br />
float: left;<br />
}<br />
.float-right {<br />
float: right;<br />
}<br />
body {<br />
text-align: center;<br />
}<br />
#wrapper {<br />
margin: 0 auto;<br />
text-align: left;<br />
}</span><br />
<strong><span style="color: #ff0000;">Anieto2K Reset CSS</span></strong><br />
<span style="color: #8b0000;">html, body, div, span, applet, object, iframe,<br />
h1, h2, h3, h4, h5, h6, p,<br />
blockquote, pre, a, abbr, acronym, address, big,<br />
cite, code, del, dfn, em, font, img,<br />
ins, kbd, q, s, samp, small, strike,<br />
strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li,<br />
fieldset, form, label, legend,<br />
table, caption, tbody, tfoot, thead, tr, th, td,<br />
center, u, b, i {<br />
margin: 0;<br />
padding: 0;<br />
border: 0;<br />
outline: 0;<br />
font-weight: normal;<br />
font-style: normal;<br />
font-size: 100%;<br />
font-family: inherit;<br />
vertical-align: baseline<br />
}<br />
body {<br />
line-height: 1<br />
}<br />
:focus {<br />
outline: 0<br />
}<br />
ol, ul {<br />
list-style: none<br />
}<br />
table {<br />
border-collapse: collapse;<br />
border-spacing: 0<br />
}<br />
blockquote:before, blockquote:after, q:before, q:after {<br />
content: &#8220;&#8221;<br />
}<br />
blockquote, q {<br />
quotes: &#8220;&#8221; &#8220;&#8221;<br />
}<br />
input, textarea {<br />
margin: 0;<br />
padding: 0<br />
}<br />
hr {<br />
margin: 0;<br />
padding: 0;<br />
border: 0;<br />
color: #000;<br />
background-color: #000;<br />
height: 1px<br />
}</p>
<p><span style="color: #ff0000;"><strong>CSSLab CSS Reset</strong></span><br />
html, body, div, span, applet, object, iframe, h1, h2, h3,<br />
h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address,<br />
big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp,<br />
small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li,<br />
fieldset, form, label, legend, table, caption, tbody, tfoot,<br />
thead, tr, th, td {<br />
margin: 0;<br />
padding: 0;<br />
border: 0;<br />
outline: 0;<br />
font-weight: inherit;<br />
font-style: inherit;<br />
font-size: 100%;<br />
font-family: inherit;<br />
vertical-align: baseline;<br />
}<br />
:focus {<br />
outline: 0;<br />
}<br />
table {<br />
border-collapse: separate;<br />
border-spacing: 0;<br />
}<br />
caption, th, td {<br />
text-align: left;<br />
font-weight: normal;<br />
}<br />
a img, iframe {<br />
border: none;<br />
}<br />
ol, ul {<br />
list-style: none;<br />
}<br />
input, textarea, select, button {<br />
font-size: 100%;<br />
font-family: inherit;<br />
}<br />
select {<br />
margin: inherit;<br />
}<br />
/* Fixes incorrect placement of numbers in ol’s in IE6/7 */<br />
ol { margin-left:2em; }<br />
/* == clearfix == */<br />
.clearfix:after {<br />
content: &#8220;.&#8221;;<br />
display: block;<br />
height: 0;<br />
clear: both;<br />
visibility: hidden;<br />
}<br />
.clearfix {display: inline-block;}<br />
* html .clearfix {height: 1%;}<br />
.clearfix {display: block;}</span><br />
像你看到的，这些都大同小异，需求不同，方法也就不同。我自己偏向于喜欢Yahoo的CSS Reset，也用了Yahoo的代码。你，有自己的CSS Reset体系吗？或许可以分享出来！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.seoweb-sh.com/980.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS隔行换色</title>
		<link>http://www.seoweb-sh.com/978.html</link>
		<comments>http://www.seoweb-sh.com/978.html#comments</comments>
		<pubDate>Wed, 09 Sep 2009 07:42:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[DIV/CSS]]></category>
		<category><![CDATA[上海SEO 网站制作]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[CSS隔行换色]]></category>
		<category><![CDATA[网站制作]]></category>

		<guid isPermaLink="false">http://www.seoweb-sh.com/?p=978</guid>
		<description><![CDATA[在网站制作过程中我们会经常遇到表格处理数据，当然要想做的好看点就要运用到CSS隔行换色了。这相表格才会看上去不那么呆板。

&#60;html&#62;
&#60;head&#62;
&#60;meta http-equiv=&#8221;Content-Type&#8221; content=&#8221;text/html; charset=gb2312&#8243; /&#62;
&#60;title&#62;选中表格行变色标记效果 by okajax.com&#60;/title&#62;
&#60;style type=&#8221;text/css&#8221;&#62;
&#60;!&#8211;
#ejiaA1 {
width: 550px;
border-top: #E3E3E3 1px solid;
border-left: #E3E3E3 1px solid;
}
#ejiaA1 td,#ejiaA1 th {
padding: 5px;border-right: #E3E3E3 1px solid;
border-bottom: #E3E3E3 1px solid;
font-size:12px;
height:16px; line-height:16px;
}
#ejiaA1 tr td span {color: #686868}
#ejiaA1 tr td span.st1 {color: #ff0000}
&#8211;&#62;
&#60;/style&#62;
&#60;/head&#62;
&#60;script language=&#8221;javascript&#8221;&#62;&#60;!&#8211;
function ejiaA1(o,a,b,c,d){
var t=document.getElementById(o).getElementsByTagName(&#8221;tr&#8221;);
for(var i=0;i&#60;t.length;i++){
t[i].style.backgroundColor=(t[i].sectionRowIndex%2==0)?a:b;
t[i].onclick=function(){
if(this.x!=&#8221;1&#8243;){
this.x=&#8221;1&#8243;;//本来打算直接用背景色判断，FF获取到的背景是RGB值，不好判断
this.style.backgroundColor=d;
}else{
this.x=&#8221;0&#8243;;
this.style.backgroundColor=(this.sectionRowIndex%2==0)?a:b;
}
}
t[i].onmouseover=function(){
if(this.x!=&#8221;1&#8243;)this.style.backgroundColor=c;
}
t[i].onmouseout=function(){
if(this.x!=&#8221;1&#8243;)this.style.backgroundColor=(this.sectionRowIndex%2==0)?a:b;
}
}
}
&#8211;&#62;&#60;/script&#62;
&#60;body&#62;
&#60;table width=&#8221;500&#8243; border=&#8221;0&#8243; cellspacing=&#8221;0&#8243; cellpadding=&#8221;0&#8243; id=&#8221;ejiaA1&#8243;&#62;
&#60;tr&#62;
&#60;td colspan=&#8221;4&#8243;&#62;&#60;span&#62;&#60;span&#62;&#60;a href=http://www.seoweb0sh.com target=&#8221;_blank&#8221;&#62;上海SEO&#60;/a&#62;&#60;/span&#62;　　当前页：&#60;span&#62;第1页 共2页 &#60;/span&#62;　　总次数：&#60;span&#62;66&#60;/span&#62;　　总时长：&#60;span&#62;284小时36分27秒&#60;/span&#62;&#60;/span&#62;&#60;/td&#62;
&#60;/tr&#62;
&#60;tr&#62;
&#60;th&#62;接入方式&#60;/th&#62;&#60;th&#62;上网时间&#60;/th&#62;&#60;th&#62;下网时间&#60;/th&#62;&#60;th&#62;上网时长&#60;/th&#62;
&#60;/tr&#62;
&#60;tr&#62;
&#60;td&#62;宽带接入&#60;/td&#62;
&#60;td&#62;2008-4-23　12:40:18&#60;/td&#62;
&#60;td&#62;2008-4-23　14:50:28&#60;/td&#62;
&#60;td&#62;2小时10分10秒&#60;/td&#62;
&#60;/tr&#62;
&#60;tr&#62;
&#60;td&#62;宽带接入&#60;/td&#62;
&#60;td&#62;2008-4-23　12:40:18&#60;/td&#62;
&#60;td&#62;2008-4-23　14:50:28&#60;/td&#62;
&#60;td&#62;2小时10分10秒&#60;/td&#62;
&#60;/tr&#62;
&#60;tr&#62;
&#60;td&#62;宽带接入&#60;/td&#62;
&#60;td&#62;2008-4-23　12:40:18&#60;/td&#62;
&#60;td&#62;2008-4-23　14:50:28&#60;/td&#62;
&#60;td&#62;2小时10分10秒&#60;/td&#62;
&#60;/tr&#62;
&#60;tr&#62;
&#60;td&#62;宽带接入&#60;/td&#62;
&#60;td&#62;2008-4-23　12:40:18&#60;/td&#62;
&#60;td&#62;2008-4-23　14:50:28&#60;/td&#62;
&#60;td&#62;2小时10分10秒&#60;/td&#62;
&#60;/tr&#62;
&#60;tr&#62;
&#60;td&#62;宽带接入&#60;/td&#62;
&#60;td&#62;2008-4-23　12:40:18&#60;/td&#62;
&#60;td&#62;2008-4-23　14:50:28&#60;/td&#62;
&#60;td&#62;2小时10分10秒&#60;/td&#62;
&#60;/tr&#62;
&#60;tr&#62;
&#60;td&#62;宽带接入&#60;/td&#62;
&#60;td&#62;2008-4-23　12:40:18&#60;/td&#62;
&#60;td&#62;2008-4-23　14:50:28&#60;/td&#62;
&#60;td&#62;2小时10分10秒&#60;/td&#62;
&#60;/tr&#62;
&#60;/table&#62;
&#60;script language=&#8221;javascript&#8221;&#62;&#60;!&#8211;
//ejiaA1(&#8221;表格名称&#8221;,&#8221;奇数行背景&#8221;,&#8221;偶数行背景&#8221;,&#8221;鼠标经过背景&#8221;,&#8221;点击后背景&#8221;);
ejiaA1(&#8221;ejiaA1&#8243;,&#8221;#fff&#8221;,&#8221;#F5F5F5&#8243;,&#8221;#FFFFCC&#8221;,&#8221;#FFFF84&#8243;);
&#8211;&#62;&#60;/script&#62;
&#60;/body&#62;
&#60;/html&#62;
]]></description>
			<content:encoded><![CDATA[<p>在网站制作过程中我们会经常遇到表格处理数据，当然要想做的好看点就要运用到CSS隔行换色了。这相表格才会看上去不那么呆板。<br />
<span id="more-978"></span></p>
<p>&lt;html&gt;<br />
&lt;head&gt;<br />
&lt;meta http-equiv=&#8221;Content-Type&#8221; content=&#8221;text/html; charset=gb2312&#8243; /&gt;<br />
&lt;title&gt;选中表格行变色标记效果 by okajax.com&lt;/title&gt;<br />
&lt;style type=&#8221;text/css&#8221;&gt;<br />
&lt;!&#8211;<br />
#ejiaA1 {<br />
width: 550px;<br />
border-top: #E3E3E3 1px solid;<br />
border-left: #E3E3E3 1px solid;<br />
}<br />
#ejiaA1 td,#ejiaA1 th {<br />
padding: 5px;border-right: #E3E3E3 1px solid;<br />
border-bottom: #E3E3E3 1px solid;<br />
font-size:12px;<br />
height:16px; line-height:16px;<br />
}</p>
<p>#ejiaA1 tr td span {color: #686868}<br />
#ejiaA1 tr td span.st1 {color: #ff0000}<br />
&#8211;&gt;<br />
&lt;/style&gt;<br />
&lt;/head&gt;<br />
&lt;script language=&#8221;javascript&#8221;&gt;&lt;!&#8211;<br />
function ejiaA1(o,a,b,c,d){<br />
var t=document.getElementById(o).getElementsByTagName(&#8221;tr&#8221;);<br />
for(var i=0;i&lt;t.length;i++){<br />
t[i].style.backgroundColor=(t[i].sectionRowIndex%2==0)?a:b;<br />
t[i].onclick=function(){<br />
if(this.x!=&#8221;1&#8243;){<br />
this.x=&#8221;1&#8243;;//本来打算直接用背景色判断，FF获取到的背景是RGB值，不好判断<br />
this.style.backgroundColor=d;<br />
}else{<br />
this.x=&#8221;0&#8243;;<br />
this.style.backgroundColor=(this.sectionRowIndex%2==0)?a:b;<br />
}<br />
}<br />
t[i].onmouseover=function(){<br />
if(this.x!=&#8221;1&#8243;)this.style.backgroundColor=c;<br />
}<br />
t[i].onmouseout=function(){<br />
if(this.x!=&#8221;1&#8243;)this.style.backgroundColor=(this.sectionRowIndex%2==0)?a:b;<br />
}<br />
}<br />
}<br />
&#8211;&gt;&lt;/script&gt;<br />
&lt;body&gt;</p>
<p>&lt;table width=&#8221;500&#8243; border=&#8221;0&#8243; cellspacing=&#8221;0&#8243; cellpadding=&#8221;0&#8243; id=&#8221;ejiaA1&#8243;&gt;<br />
&lt;tr&gt;<br />
&lt;td colspan=&#8221;4&#8243;&gt;&lt;span&gt;&lt;span&gt;&lt;a href=http://www.seoweb0sh.com target=&#8221;_blank&#8221;&gt;上海SEO&lt;/a&gt;&lt;/span&gt;　　当前页：&lt;span&gt;第1页 共2页 &lt;/span&gt;　　总次数：&lt;span&gt;66&lt;/span&gt;　　总时长：&lt;span&gt;284小时36分27秒&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;th&gt;接入方式&lt;/th&gt;&lt;th&gt;上网时间&lt;/th&gt;&lt;th&gt;下网时间&lt;/th&gt;&lt;th&gt;上网时长&lt;/th&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;宽带接入&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　12:40:18&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　14:50:28&lt;/td&gt;<br />
&lt;td&gt;2小时10分10秒&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;宽带接入&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　12:40:18&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　14:50:28&lt;/td&gt;<br />
&lt;td&gt;2小时10分10秒&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;宽带接入&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　12:40:18&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　14:50:28&lt;/td&gt;<br />
&lt;td&gt;2小时10分10秒&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;宽带接入&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　12:40:18&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　14:50:28&lt;/td&gt;<br />
&lt;td&gt;2小时10分10秒&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;宽带接入&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　12:40:18&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　14:50:28&lt;/td&gt;<br />
&lt;td&gt;2小时10分10秒&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;宽带接入&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　12:40:18&lt;/td&gt;<br />
&lt;td&gt;2008-4-23　14:50:28&lt;/td&gt;<br />
&lt;td&gt;2小时10分10秒&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/table&gt;<br />
&lt;script language=&#8221;javascript&#8221;&gt;&lt;!&#8211;<br />
//ejiaA1(&#8221;表格名称&#8221;,&#8221;奇数行背景&#8221;,&#8221;偶数行背景&#8221;,&#8221;鼠标经过背景&#8221;,&#8221;点击后背景&#8221;);<br />
ejiaA1(&#8221;ejiaA1&#8243;,&#8221;#fff&#8221;,&#8221;#F5F5F5&#8243;,&#8221;#FFFFCC&#8221;,&#8221;#FFFF84&#8243;);</p>
<p>&#8211;&gt;&lt;/script&gt;</p>
<p>&lt;/body&gt;<br />
&lt;/html&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.seoweb-sh.com/978.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS hack</title>
		<link>http://www.seoweb-sh.com/898.html</link>
		<comments>http://www.seoweb-sh.com/898.html#comments</comments>
		<pubDate>Mon, 03 Aug 2009 07:45:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[DIV/CSS]]></category>
		<category><![CDATA[css hack]]></category>

		<guid isPermaLink="false">http://www.seoweb-sh.com/898.html</guid>
		<description><![CDATA[提出了“CSS hack 用CSS条件注释实现”观点。我们一并看看他的感受。开始我写的DIV结构，CSS代码，感觉还很流畅，很清晰，注释说明也写得很详细。对着Firefox三张页面的初稿完成，我发现CSS文件才7KB，自己明显地进步了不少。然后我开始在IE7 IE6下作兼容性调试，那个痛苦哇！页面没有大的差错，不外乎就是页面因为宽度问题，被挤扁了，但是小小的问题，一修正起来，要写一大段代码，有些还得修改DIV结构。靠！折腾了一天，CSS文件臃肿到了17KB。IE真不是人造的。
我这次做浏览器兼容性调试不再是使用我上次介绍的CSS HACK技术，而是新学了一招：CSS条件注释。我看到不少博客都在力荐这个方式，所以试水一下。
 
 
说明：以上例子中，第一条是给FF看的，下面的if IE 6 if IE 7判断语句是个IE6 IE7看的。这个顺序不能随便换，因为浏览器也是从上至下解释的，后面的效果覆盖前面的。然后再在IE6 IE7单独的样式文件中针对性地写代码。
　　实际上，CSS条件注释和CSS hack本质上一样，只是表现形式不同而已。条件注释把HACK代码写在了独立的CSS文件中而已。这样的优点是：CSS代码可读性强些了，更加清晰了，没有杂乱的HACK符号。缺点是：在IE6 7 单独的CSS文件中写的语句，支离破碎，以后要想修改，维护起来特别麻烦。如果你的ID CLASS命名比较规范，比较语义化，那还好点。
　　总结：如果你的XHTML页面体积小，就用一般的CSS HACK方法，直接写在一个样式文件里吧。页面大了再考虑CSS条件注释。
]]></description>
			<content:encoded><![CDATA[<p>提出了“CSS hack 用CSS条件注释实现”观点。我们一并看看他的感受。开始我写的DIV结构，CSS代码，感觉还很流畅，很清晰，注释说明也写得很详细。对着Firefox三张页面的初稿完成，我发现CSS文件才7KB，自己明显地进步了不少。然后我开始在IE7 IE6下作兼容性调试，那个痛苦哇！页面没有大的差错，不外乎就是页面因为宽度问题，被挤扁了，但是小小的问题，一修正起来，要写一大段代码，有些还得修改DIV结构。靠！折腾了一天，CSS文件臃肿到了17KB。IE真不是人造的。<span id="more-898"></span><br />
我这次做浏览器兼容性调试不再是使用我上次介绍的CSS HACK技术，而是新学了一招：CSS条件注释。我看到不少博客都在力荐这个方式，所以试水一下。</p>
<p> </p>
<p> </p>
<p>说明：以上例子中，第一条是给FF看的，下面的if IE 6 if IE 7判断语句是个IE6 IE7看的。这个顺序不能随便换，因为浏览器也是从上至下解释的，后面的效果覆盖前面的。然后再在IE6 IE7单独的样式文件中针对性地写代码。<br />
　　实际上，CSS条件注释和CSS hack本质上一样，只是表现形式不同而已。条件注释把HACK代码写在了独立的CSS文件中而已。这样的优点是：CSS代码可读性强些了，更加清晰了，没有杂乱的HACK符号。缺点是：在IE6 7 单独的CSS文件中写的语句，支离破碎，以后要想修改，维护起来特别麻烦。如果你的ID CLASS命名比较规范，比较语义化，那还好点。<br />
　　总结：如果你的XHTML页面体积小，就用一般的CSS HACK方法，直接写在一个样式文件里吧。页面大了再考虑CSS条件注释。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.seoweb-sh.com/898.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
