<?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>妙味课堂</title>
	<atom:link href="http://www.miaov.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.miaov.com</link>
	<description>——带你享受极富人情味的 IT 培训体验</description>
	<lastBuildDate>Wed, 03 Mar 2010 13:01:41 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>设置漂亮的中文字体</title>
		<link>http://www.miaov.com/439.html</link>
		<comments>http://www.miaov.com/439.html#comments</comments>
		<pubDate>Wed, 03 Mar 2010 13:01:41 +0000</pubDate>
		<dc:creator>leo</dc:creator>
				<category><![CDATA[XHTML+CSS]]></category>
		<category><![CDATA[字体设置]]></category>

		<guid isPermaLink="false">http://www.miaov.com/?p=439</guid>
		<description><![CDATA[有许多设计类型的网站，设计师都喜欢将页面字体设计成这样：
妙味课堂（www.miaov.com）——带你享受极富人情味的IT培训体验
上面的例子用到了三种字体，从左到右分别是：微软雅黑、Arial 和 楷体。
其实它的设置方式很简单，代码如下：
微软雅黑：&#60;span style=&#8221;font-family: Microsoft YaHei&#8220;&#62;微软雅黑&#60;/span&#62;
Arial：&#60;span style=&#8221;font-family: arial&#8220;&#62;英文一般采用 arial 字体&#60;/span&#62;
楷体：&#60;span style=&#8221;font-family: 楷体_gb2312&#8220;&#62;楷体_gb2312 普通字体&#60;/span&#62;
]]></description>
			<content:encoded><![CDATA[<p>有许多设计类型的网站，设计师都喜欢将页面字体设计成这样：</p>
<p><strong style="font-family: Microsoft YaHei; font-size: 24px;">妙味课堂</strong>（<a style="font-family: arial; font-size: 22px;" href="http://www.miaov.com">www.miaov.com</a>）——<strong style="font-family: 楷体_gb2312; font-size: 18px; color: red;">带你享受极富人情味的IT培训体验</strong></p>
<p>上面的例子用到了三种字体，从左到右分别是：<strong>微软雅黑</strong>、<strong>Arial</strong> 和 <strong>楷体</strong>。</p>
<p>其实它的设置方式很简单，代码如下：</p>
<p>微软雅黑：&lt;span style=&#8221;font-family: <strong>Microsoft YaHei</strong>&#8220;&gt;微软雅黑&lt;/span&gt;</p>
<p>Arial：&lt;span style=&#8221;font-family: <strong>arial</strong>&#8220;&gt;英文一般采用 arial 字体&lt;/span&gt;</p>
<p>楷体：&lt;span style=&#8221;font-family: <strong>楷体_gb2312</strong>&#8220;&gt;楷体_gb2312 普通字体&lt;/span&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.miaov.com/439.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>另类的清除浮动方式：绝对定位、固定定位</title>
		<link>http://www.miaov.com/429.html</link>
		<comments>http://www.miaov.com/429.html#comments</comments>
		<pubDate>Sun, 10 Jan 2010 12:52:04 +0000</pubDate>
		<dc:creator>leo</dc:creator>
				<category><![CDATA[XHTML+CSS]]></category>
		<category><![CDATA[固定定位]]></category>
		<category><![CDATA[清除浮动]]></category>
		<category><![CDATA[绝对定位]]></category>

		<guid isPermaLink="false">http://www.miaov.com/?p=429</guid>
		<description><![CDATA[网上流传的清除浮动有三种方式：
一：使用空标签清除浮动。
二：使用overflow属性。
三：使用after伪对象清楚浮动。
但是今天下午和王宁同学讨论CSS问题的时候，意外的发现了另一种清除浮动的可能：
父级是 绝对定位，或者是 固定定位。
测试代码：
&#60;style&#62;
#box { width: 300px; padding: 10px; border: 1px solid #ccc;  }
#left { width: 100px; height: 100px; border: 1px solid #ccc; float: left; }
#right { width: 180px; height: 200px; border: 1px solid #ccc; float: right; }
&#60;/style&#62;
&#60;div id=&#8221;box&#8221;&#62;
&#60;div id=&#8221;left&#8221;&#62;左侧浮动层&#60;/div&#62;
&#60;div id=&#8221;right&#8221;&#62;右侧浮动层&#60;/div&#62;
&#60;/div&#62;
效果：

给父级 #box 加上固定定位、或是绝对定位：
position: absolute; /* position: fixed; */
效果：

最终css：
&#60;style&#62;
#box { width: 300px; padding: 10px; border: 1px solid [...]]]></description>
			<content:encoded><![CDATA[<p>网上流传的清除浮动有三种方式：<br />
一：使用空标签清除浮动。<br />
二：使用overflow属性。<br />
三：使用after伪对象清楚浮动。</p>
<pre>但是今天下午和王宁同学讨论CSS问题的时候，意外的发现了另一种清除浮动的可能：</pre>
<pre><strong>父级是 <span style="color: #ff0000;">绝对定位</span>，或者是 <span style="color: #ff0000;">固定定位</span>。</strong></pre>
<p>测试代码：<br />
&lt;style&gt;<br />
#box { width: 300px; padding: 10px; border: 1px solid #ccc;  }<br />
#left { width: 100px; height: 100px; border: 1px solid #ccc; float: left; }<br />
#right { width: 180px; height: 200px; border: 1px solid #ccc; float: right; }<br />
&lt;/style&gt;</p>
<p>&lt;div id=&#8221;box&#8221;&gt;<br />
&lt;div id=&#8221;left&#8221;&gt;左侧浮动层&lt;/div&gt;<br />
&lt;div id=&#8221;right&#8221;&gt;右侧浮动层&lt;/div&gt;<br />
&lt;/div&gt;</p>
<p>效果：</p>
<p><img class="alignnone size-full wp-image-430" title="1" src="http://www.miaov.com/wp-content/uploads/2010/01/12.gif" alt="1" width="340" height="241" /></p>
<p>给父级 #box 加上固定定位、或是绝对定位：<br />
position: absolute; /* position: fixed; */</p>
<p>效果：</p>
<p><img class="alignnone size-full wp-image-431" title="2" src="http://www.miaov.com/wp-content/uploads/2010/01/22.gif" alt="2" width="340" height="241" /></p>
<p>最终css：</p>
<p>&lt;style&gt;<br />
#box { width: 300px; padding: 10px; border: 1px solid #ccc; <strong><span style="color: #ff0000;">position: absolute; /* position: fixed; */</span></strong> }<br />
#left { width: 100px; height: 100px; border: 1px solid #ccc; float: left; }<br />
#right { width: 180px; height: 200px; border: 1px solid #ccc; float: right; }<br />
&lt;/style&gt;</p>
<p><span style="color: #888888;">注：在 ie6、ie7、ie8、Firefox/3.5.7、Safari/4.0.4、Opera/9.50 下测试通过。</span></p>
<p>在很多时候，用 js 来调用某个层出现，无论是弹出层，亦或是鼠标移入出现层，父级都有可能是绝对定位，相比较另外三种清除浮动的优劣，这种方式近乎于无缺陷。</p>
<p><strong><span style="color: #888888;">此外，</span>absolute 和 fixed <span style="color: #888888;">这二种定位形式也可以让</span> 内嵌元素 <span style="color: #888888;">转换成</span> 块级 元素<span style="color: #888888;">，</span></strong></p>
<p><strong><span style="color: #888888;"><span style="color: #ff0000;">测试代码：</span></span></strong></p>
<p><strong><span style="color: #888888;"><span style="color: #888888;">&lt;span style=&#8221;border: 1px solid red; width: 100px; height: 200px; position: absolute;&#8221;&gt;span&lt;/span&gt;</span></span></strong></p>
<p><strong><span style="color: #888888;"><span style="color: #ff0000;">或是：</span></span></strong></p>
<p><strong><span style="color: #888888;"><span style="color: #888888;">&lt;span style=&#8221;border: 1px solid red; width: 100px; height: 200px; position: fixed;&#8221;&gt;span&lt;/span&gt;</span></span></strong></p>
<p><strong><span style="color: #888888;"><br />
</span></strong></p>
<p>感谢王宁同学，如果没有和你一起讨论，还发现不了这个秘密(^_^)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.miaov.com/429.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>javascript列表展示效果</title>
		<link>http://www.miaov.com/409.html</link>
		<comments>http://www.miaov.com/409.html#comments</comments>
		<pubDate>Thu, 05 Nov 2009 03:24:18 +0000</pubDate>
		<dc:creator>leo</dc:creator>
				<category><![CDATA[JavaScript+JQuery]]></category>
		<category><![CDATA[js效果]]></category>
		<category><![CDATA[展开列表]]></category>

		<guid isPermaLink="false">http://www.miaov.com/?p=409</guid>
		<description><![CDATA[要实现的效果如图所示：

当鼠标滑动时，当前&#60;li&#62;的内容展开更多信息。
要实现这个效果，关键不是JS，而是CSS，需要在&#60;li&#62;标签内，用二个 class 分别控制列表的正常的显示效果[".normal"]以及展开的显示效果[".active"]，把样式写好以后，再用JS来实现：
当鼠标移入时，所有的&#60;li&#62;标签类名为 .normal，只有当前的&#60;li&#62;标签类名为 .active
&#62;&#62;效果展示
&#62;&#62;下载代码
]]></description>
			<content:encoded><![CDATA[<p>要实现的效果如图所示：</p>
<p><img class="alignnone size-full wp-image-410" title="js-list" src="http://www.miaov.com/wp-content/uploads/2009/11/js-list.gif" alt="js-list" width="302" height="194" /></p>
<p>当鼠标滑动时，当前&lt;li&gt;的内容展开更多信息。</p>
<p>要实现这个效果，关键不是JS，而是CSS，需要在&lt;li&gt;标签内，用二个 class 分别控制列表的正常的显示效果[".normal"]以及展开的显示效果[".active"]，把样式写好以后，再用JS来实现：</p>
<p>当鼠标移入时，所有的&lt;li&gt;标签类名为 .normal，只有当前的&lt;li&gt;标签类名为 .active</p>
<p><a href="http://www.miaov.com/demo/list/demo.html" target="_blank">&gt;&gt;效果展示</a></p>
<p><a href="http://www.miaov.com/demo/list.rar">&gt;&gt;下载代码</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.miaov.com/409.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>翻页代码居中的问题</title>
		<link>http://www.miaov.com/402.html</link>
		<comments>http://www.miaov.com/402.html#comments</comments>
		<pubDate>Thu, 05 Nov 2009 02:58:05 +0000</pubDate>
		<dc:creator>leo</dc:creator>
				<category><![CDATA[XHTML+CSS]]></category>
		<category><![CDATA[居中]]></category>
		<category><![CDATA[翻页]]></category>

		<guid isPermaLink="false">http://www.miaov.com/?p=402</guid>
		<description><![CDATA[今天被网友问到一个效果：让翻页代码在页面上永远居中，无论页码数量增多或是减少。
效果图如下：

我最近用 JS 写特效比较多，所以看到这个问题，我第一感觉就是用 JS 方式实现，思路是：
先给翻页代码的父级元素一个居中样式：margin: 0 auto;
然后使用 JS 去动态获取翻页代码内所有元素的宽度，再把这个宽给父级，实现居中。
用这个思路实现了以后，感觉有点不妥，应该有更简单的解决方法才对，后来跟一位在酷6上班的朋友说起这个效果，
她说用CSS实现很简单呀，不需要用JS的，她的代码如下：
XHTML部分：
&#60;div id=&#8221;page&#8221;&#62;
 &#60;a href=&#8221;#&#8221;&#62;上一页&#60;/a&#62;
 &#60;a href=&#8221;#&#8221;&#62;1&#60;/a&#62;
 &#60;a href=&#8221;#&#8221;&#62;2&#60;/a&#62;  
 &#60;a href=&#8221;#&#8221;&#62;3&#60;/a&#62;
 &#60;a href=&#8221;#&#8221;&#62;下一页&#60;/a&#62;
&#60;/div&#62;
CSS部分：
#page{ text-align:center; height:30px; line-height:30px; }
a { padding: 3px 5px; font-family: Arial; font-size: 14px; color: #333; background: #eee; border: 1px solid #ccc; margin-right: 2px; text-decoration: none; }
a:hover { background: red; color: #fff; border: 1px solid #000;}
 
事后，她笑我：你是对着 JS 代码太久了吧？简单的问题你都用复杂的思路去解决？？
很惭愧，也很受用……向这位朋友学习～··写下此篇，以提醒自己今后解决问题的思路一定要化繁为简。
&#62;&#62;点击这里查看效果
]]></description>
			<content:encoded><![CDATA[<p>今天被网友问到一个效果：让翻页代码在页面上永远居中，无论页码数量增多或是减少。<br />
效果图如下：</p>
<p><img class="alignnone size-full wp-image-406" title="page" src="http://www.miaov.com/wp-content/uploads/2009/11/page1.gif" alt="page" width="208" height="24" /></p>
<p>我最近用 JS 写特效比较多，所以看到这个问题，我第一感觉就是用 JS 方式实现，思路是：</p>
<p>先给翻页代码的父级元素一个居中样式：margin: 0 auto;</p>
<p>然后使用 JS 去动态获取翻页代码内所有元素的宽度，再把这个宽给父级，实现居中。</p>
<p>用这个思路实现了以后，感觉有点不妥，应该有更简单的解决方法才对，后来跟一位在酷6上班的朋友说起这个效果，</p>
<p>她说用CSS实现很简单呀，不需要用JS的，她的代码如下：</p>
<p>XHTML部分：</p>
<p>&lt;div id=&#8221;page&#8221;&gt;<br />
 &lt;a href=&#8221;#&#8221;&gt;上一页&lt;/a&gt;<br />
 &lt;a href=&#8221;#&#8221;&gt;1&lt;/a&gt;<br />
 &lt;a href=&#8221;#&#8221;&gt;2&lt;/a&gt;  <br />
 &lt;a href=&#8221;#&#8221;&gt;3&lt;/a&gt;<br />
 &lt;a href=&#8221;#&#8221;&gt;下一页&lt;/a&gt;<br />
&lt;/div&gt;</p>
<p>CSS部分：</p>
<p>#page{ text-align:center; height:30px; line-height:30px; }<br />
a { padding: 3px 5px; font-family: Arial; font-size: 14px; color: #333; background: #eee; border: 1px solid #ccc; margin-right: 2px; text-decoration: none; }<br />
a:hover { background: red; color: #fff; border: 1px solid #000;}</p>
<p> </p>
<p>事后，她笑我：你是对着 JS 代码太久了吧？简单的问题你都用复杂的思路去解决？？</p>
<p>很惭愧，也很受用……向这位朋友学习～··写下此篇，以提醒自己今后解决问题的思路一定要化繁为简。</p>
<p><a href="http://www.miaov.com/demo/page.html" target="_blank">&gt;&gt;点击这里查看效果</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.miaov.com/402.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>设置等高布局</title>
		<link>http://www.miaov.com/395.html</link>
		<comments>http://www.miaov.com/395.html#comments</comments>
		<pubDate>Mon, 19 Oct 2009 10:28:35 +0000</pubDate>
		<dc:creator>leo</dc:creator>
				<category><![CDATA[XHTML+CSS]]></category>
		<category><![CDATA[css布局]]></category>
		<category><![CDATA[等高设置]]></category>

		<guid isPermaLink="false">http://www.miaov.com/?p=395</guid>
		<description><![CDATA[什么是等高布局？
——无论页面左侧高度发生变化、还是右侧变化，左右二边的高度在视觉上始终都是一样的。
原理：在父级设置1px高的背景图片，并设计 y 轴方向平铺：repeat-y，用图片的方式代替背景色，在视觉上达到等高的效果。

另外，网上有一种设置填充与边距最大值的实现方式（padding-bottom: 999999px; margin-bottom: -999999px;），似乎只能兼容 IE8、Firefox，
&#62;&#62;点此下载
]]></description>
			<content:encoded><![CDATA[<p><strong>什么是等高布局？</strong><br />
——无论页面左侧高度发生变化、还是右侧变化，左右二边的高度在视觉上始终都是一样的。</p>
<p>原理：在父级设置1px高的背景图片，并设计 y 轴方向平铺：repeat-y，用图片的方式代替背景色，在视觉上达到等高的效果。</p>
<p><iframe width="646" height="420" src="http://www.miaov.com/demo/sameness/sameness.html" frameBorder="0" scrolling="no" allowTransparency="allowtransparency"></iframe></p>
<p>另外，网上有一种设置填充与边距最大值的实现方式（padding-bottom: 999999px; margin-bottom: -999999px;），似乎只能兼容 IE8、Firefox，<br />
<a href="http://www.miaov.com/demo/sameness.rar">&gt;&gt;点此下载</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.miaov.com/395.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JQuery 性能优化指南</title>
		<link>http://www.miaov.com/392.html</link>
		<comments>http://www.miaov.com/392.html#comments</comments>
		<pubDate>Mon, 19 Oct 2009 09:42:59 +0000</pubDate>
		<dc:creator>leo</dc:creator>
				<category><![CDATA[JavaScript+JQuery]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[性能]]></category>

		<guid isPermaLink="false">http://www.miaov.com/?p=392</guid>
		<description><![CDATA[网上摘抄整理：
1. 尽可能用 ID 选择器
var $but = $(&#8221;#content .button&#8221;);
2. 就近选择多个元素
var $p = $(&#8221;#content p&#8221;);
3. 用一个标签名来限制 class (并且不要忘记加上就近的ID)，尽可能不要使用 $(&#8221;.box&#8221;)，可以是
$(&#8221;div.box&#8221;)、$(&#8221;#head .box&#8221;)、$(&#8221;#head ul.box&#8221;)
比如选择 class 名为 .on 的元素：
&#60;ul id=&#8221;list&#8221;&#62;
&#60;li&#62;&#60;p&#62;JQuery&#60;/p&#62;&#60;/li&#62;
&#60;/ul&#62;
var $p_on = $(&#8221;#list p.on&#8221;);
4. 将 JQuery 对象缓存起来
var $but = $(&#8221;#content .button&#8221;);
$but.click(function() { alert(1); });
5. 掌握强大的链式操作
var $box = $(&#8221;#box&#8221;);
$box.click(function() {
 $(this).css(&#8221;border&#8221;, &#8220;3px dashed yellow&#8221;).fadeIn(&#8221;slow&#8221;);
});
6. 像这样绑定事件是低效的:
$(&#8221;#entryform input&#8221;).bind(&#8221;focus&#8221;, function(){
 $(this).addClass(&#8221;selected&#8221;);
}).bind(&#8221;blur&#8221;, function(){
 $(this).removeClass(&#8221;selected&#8221;);
});
我们需要在父级监听获取焦点和失去焦点的事件:
$(&#8221;#entryform&#8221;).bind(&#8221;focus&#8221;, function(e){
 var $cell = $(e.target); // [...]]]></description>
			<content:encoded><![CDATA[<p><strong>网上摘抄整理：</strong></p>
<p>1. 尽可能用 ID 选择器<br />
var $but = $(&#8221;#content .button&#8221;);</p>
<p>2. 就近选择多个元素<br />
var $p = $(&#8221;#content p&#8221;);</p>
<p>3. 用一个标签名来限制 class (并且不要忘记加上就近的ID)，尽可能不要使用 $(&#8221;.box&#8221;)，可以是</p>
<p>$(&#8221;div.box&#8221;)、$(&#8221;#head .box&#8221;)、$(&#8221;#head ul.box&#8221;)<br />
比如选择 class 名为 .on 的元素：<br />
&lt;ul id=&#8221;list&#8221;&gt;<br />
&lt;li&gt;&lt;p&gt;JQuery&lt;/p&gt;&lt;/li&gt;<br />
&lt;/ul&gt;<br />
var $p_on = $(&#8221;#list p.on&#8221;);</p>
<p>4. 将 JQuery 对象缓存起来<br />
var $but = $(&#8221;#content .button&#8221;);<br />
$but.click(function() { alert(1); });</p>
<p>5. 掌握强大的链式操作<br />
var $box = $(&#8221;#box&#8221;);<br />
$box.click(function() {<br />
 $(this).css(&#8221;border&#8221;, &#8220;3px dashed yellow&#8221;).fadeIn(&#8221;slow&#8221;);<br />
});</p>
<p>6. 像这样绑定事件是低效的:<br />
$(&#8221;#entryform input&#8221;).bind(&#8221;focus&#8221;, function(){<br />
 $(this).addClass(&#8221;selected&#8221;);<br />
}).bind(&#8221;blur&#8221;, function(){<br />
 $(this).removeClass(&#8221;selected&#8221;);<br />
});</p>
<p>我们需要在父级监听获取焦点和失去焦点的事件:<br />
$(&#8221;#entryform&#8221;).bind(&#8221;focus&#8221;, function(e){<br />
 var $cell = $(e.target); // e.target 触发事件的节点<br />
 $cell.addClass(&#8221;selected&#8221;);<br />
}).bind(&#8221;blur&#8221;, function(e){<br />
 var $cell = $(e.target);<br />
 $cell.removeClass(&#8221;selected&#8221;);<br />
});</p>
<p>未完待续……</p>
]]></content:encoded>
			<wfw:commentRss>http://www.miaov.com/392.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE6、IE7、IE8、Firefox 都兼容的 CSS HACK 代码</title>
		<link>http://www.miaov.com/384.html</link>
		<comments>http://www.miaov.com/384.html#comments</comments>
		<pubDate>Mon, 19 Oct 2009 08:58:26 +0000</pubDate>
		<dc:creator>leo</dc:creator>
				<category><![CDATA[XHTML+CSS]]></category>
		<category><![CDATA[css hack代码]]></category>
		<category><![CDATA[兼容性]]></category>

		<guid isPermaLink="false">http://www.miaov.com/?p=384</guid>
		<description><![CDATA[写在前面很严肃的话：
我们的浏览器，有各种各样的 bug，这在前面的一篇文章里略有介绍。
在解决浏览器兼容性问题的时候，我们也有许多办法，但有时候尝试了各种各样的办法，仍然不能使页面的某些细微之处兼容每一个浏览器，因此，我们才使用 css hack 代码，解决那些顽固的浏览器兼容性问题——请注意：它只是为了解决真正的浏览器之间不兼容的现象，而不是帮助我们解决任何的页面错位问题！！
有时候，我们页面之所以出现错位，是因为我们的样式或者结构设置不合理，在这种情况下，一定要找出导致页面不兼容的真正原因，千万不要轻易使用 css hack 代码，以免造成下一个浏览器版本不兼容、以及为下一个页面错位的问题埋下隐患！！！
好了，下面是 css hack 代码：
div {
 width: 100px; height: 100px;
 background: red;        /* 所有浏览器都识别 */
 background: blue\9;    /* IE6、IE7、IE8 识别 */
 +background: yellow;  /* IE6、IE7 识别 */
 _background: green;   /* 仅 IE6 识别 */
}
注意：这个顺序是利用CSS优先级的顺序排列，不可颠倒。
这个 div 在各个浏览器下的呈现效果：

]]></description>
			<content:encoded><![CDATA[<p><strong>写在前面很严肃的话：<br />
</strong>我们的浏览器，有各种各样的 bug，这在前面的<a title="常见的浏览器bug" href="http://www.miaov.com/361.html" target="_self">一篇文章</a>里略有介绍。<br />
在解决浏览器兼容性问题的时候，我们也有许多办法，但有时候尝试了各种各样的办法，仍然不能使页面的某些细微之处兼容每一个浏览器，因此，我们才使用 css hack 代码，解决那些顽固的浏览器兼容性问题——<strong>请注意：它只是为了解决真正的浏览器之间不兼容的现象，而不是帮助我们解决任何的页面错位问题！！<br />
</strong>有时候，我们页面之所以出现错位，是因为我们的样式或者结构设置不合理，在这种情况下，一定要找出导致页面不兼容的真正原因，千万不要轻易使用 css hack 代码，以免造成下一个浏览器版本不兼容、以及为下一个页面错位的问题埋下隐患！！！</p>
<p>好了，下面是 css hack 代码：</p>
<p><strong>div {<br />
</strong> width: 100px; height: 100px;<br />
<strong> background: red;        /* 所有浏览器都识别 */<br />
 background: blue\9;    /* IE6、IE7、IE8 识别 */<br />
 +background: yellow;  /* IE6、IE7 识别 */<br />
 _background: green;   /* 仅 IE6 识别 */<br />
}</strong></p>
<p><strong>注意：这个顺序是利用CSS优先级的顺序排列，不可颠倒。</strong></p>
<p>这个 div 在各个浏览器下的呈现效果：</p>
<p><img class="alignnone size-full wp-image-385" title="browser" src="http://www.miaov.com/wp-content/uploads/2009/10/browser.jpg" alt="browser" width="566" height="628" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.miaov.com/384.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>浏览器常见的BUG</title>
		<link>http://www.miaov.com/361.html</link>
		<comments>http://www.miaov.com/361.html#comments</comments>
		<pubDate>Mon, 19 Oct 2009 05:57:15 +0000</pubDate>
		<dc:creator>leo</dc:creator>
				<category><![CDATA[XHTML+CSS]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[ie6]]></category>
		<category><![CDATA[浏览器]]></category>

		<guid isPermaLink="false">http://www.miaov.com/?p=361</guid>
		<description><![CDATA[首先说明一点：
页面错位不等于浏览器BUG，BUG是指设置了正确的CSS，浏览器却不以预期的样式呈现。
比如设置了某个元素：margin-left: 10px; 但是在浏览器中，
这个 DIV 元素实际呈现的却是：margin-left: 20px;
——在这种情况下才有可能是浏览器 BUG。
1.上下 margin 叠加问题——这个问题不属于浏览器的BUG，但却容易让学习CSS的朋友误解：
现在有二个元素： div1 和 div2，div1 的下面有 10px 的外边距，div2 的上面有 10px 的外边距，
样式如下：
#div1 { width: 100px; height: 100px; background: #eee; margin-bottom:10px; }
#div2 { width: 100px; height: 100px; background: #eee; margin-top:10px; }
结构如下：
&#60;div id=&#8221;div1&#8243;&#62;div1&#60;/div&#62;
&#60;div id=&#8221;div2&#8243;&#62;div2&#60;/div&#62;
我们原本期望这二个 div 之间距离是 20px，然而效果却是这样：

也就是说：这二个 div 之间，有 10px 的空间被叠加在一起。
假如把 div1 的 margin-bottom 增加到 15px，那么它们之间的距离就成了 15px，
仍然有 10px 的空间被叠加起来。
*解决方法：给这二个 div 多加二个样式：float: [...]]]></description>
			<content:encoded><![CDATA[<p><strong>首先说明一点：</strong></p>
<p>页面错位不等于浏览器BUG，BUG是指设置了正确的CSS，浏览器却不以预期的样式呈现。</p>
<p>比如设置了某个元素：margin-left: 10px; 但是在浏览器中，</p>
<p>这个 DIV 元素实际呈现的却是：margin-left: 20px;</p>
<p>——在这种情况下才有可能是浏览器 BUG。</p>
<p><strong>1.上下 margin 叠加问题——这个问题不属于浏览器的BUG，但却容易让学习CSS的朋友误解：</strong></p>
<p>现在有二个元素： div1 和 div2，<strong>div1 的下面</strong>有 10px 的外边距，<strong>div2 的上面</strong>有 10px 的外边距，</p>
<p>样式如下：<br />
#div1 { width: 100px; height: 100px; background: #eee; <strong>margin-bottom:10px;</strong> }<br />
#div2 { width: 100px; height: 100px; background: #eee; <strong>margin-top:10px;</strong> }</p>
<p>结构如下：<br />
&lt;div id=&#8221;div1&#8243;&gt;div1&lt;/div&gt;<br />
&lt;div id=&#8221;div2&#8243;&gt;div2&lt;/div&gt;</p>
<p>我们原本期望这二个 div 之间距离是 <strong>20px</strong>，然而效果却是这样：</p>
<p><img class="alignnone size-full wp-image-362" title="bug1" src="http://www.miaov.com/wp-content/uploads/2009/10/bug1.gif" alt="bug1" width="271" height="272" /></p>
<p>也就是说：这二个 div 之间，有 10px 的空间被<strong>叠加</strong>在一起。<br />
假如把 div1 的 margin-bottom 增加到 15px，那么它们之间的距离就成了 15px，<br />
仍然有 10px 的空间被叠加起来。</p>
<p><strong>*解决方法：</strong>给这二个 div 多加二个样式：<strong>float: left; clear: left;</strong></p>
<p>最终样式：<br />
#div1 { width: 100px; height: 100px; background: #eee; margin-bottom: 10px;<strong> float: left; clear: left;</strong> }<br />
#div2 { width: 100px; height: 100px; background: #eee; margin-top: 10px; <strong>float: left; clear: left;</strong> }</p>
<p>最终效果图：</p>
<p><img class="alignnone size-full wp-image-363" title="bug2" src="http://www.miaov.com/wp-content/uploads/2009/10/bug2.gif" alt="bug2" width="271" height="272" /></p>
<p><strong>2. IE6 浮动 margin 双边距 bug</strong></p>
<p>设置一个父级元素 box 和一个子级元素 childbox，</p>
<p>子级元素设置左浮动，并且还设置左边距 10px ：</p>
<p>样式如下：</p>
<p>#box { width: 200px; height: 150px; border: 1px solid #ccc; }<br />
#childbox { width: 100px; height: 100px; background: red;</p>
<p><strong>float: left; margin-left: 10px;</strong> }</p>
<p>结构如下：</p>
<p>&lt;div id=&#8221;box&#8221;&gt;</p>
<p>&lt;div id=&#8221;childbox&#8221;&gt;childbox&lt;/div&gt;</p>
<p>&lt;/div&gt;</p>
<p>这样设置以后，在 Firefox、ie7、ie8 下都正常显示，可是在 ie6 下，显示成这样：</p>
<p><img class="alignnone size-full wp-image-369" title="bug3" src="http://www.miaov.com/wp-content/uploads/2009/10/bug3.gif" alt="bug3" width="203" height="222" /></p>
<p>我们明明只给了左边距为 <strong>10px！！——</strong>如果把 10px 改成 <strong>20px</strong> 的话，ie6 下就会变成 <strong>40px！！</strong>由此可见，在这种情况下，ie6 对 margin-left 的解释就是在原来的值上多加了一倍！！</p>
<p><strong>*解决方法：</strong>给子级元素 childbox 添加一行样式：<strong>display: inline;</strong></p>
<p>最终样式：</p>
<p>#box { width: 200px; height: 150px; border: 1px solid #ccc; }<br />
#childbox { width: 100px; height: 100px; background: red; float: left; <strong>margin-left: 10px;</strong> <strong>display: inline;</strong> }</p>
<p><strong>最终效果图：</strong></p>
<p><strong><img class="alignnone size-full wp-image-371" title="bug4" src="http://www.miaov.com/wp-content/uploads/2009/10/bug41.gif" alt="bug4" width="203" height="222" /></strong></p>
<p><strong> </strong></p>
<p><strong>3. li 下 的 bug</strong></p>
<p>当 li 里包含了<strong>任何设置浮动的元素</strong>以后，此 bug 就会在 ie6、ie7 下出现：</p>
<p>样式如下：</p>
<p>ul,p { padding: 0; margin: 0; }<br />
li { list-style: none; }<br />
/* 清除浏览器默认样式 */</p>
<p>ul { width: 110px; }<br />
li { width: 100px; height: 20px; border: 1px solid #333; }<br />
p { width: 100px; height: 20px; <strong>float: left;</strong> }</p>
<p>结构如下：</p>
<p>&lt;ul&gt;<br />
&lt;li&gt;&lt;p&gt;p&lt;/p&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;p&gt;p&lt;/p&gt;&lt;/li&gt;<br />
&lt;/ul&gt;</p>
<p>在 ie6、ie7 里莫明奇妙多出来了几个象素：</p>
<p><img class="alignnone size-full wp-image-373" title="bug5" src="http://www.miaov.com/wp-content/uploads/2009/10/bug5.gif" alt="bug5" width="203" height="116" /></p>
<p>注意：我并没有给 li 设置 <strong>margin-bottom</strong> 的样式。</p>
<p><strong>*解决方法：</strong>给 li 多添加一行样式：<strong>float: left; </strong>并且要<strong>保证 li 拥有足够的宽</strong>，别让第二行的 li 真的浮动上来！</p>
<p><strong>最终样式：</strong></p>
<p>ul,p { padding: 0; margin: 0; }<br />
li { list-style: none; }<br />
/* 清除浏览器默认样式 */</p>
<p>ul { <strong>width: 110px;</strong> }<br />
li {<strong> width: 100px;</strong> height: 20px; border: 1px solid #333; <strong>float: left;</strong> }<br />
p { width: 100px; height: 20px; float: left; }</p>
<p><strong>4. ie6 绝对定位下的 1 象素 bug</strong></p>
<p>绝对定位真是个好样式，在众多样式之中它最可爱^_^，你希望它跑到哪去，它就跑到哪里，可惜，这样的乖孩子，也禁不住 ie6 的折磨！！</p>
<p>我们先把<strong>父级元素的宽</strong>设置成任何<strong>奇数</strong>，例如：350px，让<strong>子级元素浮动到父级右侧：</strong></p>
<p>样式如下：</p>
<p>#box { <strong>width: 155px;</strong> height: 121px; position: relative; background: red; }<br />
#childbox { width: 100px; height: 100px; position: absolute; top: 0; <strong>right: 0;</strong> background: yellow; }</p>
<p>结构如下：</p>
<p>&lt;div id=&#8221;box&#8221;&gt;<br />
&lt;div id=&#8221;childbox&#8221;&gt;&lt;/div&gt;<br />
&lt;/div&gt;</p>
<p>结果，讨厌的 1px 出现了：</p>
<p><strong><img class="alignnone size-full wp-image-380" title="bug6" src="http://www.miaov.com/wp-content/uploads/2009/10/bug61.gif" alt="bug6" width="203" height="216" /></strong></p>
<p><strong>注意看右侧，那虽然细微、但仍然很刺眼的 1px bug！！！</strong></p>
<p>如果把位置调到右下角，结果<strong>下面</strong>和<strong>右边</strong>都出现了这 <strong>1px 的 bug！！</strong></p>
<p><img class="alignnone size-full wp-image-381" title="bug7" src="http://www.miaov.com/wp-content/uploads/2009/10/bug7.gif" alt="bug7" width="203" height="216" /></p>
<p>这个细小的 bug 虽然不起眼，但如果我们用 <strong>绝对定位</strong> 来处理 <strong>圆角效果</strong> 的话，那就让人郁闷了～···</p>
<p><strong>*解决方法：最好把父级的宽设置成偶数！否则，就只能用 css hack 代码了！</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.miaov.com/361.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>被朋友问到的几个CSS小技巧</title>
		<link>http://www.miaov.com/318.html</link>
		<comments>http://www.miaov.com/318.html#comments</comments>
		<pubDate>Tue, 13 Oct 2009 16:05:26 +0000</pubDate>
		<dc:creator>leo</dc:creator>
				<category><![CDATA[XHTML+CSS]]></category>

		<guid isPermaLink="false">http://www.miaov.com/?p=318</guid>
		<description><![CDATA[被朋友们问到了关于 CSS 一些琐碎的小问题，我的感觉是：虽然这些问题很简单，但是我们在工作当中，经常会被这些琐碎的小知识点给卡住了，并非它们有多么难，可总会有不太好解决的时候，现在记录一下，以备日后查看：
1.设置：&#62;&#62;更多 而不是 &#62;&#62;更多
——相信大家注意到 更多 前面的符号了，我曾见过一段因为设置不好这个符号而直接用 图片 来代替的代码，其实它们仅仅只是字体不一样。
&#62;&#62;更多 这个 css 的字体是：font-family: &#8216;宋体&#8217;;
&#62;&#62;更多 这个 css 的字体是：font-family: Arial;
 
2. 设置自适应宽的虚线，效果图如下：

在这个效果里，左侧文字的宽度不确定，虚线要自适应文字个数的变化。
制作这个效果的思路是：使用 ul、li 结构，把图片切成 width: 4px; height: 1px; 的小点，将图片设置成 li 标签的背景，进行 x 轴方向平铺，再把包含文字标签（比如 span）的背景设为白色（与背景色同一颜色），加上内填充（padding: 0 10px;）即可。
&#62;&#62;查看效果
&#62;&#62;下载代码
 
3. 设置DIV内的下拉条，效果图如下：

布局方面不多说了，都在下面的源文件里。现在就来看看中间的下拉条如何设置：
要让某个 块级元素 内出现下拉条效果，先要给它固定的高、宽，也就是要限定它的范围，接着加上 CSS 样式：overflow: auto;
这句意思是：当元素内容有超出的部分，就自动显示，下拉条也就出现了。
现在，要让下拉条出现在右侧，而不要让它在底端也出现，还需要做一些设置：
让子级元素的 宽 小于父级的宽，比如父级元素的宽是 100px，减去下拉条的宽（IE8下拉条的宽是 14px），那子级元素的宽度为：82px; ——等等，为什么不是 86px ？？
原因：IE6、IE7 与 IE8、火狐 对于 下拉条的宽度 的显示尺寸是不一样的，IE6、IE7下拉条的宽度要略大于 IE8、火狐的宽，所以在设置子级宽度的时候，最好少设置几个像素，以免出现下面这种情况：

另外，还有一种情况，当效果图是这样的时候：

子级的高并没有超出父级的高，也希望下拉条显示出来，样式设置如下：overflow-y: scroll;
意思是：让元素的 Y轴 出现滚动条（卷轴）。
最终效果如下所示，鼠标可以点击查看，也可以 >>下载源文件：

]]></description>
			<content:encoded><![CDATA[<p>被朋友们问到了关于 CSS 一些琐碎的小问题，我的感觉是：虽然这些问题很简单，但是我们在工作当中，经常会被这些琐碎的小知识点给卡住了，并非它们有多么难，可总会有不太好解决的时候，现在记录一下，以备日后查看：</p>
<p>1.设置：<a style="font-family: '宋体';" href="http://www.miaov.com">&gt;&gt;更多</a> 而不是 <a style="font-family: Arial;" href="http://www.miaov.com">&gt;&gt;更多</a><br />
——相信大家注意到 更多 前面的符号了，我曾见过一段因为设置不好这个符号而直接用 <strong>图片</strong> 来代替的代码，其实它们仅仅只是字体不一样。<br />
<a style="font-family: '宋体';" href="http://www.miaov.com">&gt;&gt;更多</a> 这个 css 的字体是：font-family: &#8216;宋体&#8217;;<br />
<a style="font-family: Arial;" href="http://www.miaov.com">&gt;&gt;更多</a> 这个 css 的字体是：font-family: Arial;</p>
<p> </p>
<p>2. 设置自适应宽的虚线，效果图如下：<br />
<img class="alignnone size-full wp-image-340" title="dotted" src="http://www.miaov.com/wp-content/uploads/2009/10/dotted.gif" alt="dotted" width="448" height="96" /></p>
<p>在这个效果里，左侧文字的宽度不确定，虚线要自适应文字个数的变化。<br />
<strong>制作这个效果的思路是：</strong>使用 ul、li 结构，把图片切成 width: 4px; height: 1px; 的小点，将图片设置成 li 标签的背景，进行 x 轴方向平铺，再把包含文字标签（比如 span）的背景设为白色（与背景色同一颜色），加上内填充（padding: 0 10px;）即可。</p>
<p><a href="http://www.miaov.com/demo/dotted/dotted.html" target="_blank">&gt;&gt;查看效果</a></p>
<p><a href="http://www.miaov.com/demo/dotted.rar">&gt;&gt;下载代码</a></p>
<p> </p>
<p>3. 设置DIV内的下拉条，效果图如下：</p>
<p><img class="alignnone size-full wp-image-347" title="overflow_y" src="http://www.miaov.com/wp-content/uploads/2009/10/overflow_y.gif" alt="overflow_y" width="210" height="255" /></p>
<p>布局方面不多说了，都在下面的源文件里。现在就来看看中间的下拉条如何设置：</p>
<p>要让某个 <strong>块级元素 </strong>内出现下拉条效果，先要给它固定的<strong>高、宽</strong>，也就是要限定它的范围，接着加上 CSS 样式：<strong>overflow: auto;</strong><br />
这句意思是：当元素内容有超出的部分，就自动显示，下拉条也就出现了。</p>
<p>现在，要让下拉条出现在右侧，而不要让它在底端也出现，还需要做一些设置：</p>
<p>让子级元素的 <strong>宽 </strong>小于父级的宽，比如父级元素的宽是 100px，减去下拉条的宽（IE8下拉条的宽是 14px），那子级元素的宽度为：82px; ——<strong>等等，为什么不是 86px ？？</strong></p>
<p><strong>原因：</strong>IE6、IE7 与 IE8、火狐 对于 <strong>下拉条的宽度 </strong>的显示尺寸是不一样的，<strong>IE6、IE7下拉条的宽度要略大于 IE8、火狐的宽</strong>，所以在设置子级宽度的时候，最好少设置几个像素，以免出现下面这种情况：</p>
<p><img class="alignnone size-full wp-image-349" title="auto" src="http://www.miaov.com/wp-content/uploads/2009/10/auto.gif" alt="auto" width="202" height="102" /></p>
<p>另外，还有一种情况，当效果图是这样的时候：</p>
<p><img class="alignnone size-full wp-image-350" title="auto2" src="http://www.miaov.com/wp-content/uploads/2009/10/auto2.gif" alt="auto2" width="202" height="102" /></p>
<p>子级的高并没有超出父级的高，也希望下拉条显示出来，样式设置如下：<strong>overflow-y: scroll;</strong></p>
<p>意思是：让元素的 Y轴 出现滚动条（卷轴）。</p>
<p>最终效果如下所示，<strong>鼠标可以点击查看</strong>，也可以 <a href="http://www.miaov.com/demo/hover.rar">>>下载源文件</a>：<br />
<iframe width="220" height="280" src="http://www.miaov.com/demo/hover/hover.html" frameBorder="0" scrolling="no" allowTransparency="allowtransparency"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.miaov.com/318.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>网页图片设置详解</title>
		<link>http://www.miaov.com/272.html</link>
		<comments>http://www.miaov.com/272.html#comments</comments>
		<pubDate>Fri, 09 Oct 2009 16:52:30 +0000</pubDate>
		<dc:creator>leo</dc:creator>
				<category><![CDATA[XHTML+CSS]]></category>
		<category><![CDATA[background]]></category>
		<category><![CDATA[内容]]></category>
		<category><![CDATA[图片]]></category>
		<category><![CDATA[背景]]></category>
		<category><![CDATA[表现]]></category>

		<guid isPermaLink="false">http://www.miaov.com/?p=272</guid>
		<description><![CDATA[设置网站的图片涉及到三个问题，分别是：
1. 网页中的图片应该怎样设置？
在运用 XHTML+CSS 制作页面的时候，网页上的图片可以通过二种方式在页面中呈现：
一. 使用图片标签，直接写在 XHTML 文档内：&#60;img src=&#8221;1.jpg&#8221; /&#62;
二. 运用 CSS 将图片做为某个元素的背景，比如设置 div 元素：div { background: url(1.jpg); }
这二种方式不能混淆，因为它们有本质上的区别，如果设置错误，有可能会 影响页面的可用性！
它们的本质区别以及设置原则：
——凡是属于网页内容的图片，都用图片标签 &#60;img /&#62; 直接写入 XHTML 文档中；
——凡是不属于网页内容的图片，一律采用 CSS 进行背景图片设置，它们起到网站装饰、美化的作用，属于网站表现；
我们只要能分清什么图片是网页内容就行了，因为除了网页内容图片，其他的图片一律用 CSS 设置成元素的背景。
分析下面这张图，来找找哪些是网页内容图片：

上图中，标注为 “&#60;img /&#62;” 的是页面内容，可以直接写成 XHTML 代码，
其他标注为 “background-image” 的都应该做为背景，设置成元素的 CSS 样式。
2. 如何设置背景？
设置 div 元素背景的很简单：div { background: red; }
设置一个 既有背景颜色，又有背景图片 的 div 才是我们关注的，效果图如下所示：

分析这个效果图，我们可以得知如下信息：

在制作的时候，我们可以先把渐变部分切成 1 像素宽、68 像素高的图片：

把中间这根细小的图片保存为“bg.gif”，设置 div 样式如下：
div {
width: 100px; [...]]]></description>
			<content:encoded><![CDATA[<p><strong>设置网站的图片涉及到三个问题，分别是：</strong></p>
<p><strong>1. 网页中的图片应该怎样设置？</strong></p>
<p>在运用 XHTML+CSS 制作页面的时候，网页上的图片可以通过二种方式在页面中呈现：</p>
<p>一. 使用图片标签，直接写在 XHTML 文档内：&lt;img src=&#8221;1.jpg&#8221; /&gt;<br />
二. 运用 CSS 将图片做为某个元素的背景，比如设置 div 元素：div { background: url(1.jpg); }</p>
<p>这二种方式不能混淆，因为它们有本质上的区别，如果设置错误，有可能会 <strong>影响页面的可用性！</strong></p>
<p>它们的本质区别以及设置原则：</p>
<p>——凡是属于<strong>网页内容</strong>的图片，都用图片标签 &lt;img /&gt; 直接写入 XHTML 文档中；</p>
<p>——凡是不属于网页内容的图片，一律<strong>采用 CSS 进行背景图片设置，</strong>它们起到网站装饰、美化的作用，属于<strong>网站表现</strong>；</p>
<p>我们只要能分清什么图片是网页内容就行了，因为除了网页内容图片，其他的图片一律用 CSS 设置成元素的背景。</p>
<p><strong>分析下面这张图，来找找哪些是网页内容图片：</strong></p>
<p><a href="http://www.miaov.com"><img class="alignnone size-full wp-image-273" title="pic" src="http://www.miaov.com/wp-content/uploads/2009/10/pic.gif" alt="pic" width="300" height="220" /></a></p>
<p>上图中，标注为 “&lt;img /&gt;” 的是页面内容，可以直接写成 XHTML 代码，</p>
<p>其他标注为 “background-image” 的都应该做为背景，设置成元素的 CSS 样式。</p>
<p><strong>2. 如何设置背景？</strong></p>
<p>设置 div 元素背景的很简单：div { background: red; }</p>
<p>设置一个 <strong>既有背景颜色，又有背景图片 </strong>的 div 才是我们关注的，效果图如下所示：</p>
<p><img class="alignnone size-full wp-image-279" title="pic2" src="http://www.miaov.com/wp-content/uploads/2009/10/pic2.gif" alt="pic2" width="102" height="102" /></p>
<p>分析这个效果图，我们可以得知如下信息：</p>
<p><img class="alignnone size-full wp-image-280" title="pic3" src="http://www.miaov.com/wp-content/uploads/2009/10/pic3.gif" alt="pic3" width="356" height="151" /></p>
<p>在制作的时候，我们可以先把渐变部分切成 1 像素宽、68 像素高的图片：</p>
<p><img class="alignnone size-full wp-image-281" title="pic4" src="http://www.miaov.com/wp-content/uploads/2009/10/pic4.gif" alt="pic4" width="303" height="143" /></p>
<p>把中间这根细小的图片保存为“bg.gif”，设置 div 样式如下：</p>
<p>div {<br />
width: 100px; height: 100px; border: 1px solid #626262;<br />
<strong>background: url(bg.gif);</strong><br />
}</p>
<p>得到下面的结果：</p>
<div style="width: 100px; height: 100px; border: 1px solid #626262; margin-bottom: 10px; background: url(http://www.miaov.com/wp-content/uploads/2009/10/pic5.gif);"></div>
<p>再把图片设置成水平方向平铺：</p>
<p>div {<br />
width: 100px; height: 100px; border: 1px solid #626262;<br />
<strong>background: url(bg.gif) repeat-x;</strong><br />
}</p>
<p>则背景图片只可能沿水平方向平铺，不会再折行平铺了：</p>
<div style="width: 100px; height: 100px; border: 1px solid #626262; margin-bottom: 10px; background: url(http://www.miaov.com/wp-content/uploads/2009/10/pic5.gif) repeat-x;"></div>
<p>最后，添加上背景颜色值：<br />
div {<br />
width: 100px; height: 100px; border: 1px solid #626262;<br />
<strong>background: #f5f5f5 url(bg.gif) repeat-x;</strong><br />
}</p>
<p>div 背景制作完成：</p>
<div style="width: 100px; height: 100px; border: 1px solid #626262; margin-bottom: 10px; background: #f5f5f5 url(http://www.miaov.com/wp-content/uploads/2009/10/pic5.gif) repeat-x;"></div>
<p><strong>3. 页面上的小图标如何处理？</strong></p>
<p>效果图如下所示：</p>
<p><img src="http://www.miaov.com/wp-content/uploads/2009/10/pic6.gif" alt="pic6" title="pic6" width="121" height="88" class="alignnone size-full wp-image-301" /></p>
<p>根据上面的分析，我们可以知道这个效果图的三张小图片，都是做为元素的背景来设置。</p>
<p>首先用 PS 切一张小图片，在切图的时候，注意尽量切成背景透明的 GIF 图片，不要把背景颜色也切下来，万一背景颜色发生变化，切下来的这张图片仍然可以使用：</p>
<p><img src="http://www.miaov.com/wp-content/uploads/2009/10/pic7.gif" alt="pic7" title="pic7" width="486" height="354" class="alignnone size-full wp-image-302" /></p>
<p>然后开始写结构：</p>
<p>&lt;ul&gt;<br />
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;页面&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;评论&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;外观&lt;/a&gt;&lt;/li&gt;<br />
&lt;/ul&gt;</p>
<p>写样式：</p>
<p>ul { padding-left: 0; margin-left: 0; width: 120px; border: 1px solid #e3e3e3; border-bottom: 0; }<br />
li { list-style: none; }<br />
a { display: block; height: 27px; line-height: 27px; border-top: 1px solid #fff; border-bottom: 1px solid #e3e3e3; background: #f1f1f1; padding-left: 26px; text-decoration: none; color: #21759b; font-size: 12px; }<br />
a:hover { color: #d54e21; text-decoration: underline; }</p>
<p>效果如下：<br />
<iframe width="130" height="120" src="http://www.miaov.com/demo/background_image/1.html" frameBorder="0" scrolling="no" allowTransparency="allowtransparency"></iframe><br />
开始添加小图片。要实现三个 li 内图片都不一样，需要<strong>在 a 标签内添加三个不同的样式名：</strong></p>
<p>&lt;ul&gt;<br />
&lt;li&gt;&lt;a class=&quot;ico1&quot; href=&quot;#&quot;&gt;页面&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a class=&quot;ico2&quot; href=&quot;#&quot;&gt;评论&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a class=&quot;ico3&quot; href=&quot;#&quot;&gt;外观&lt;/a&gt;&lt;/li&gt;<br />
&lt;/ul&gt;</p>
<p>准备好要设置的图片：</p>
<p><img src="http://www.miaov.com/demo/background_image/ico.gif" /></p>
<p><strong>注意：把3个小图片切成一张 GIF 图，然后利用背景图片的定位来制作。</strong></p>
<p>完整的 CSS 代码：</p>
<p>ul { width: 120px; border: 1px solid #e3e3e3; border-bottom: 0; padding-left: 0; margin-left: 0; }<br />
li { list-style: none; }<br />
a { display: block; height: 27px; line-height: 27px; border-top: 1px solid #fff; border-bottom: 1px solid #e3e3e3; padding-left: 26px; text-decoration: none; color: #21759b; font-size: 12px; }<br />
a:hover { color: #d54e21; text-decoration: underline; }<br />
.ico1 { background: #f1f1f1 url(ico.gif) no-repeat 5px 6px; }<br />
.ico2 { background: #f1f1f1 url(ico.gif) no-repeat 5px -24px; }<br />
.ico3 { background: #f1f1f1 url(ico.gif) no-repeat 5px -52px; }</p>
<p>这一句：“background: #f1f1f1 url(ico.gif) no-repeat 5px 6px;”<br />
中文解释：背景：背景颜色 图片链接地址 图片不重复 图片水平方向 图片垂直方向； </p>
<p>最终效果如下：<br />
<iframe width="130" height="120" src="http://www.miaov.com/demo/background_image/2.html" frameBorder="0" scrolling="no" allowTransparency="allowtransparency"></iframe></p>
<p>效果下载：<a href="http://www.miaov.com/demo/background_image.rar">>>点此下载</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.miaov.com/272.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
