<?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>FineEmb Studio &#187; pjblog</title>
	<atom:link href="http://www.fineemb.com/blog/archives/tag/pjblog/feed" rel="self" type="application/rss+xml" />
	<link>http://www.fineemb.com</link>
	<description>刺绣数字化专家 - 泛艺</description>
	<lastBuildDate>Mon, 26 Jul 2010 14:58:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Pjblog 转 WordPress 基本完美了</title>
		<link>http://www.fineemb.com/blog/archives/pjblog-to-wordpress.html</link>
		<comments>http://www.fineemb.com/blog/archives/pjblog-to-wordpress.html#comments</comments>
		<pubDate>Tue, 30 Oct 2007 06:44:42 +0000</pubDate>
		<dc:creator>花老鼠</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[pjblog]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://blog.dnxh.cn/archives/pjblog-to-wordpress.html</guid>
		<description><![CDATA[&#xA0; Blog 从 Pjblog 转到 WordPress 已经有一段时间了。这次转换涉及到了域名的的变动，原来的 Blog 链接是 www.fineemb.com/blog ，现在的是使用了二级域名 http://blog.fineemb.com 。本来我也是不想的，因为要投奔 Yo2 ，该死的 Yo2 只能绑定域名，不能绑定路径（好像要求太高了，也不奢望）。说实话这样对网站的排名以及用户的访问都会带来一定的麻烦。 &#xA0; 但是通过 WordPress 的永久链接和 301永久定向，基本把这个问题给解决了。目前 Blog 的排名也已经达到甚至超过原来的地址了（这话仅仅是对 Google 而言的）。目前 Blog&#xA0; 的PR值还是为4，部分分类也上来了，热门文章一般为2。收录方面 Google 已经承认了新 Blog。百度还是抓住老的不放。但愿 Yo2 不会让我失望，要不又要变动了，还得自己再找地盘。 &#xA0; 方法是把原 Pjblog 的日志ID作为新 Blog 的标题的缩略名，在导入 WordPress 的时候使用 WordPress 的数据类型并且把标题作为永久链接构造的唯一标识，然后在原来的 Pjblog 的相关页面做301永久定向。你还可以对分类进行相关的定向。 首页 defaule.asp 的301定向代码，其他相关文件的可以以此类推： &#60;% Dim post_ID,cate_ID,url post_ID=Request.QueryString(&#34;id&#34;) cate_ID=Request.QueryString(&#34;cateID&#34;) &#xA0; &#xA0; [...]]]></description>
			<content:encoded><![CDATA[<p>&#xA0; Blog 从 Pjblog 转到 WordPress 已经有一段时间了。这次转换涉及到了域名的的变动，原来的 Blog 链接是 <a href="http://www.fineemb.com/blog">www.fineemb.com/blog</a> ，现在的是使用了二级域名 <a href="http://blog.fineemb.com">http://blog.fineemb.com</a> 。本来我也是不想的，因为要投奔 Yo2 ，该死的 Yo2 只能绑定域名，不能绑定路径（好像要求太高了，也不奢望）。说实话这样对网站的排名以及用户的访问都会带来一定的麻烦。</p>
<p>&#xA0; 但是通过 WordPress 的永久链接和 301永久定向，基本把这个问题给解决了。目前 Blog 的排名也已经达到甚至超过原来的地址了（这话仅仅是对 Google 而言的）。目前 Blog&#xA0; 的PR值还是为4，部分分类也上来了，热门文章一般为2。收录方面 Google 已经承认了新 Blog。百度还是抓住老的不放。但愿 Yo2 不会让我失望，要不又要变动了，还得自己再找地盘。</p>
<p>&#xA0; 方法是把原 Pjblog 的日志ID作为新 Blog 的标题的缩略名，在导入 WordPress 的时候使用 WordPress 的数据类型并且把标题作为永久链接构造的唯一标识，然后在原来的 Pjblog 的相关页面做301永久定向。你还可以对分类进行相关的定向。</p>
<p>首页 defaule.asp 的301定向代码，其他相关文件的可以以此类推：</p>
<div class="csharpcode">
<pre class="alt">&lt;%</pre>
<pre><span class="kwrd">Dim</span> post_ID,cate_ID,url</pre>
<pre class="alt">post_ID=Request.QueryString(<span class="str">&quot;id&quot;</span>)</pre>
<pre>cate_ID=Request.QueryString(<span class="str">&quot;cateID&quot;</span>)</pre>
<pre class="alt">&#xA0;</pre>
<pre>&#xA0;</pre>
<pre class="alt"><span class="kwrd">IF</span> cate_ID = <span class="str">&quot;10&quot;</span> <span class="kwrd">Then</span></pre>
<pre> url = <span class="str">&quot;http://blog.fineemb.com/archives/category/media/&quot;</span></pre>
<pre class="alt"><span class="kwrd">ElseIF</span> cate_ID = <span class="str">&quot;11&quot;</span> <span class="kwrd">Then</span></pre>
<pre> url = <span class="str">&quot;http://blog.fineemb.com/archives/category/software_local/&quot;</span></pre>
<pre class="alt"><span class="kwrd">ElseIF</span> cate_ID = <span class="str">&quot;18&quot;</span> <span class="kwrd">Then</span></pre>
<pre> url = <span class="str">&quot;http://blog.fineemb.com/archives/category/embroidery/&quot;</span></pre>
<pre class="alt"><span class="kwrd">ElseIF</span> cate_ID = <span class="str">&quot;20&quot;</span> <span class="kwrd">Then</span></pre>
<pre> url = <span class="str">&quot;http://blog.fineemb.com/archives/category/it-news/&quot;</span></pre>
<pre class="alt"><span class="kwrd">ElseIF</span> cate_ID = <span class="str">&quot;30&quot;</span> <span class="kwrd">Then</span></pre>
<pre> url = <span class="str">&quot;http://blog.fineemb.com/archives/category/google-earth_map/&quot;</span></pre>
<pre class="alt"><span class="kwrd">ElseIF</span> cate_ID = <span class="str">&quot;3&quot;</span> <span class="kwrd">Then</span></pre>
<pre> url = <span class="str">&quot;http://blog.fineemb.com/archives/category/public-opinion/&quot;</span></pre>
<pre class="alt"><span class="kwrd">ElseIF</span> IsInteger(post_ID) = <span class="kwrd">True</span> <span class="kwrd">Then</span></pre>
<pre> url = <span class="str">&quot;http://blog.fineemb.com/archives/&quot;</span> &amp; post_ID &amp; <span class="str">&quot;.html&quot;</span></pre>
<pre class="alt"><span class="kwrd">Else</span></pre>
<pre> url = <span class="str">&quot;http://blog.fineemb.com&quot;</span></pre>
<pre class="alt"><span class="kwrd">End</span> <span class="kwrd">if</span></pre>
<pre>Response.Status=<span class="str">&quot;301 Moved Permanently&quot;</span></pre>
<pre class="alt">Response.AddHeader <span class="str">&quot;Location&quot;</span>,url</pre>
<pre>Response.<span class="kwrd">End</span></pre>
<pre class="alt">&#xA0;</pre>
<pre><span class="rem">'*************************************</span></pre>
<pre class="alt"><span class="rem">'检测是否有效的数字</span></pre>
<pre><span class="rem">'*************************************</span></pre>
<pre class="alt"><span class="kwrd">Function</span> IsInteger(Para) </pre>
<pre> IsInteger=<span class="kwrd">False</span></pre>
<pre class="alt"> <span class="kwrd">If</span> <span class="kwrd">Not</span> (IsNull(Para) <span class="kwrd">Or</span> Trim(Para)=<span class="str">&quot;&quot;</span> <span class="kwrd">Or</span> <span class="kwrd">Not</span> IsNumeric(Para)) <span class="kwrd">Then</span></pre>
<pre> IsInteger=<span class="kwrd">True</span></pre>
<pre class="alt"> <span class="kwrd">End</span> <span class="kwrd">If</span></pre>
<pre><span class="kwrd">End</span> <span class="kwrd">Function</span></pre>
<pre class="alt">%&gt;</pre>
</div>
<style type="text/css">
<p>.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }</style>
]]></content:encoded>
			<wfw:commentRss>http://www.fineemb.com/blog/archives/pjblog-to-wordpress.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>让Google Adsense for search融入Pjblog</title>
		<link>http://www.fineemb.com/blog/archives/301.html</link>
		<comments>http://www.fineemb.com/blog/archives/301.html#comments</comments>
		<pubDate>Thu, 11 Jan 2007 05:23:18 +0000</pubDate>
		<dc:creator>花老鼠</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[pjblog]]></category>

		<guid isPermaLink="false">http://blog.dnxh.cn/archives/301.html</guid>
		<description><![CDATA[&#160;&#160;&#160;&#160;虽然 Google 已经提供这个功能很长一段时间了，可我一直都没发现 。以前我使用 Google Adsense for search 的时候最多也就是定义一下结果页的式样，最过多搞个TOP。现在 Google 允许结果页指向你的网页，在你的网页里自动加一个 Iframe 来显示你的搜索结果内容。先看看效果。那这样做有啥好处就不用多说了，式样上的统一，肥水不流外人田 。&#160;&#160;&#160;&#160;那怎么才能有这效果呢。在 Google Adsense 里面选择产品 AdSense for Search 在第一步按平常的一样设置外，拉动滚动条到最下面的“更多选项”。在里面选择你的网站语言，打开结果搜索页一项里面选择在我的网站上打开搜索结果，然后在里面输入地址。如果你下面也按照我说的做的话那就请在地址里面输入 “LoadMod.asp”。选择网站编码（Pjblog当然是UTF-8了）。然后继续下一步配置你的结果页式样。&#160;&#160;&#160;&#160;在最后获取代码的时候我们发现有2个代码框。第一个就是一个搜索表单，第二个是放到要显示结果的页面的。如果你还想按我说的做那你就需要在第一个搜索表单里面加一个隐藏框&#60;input type=&#34;hidden&#34; name=&#34;plugins&#34; value=&#34;ADsearch&#34;&#62;&#60;/input&#62;这个加在任意&#60;/input&#62;后面就行了，[codes=xml]&#60;!&#8211; SiteSearch Google &#8211;&#62;&#60;form method=&#34;get&#34; action=&#34;LoadMod.asp&#34; target=&#34;_top&#34;&#62;&#60;table border=&#34;0&#34; bgcolor=&#34;#ffffff&#34;&#62;&#60;tr&#62;&#60;td nowrap=&#34;nowrap&#34; valign=&#34;top&#34; align=&#34;left&#34; height=&#34;32&#34;&#62;&#60;a href=&#34;http://www.google.com/&#34;&#62;&#60;img src=&#34;http://www.google.com/logos/Logo_25wht.gif&#34; border=&#34;0&#34; alt=&#34;Google&#34; align=&#34;middle&#34;&#62;&#60;/img&#62;&#60;/a&#62;&#60;/td&#62;&#60;td nowrap=&#34;nowrap&#34;&#62;&#60;input type=&#34;hidden&#34; name=&#34;domains&#34; value=&#34;www.fineemb.com&#34;&#62;&#60;/input&#62;&#60;label for=&#34;sbi&#34; style=&#34;display: none&#34;&#62;输入您的搜索字词&#60;/label&#62;&#60;input type=&#34;text&#34; name=&#34;q&#34; size=&#34;31&#34; maxlength=&#34;255&#34; value=&#34;&#34; id=&#34;sbi&#34;&#62;&#60;/input&#62;&#60;label [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;虽然 Google 已经提供这个功能很长一段时间了，可我一直都没发现 <img src="http://www.fineemb.com/images/smilies/surprised.png" border="0" style="margin:0px 0px -2px 0px" alt=""/>。以前我使用 Google Adsense for search 的时候最多也就是定义一下结果页的式样，最过多搞个TOP。现在 Google 允许结果页指向你的网页，在你的网页里自动加一个 Iframe 来显示你的搜索结果内容。先看看效果。那这样做有啥好处就不用多说了，式样上的统一，肥水不流外人田 <img src="http://www.fineemb.com/images/smilies/laugh.png" border="0" style="margin:0px 0px -2px 0px" alt=""/>。<br/>&nbsp;&nbsp;&nbsp;&nbsp;那怎么才能有这效果呢。在 Google Adsense 里面选择产品 AdSense for Search 在第一步按平常的一样设置外，拉动滚动条到最下面的“<strong>更多选项</strong>”。在里面选择你的网站语言，<strong>打开结果搜索页</strong>一项里面选择<strong>在我的网站上打开搜索结果</strong>，然后在里面输入地址。如果你下面也按照我说的做的话那就请在地址里面输入 “LoadMod.asp”。选择网站编码（<a href="http://www.pjhome.net" target="_blank">Pjblog</a>当然是UTF-8了）。然后继续下一步配置你的结果页式样。<br/>&nbsp;&nbsp;&nbsp;&nbsp;在最后获取代码的时候我们发现有2个代码框。第一个就是一个搜索表单，第二个是放到要显示结果的页面的。如果你还想按我说的做那你就需要在第一个搜索表单里面加一个隐藏框&lt;input type=&#34;hidden&#34; name=&#34;plugins&#34; value=&#34;ADsearch&#34;&gt;&lt;/input&gt;这个加在任意&lt;/input&gt;后面就行了，<br/>[codes=xml]&lt;!&#8211; SiteSearch Google &#8211;&gt;<br/>&lt;form method=&#34;get&#34; action=&#34;LoadMod.asp&#34; target=&#34;_top&#34;&gt;<br/>&lt;table border=&#34;0&#34; bgcolor=&#34;#ffffff&#34;&gt;<br/>&lt;tr&gt;&lt;td nowrap=&#34;nowrap&#34; valign=&#34;top&#34; align=&#34;left&#34; height=&#34;32&#34;&gt;<br/>&lt;a href=&#34;<a href="http://www.google.com/" target="_blank">http://www.google.com/</a>&#34;&gt;<br/>&lt;img src=&#34;<a href="http://www.google.com/" target="_blank">http://www.google.com/</a>logos/Logo_25wht.gif&#34; border=&#34;0&#34; alt=&#34;Google&#34; align=&#34;middle&#34;&gt;&lt;/img&gt;&lt;/a&gt;<br/>&lt;/td&gt;<br/>&lt;td nowrap=&#34;nowrap&#34;&gt;<br/>&lt;input type=&#34;hidden&#34; name=&#34;domains&#34; value=&#34;www.fineemb.com&#34;&gt;&lt;/input&gt;<br/>&lt;label for=&#34;sbi&#34; style=&#34;display: none&#34;&gt;输入您的搜索字词&lt;/label&gt;<br/>&lt;input type=&#34;text&#34; name=&#34;q&#34; size=&#34;31&#34; maxlength=&#34;255&#34; value=&#34;&#34; id=&#34;sbi&#34;&gt;&lt;/input&gt;<br/>&lt;label for=&#34;sbb&#34; style=&#34;display: none&#34;&gt;提交搜索表单&lt;/label&gt;<br/>&lt;input type=&#34;submit&#34; name=&#34;sa&#34; value=&#34;搜索&#34; id=&#34;sbb&#34;&gt;&lt;/input&gt;<br/>&lt;/td&gt;&lt;/tr&gt;<br/>&lt;tr&gt;<br/>&lt;td&gt; &lt;/td&gt;<br/>&lt;td nowrap=&#34;nowrap&#34;&gt;<br/>&lt;table&gt;<br/>&lt;tr&gt;<br/>&lt;td&gt;<br/>&lt;input type=&#34;radio&#34; name=&#34;sitesearch&#34; value=&#34;&#34; checked id=&#34;ss0&#34;&gt;&lt;/input&gt;<br/>&lt;label for=&#34;ss0&#34; title=&#34;搜索网络&#34;&gt;&lt;font size=&#34;-1&#34; color=&#34;#000000&#34;&gt;Web&lt;/font&gt;&lt;/label&gt;&lt;/td&gt;<br/>&lt;td&gt;<br/>&lt;input type=&#34;radio&#34; name=&#34;sitesearch&#34; value=&#34;www.fineemb.com&#34; id=&#34;ss1&#34;&gt;&lt;/input&gt;<br/>&lt;label for=&#34;ss1&#34; title=&#34;搜索 www.fineemb.com&#34;&gt;&lt;font size=&#34;-1&#34; color=&#34;#000000&#34;&gt;www.fineemb.com&lt;/font&gt;&lt;/label&gt;&lt;/td&gt;<br/>&lt;/tr&gt;<br/>&lt;/table&gt;<br/>&lt;input type=&#34;hidden&#34; name=&#34;client&#34; value=&#34;**********&#34;&gt;&lt;/input&gt;<br/>&lt;input type=&#34;hidden&#34; name=&#34;forid&#34; value=&#34;1&#34;&gt;&lt;/input&gt;<br/>&lt;input type=&#34;hidden&#34; name=&#34;ie&#34; value=&#34;UTF-8&#34;&gt;&lt;/input&gt;<br/>&lt;input type=&#34;hidden&#34; name=&#34;oe&#34; value=&#34;UTF-8&#34;&gt;&lt;/input&gt;<br/>&lt;input type=&#34;hidden&#34; name=&#34;cof&#34; value=&#34;GALT:#008000;GL:1;DIV:#FFFFFF;VLC:663399;AH:center;BGC:FFFFFF;LBGC:336699;ALC:0000FF;LC:0000FF;T:000000;GFNT:0000FF;GIMP:0000FF;FORID:11&#34;&gt;&lt;/input&gt;<br/>&lt;input type=&#34;hidden&#34; name=&#34;hl&#34; value=&#34;zh-CN&#34;&gt;&lt;/input&gt;<br/>&lt;input type=&#34;hidden&#34; name=&#34;plugins&#34; value=&#34;ADsearch&#34;&gt;&lt;/input&gt;<br/>&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;<br/>&lt;/form&gt;<br/>&lt;!&#8211; SiteSearch Google &#8211;&gt;[/codes]<br/>然后把代码加到你要放置的地方（你可以新建一个侧栏模块，在HTML模式下粘贴这些代码后保存）。这个主要是结果页我们是做成 <a href="http://www.pjhome.net" target="_blank">Pjblog</a> 的一个功能模块。下面再安装一个我已经做好的 <a href="http://www.pjhome.net" target="_blank">Pjblog</a> 插件。<br/> <a href="http://www.fineemb.com/attachments/month_0701/n200711113226.rar" target="_blank">点击下载此文件</a><br/>&nbsp;&nbsp;&nbsp;&nbsp;就这样完成了！如果你不想看到菜单里面的内容，你可以在后台的日志分类里面把这个删了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fineemb.com/blog/archives/301.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>让Pjblog评论系统支持Google Map</title>
		<link>http://www.fineemb.com/blog/archives/286.html</link>
		<comments>http://www.fineemb.com/blog/archives/286.html#comments</comments>
		<pubDate>Sat, 09 Dec 2006 07:09:30 +0000</pubDate>
		<dc:creator>花老鼠</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[pjblog]]></category>

		<guid isPermaLink="false">http://blog.dnxh.cn/archives/286.html</guid>
		<description><![CDATA[&#160;&#160;&#160;&#160;自从 Weather For Google Earth 因为自动缓存遇到阻挠后干脆先放在了一边，死钻也解决不了问题，所以一直在看 Google Map 的 API文档。这东西客户端就是浏览器，而且估计现在没有那个电脑没安浏览器的了，所以说 Google Map 比 Google Earth 更容易被人使用，只是没那么绚罢了。&#160;&#160;&#160;&#160;回到主题，我就一直琢磨着让Pjblog可以通过UBB来标点或者可以显示一个线路图，显示一个从我家 到公司 的地图。那就需要从标点到地图的显示，一个完整的链。经过三天的努力终于初步完成了对点的标注和在日志中的显示。可以使用的标签以及属性为 [map=纬度,经度,级数,浮动对齐,高度,宽度]显示文本[/map] 。这里面要修改的文件还比较多。&#160;&#160;&#160;&#160;一、你要在 header.asp 文件中加入 API 的JS。 程序代码 &#60;script src=&#34;http://maps.google.com/maps?file=api&#38;v=2.67&#38;key=&#34; type=&#34;text/javascript&#34;&#62;&#60;/script&#62; Key 需要你到 Google Map API注册一个。&#160;&#160;&#160;&#160;二、改动 common 文件夹里的文件 common.js，以下改动的文件都是在这个文件夹里面。添加对地图展开和关闭的代码 程序代码 var MapTemp=new Array()function MapShow(strID,lat,lon,vZoom,Aling,width,height,html){if (MapTemp[strID]==undefined) MapTemp[strID]=false; else MapTemp[strID]=!MapTemp[strID];if(MapTemp[strID]){&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;if ( document.all )&#160;&#160;&#160;&#160;{&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#160;&#160;&#160;&#160;document.getElementById(strID).outerHTML = &#39;&#60;div id=&#34;&#39;+strID+&#39;&#34; style=&#34;float:&#39;+Aling+&#39;&#34;&#62;&#60;/div&#62;&#39;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;else&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#160;&#160;&#160;&#160;document.getElementById(strID).innerHTML = [...]]]></description>
			<content:encoded><![CDATA[<p><img align="right" src="http://www.fineemb.com/attachments/month_0611/720061130194754.png" border="0" alt=""/>&nbsp;&nbsp;&nbsp;&nbsp;自从 Weather For <a href="http://earth.google.com/" target="_blank">Google Earth</a> 因为自动缓存遇到阻挠后干脆先放在了一边，死钻也解决不了问题，所以一直在看 <a target="_blank" href="http://www.google.com/apis/maps/">Google Map 的 API文档</a>。这东西客户端就是浏览器，而且估计现在没有那个电脑没安浏览器的了，所以说 Google Map 比 <a href="http://earth.google.com/" target="_blank">Google Earth</a> 更容易被人使用，只是没那么绚罢了。<br/>&nbsp;&nbsp;&nbsp;&nbsp;回到主题，我就一直琢磨着让<a href="http://www.pjhome.net" target="_blank">Pjblog</a>可以通过UBB来标点或者可以显示一个线路图，显示一个从<a id="map77321_href" href="http://www.fineemb.com/blog" onClick="javascript:MapShow('map77321','32.02394109253916','121.07851982116699',14,'left','525','450','我家');return false"><span id="map77321_text">我家</span></a>
<div id="map77321" style="float:left"></div>
<p>到<a id="map16842_href" href="http://www.fineemb.com/blog" onClick="javascript:MapShow('map16842','31.907290161783514','120.5486011505127',14,'right','525','450','公司');return false"><span id="map16842_text">公司</span></a>
<div id="map16842" style="float:right"></div>
<p>的地图。那就需要从标点到地图的显示，一个完整的链。经过三天的努力终于初步完成了对点的标注和在日志中的显示。可以使用的标签以及属性为 <span style="color:Teal">[map=纬度,经度,级数,浮动对齐,高度,宽度]显示文本[/map]</span> 。这里面要修改的文件还比较多。<br/>&nbsp;&nbsp;&nbsp;&nbsp;一、你要在 header.asp 文件中加入 API 的JS。<br/>
<div class="UBBPanel">
<div class="UBBTitle"> 程序代码</div>
<div class="UBBContent">&lt;script src=&#34;<a href="http://maps.google.com/maps?file=api" target="_blank">http://maps.google.com/maps?file=api</a>&amp;v=2.67&amp;key=&#34; type=&#34;text/javascript&#34;&gt;&lt;/script&gt;</div>
</div>
<p><br/>Key 需要你<a target="_blank" href="http://www.google.com/apis/maps/signup.html">到 Google Map API注册一个</a>。<br/>&nbsp;&nbsp;&nbsp;&nbsp;二、改动 common 文件夹里的文件 common.js，以下改动的文件都是在这个文件夹里面。添加对地图展开和关闭的代码<br/>
<div class="UBBPanel">
<div class="UBBTitle"> 程序代码</div>
<div class="UBBContent">var MapTemp=new Array()<br/>function MapShow(strID,lat,lon,vZoom,Aling,width,height,html){<br/>if (MapTemp[strID]==undefined) MapTemp[strID]=false; else MapTemp[strID]=!MapTemp[strID];<br/>if(MapTemp[strID]){<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;if ( document.all )&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#160;&#160;&#160;&#160;document.getElementById(strID).outerHTML = &#39;&lt;div id=&#34;&#39;+strID+&#39;&#34; style=&#34;float:&#39;+Aling+&#39;&#34;&gt;&lt;/div&gt;&#39;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;else<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#160;&#160;&#160;&#160;document.getElementById(strID).innerHTML = &#39;&#39;<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#160;&#160;&#160;&#160;document.getElementById(strID).style.width=&#39;&#39;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById(strID).style.height=&#39;&#39;;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document.images[strID+&#34;_img&#34;].src=&#34;http://www.fineemb.com/images/google_earth_16.png&#34;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document.images[strID+&#34;_img&#34;].alt=&#34;打开地图&#34;&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;}else{<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document.images[strID+&#34;_img&#34;].src=&#34;http://www.fineemb.com/images/google_earth_16_close.png&#34;&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document.images[strID+&#34;_img&#34;].alt=&#34;关闭地图&#34;&#160;&#160;&#160;&#160;<br/>if (GBrowserIsCompatible()) {<br/>document.getElementById(strID).style.width=width+&#34;px&#34;;<br/>document.getElementById(strID).style.height=height+&#34;px&#34;;<br/>var map = new GMap2(document.getElementById(strID));<br/>map.addControl(new GSmallZoomControl());<br/>map.setCenter(new GLatLng(lat,lon),vZoom);<br/>map.setMapType(G_HYBRID_MAP);<br/>var Html<br/><br/>&#160;&#160;&#160;&#160;Html=&#39;&lt;div id=&#34;zoom&#34; class=&#34;userpass&#34; style=&#34;font-size=14px;&#34;&gt; ↗ &lt;/div&gt;&#39;;<br/>&#160;&#160;&#160;&#160;var ZoomOutControl=new K_HtmlControl(Html);<br/>&#160;&#160;&#160;&#160;map.addControl(ZoomOutControl,new GControlPosition(G_ANCHOR_TOP_RIGHT,new GSize(5,5)));<br/>&#160;&#160;&#160;&#160;GEvent.addListener(ZoomOutControl,&#34;click&#34;,function(){<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById(strID).style.width=&#34;100%&#34;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById(strID).style.height=&#34;450px&#34;;<br/>&#160;&#160;&#160;&#160;});<br/>&#160;&#160;&#160;&#160;Html=&#39;&lt;div id=&#34;zoom&#34; class=&#34;userpass&#34; style=&#34;font-size=14px;&#34;&gt; ↙ &lt;/div&gt;&#39;;<br/>&#160;&#160;&#160;&#160;var ZoomInControl=new K_HtmlControl(Html);<br/>&#160;&#160;&#160;&#160;map.addControl(ZoomInControl,new GControlPosition(G_ANCHOR_TOP_RIGHT,new GSize(25,5)));<br/>&#160;&#160;&#160;&#160;GEvent.addListener(ZoomInControl,&#34;click&#34;,function(){<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById(strID).style.width=width+&#34;px&#34;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById(strID).style.height=height+&#34;px&#34;;<br/>&#160;&#160;&#160;&#160;});<br/><br/>var icon = new GIcon();<br/>icon.image = &#34;<a href="http://labs.google.com/ridefinder/images/mm_20_red.png" target="_blank">http://labs.google.com/ridefinder/images/mm_20_red.png</a>&#34;;<br/>icon.shadow = &#34;<a href="http://labs.google.com/ridefinder/images/mm_20_shadow.png" target="_blank">http://labs.google.com/ridefinder/images/mm_20_shadow.png</a>&#34;;<br/>icon.iconSize = new GSize(12, 20);<br/>icon.shadowSize = new GSize(22, 20);<br/>icon.iconAnchor = new GPoint(6, 20);<br/>icon.infoWindowAnchor = new GPoint(5, 1);<br/><br/>var marker = new GMarker(new GLatLng(lat,lon), icon);<br/>map.addOverlay(marker);<br/>GEvent.addListener(marker, &#34;click&#34;, function() {<br/>marker.openInfoWindowHtml(html);<br/>})<br/>}<br/>document.getElementById(strID+&#34;_href&#34;).blur()<br/>}&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<br/>}<br/>&#160;&#160;&#160;&#160;function K_HtmlControl(html)<br/>&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.html=html;<br/>&#160;&#160;&#160;&#160;}<br/>&#160;&#160;&#160;&#160;K_HtmlControl.prototype=new GControl(true,false);<br />
<br/>&#160;&#160;&#160;&#160;K_HtmlControl.prototype.initialize=function(a)<br/>&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.Map=a;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.div=document.cr&#101;ateElement(&#34;div&#34;);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.div.style.cursor=&#34;default&#34;;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.div.style.position=&#34;absolute&#34;;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.div.unsel&#101;ctable=&#34;on&#34;;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.div.onsel&#101;ctstart=function(){return false};<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.div.style.fontSize=&#34;11px&#34;;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.div.style.fontFamily=&#34;Arial, sans serif&#34;;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.div.style.MozUserSel&#101;ct=&#34;none&#34;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;this.div.innerHTML=this.html;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;a.getContainer().appendChild(this.div);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;GEvent.bindDom(this.div,&#34;click&#34;,this,this.onClick);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;return this.div;<br/>&#160;&#160;&#160;&#160;};<br/>&#160;&#160;&#160;&#160;K_HtmlControl.prototype.getDefaultPosition=function()<br/>&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;return new GControlPosition(G_ANCHOR_BOTTOM_RIGHT,new GSize(140,2))<br/>&#160;&#160;&#160;&#160;};<br/>&#160;&#160;&#160;&#160;K_HtmlControl.prototype.onClick=function()<br/>&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;GEvent.trigger(this,&#34;click&#34;);<br/>&#160;&#160;&#160;&#160;}</div>
</div>
<p><br/>&nbsp;&nbsp;&nbsp;&nbsp;三、在文件 ubbcode.asp 中添加对UBB标签转换显示的代码。<br/>
<div class="UBBPanel">
<div class="UBBTitle"> 程序代码</div>
<div class="UBBContent">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;re.Pattern=&#34;\[map(=\d*|=\d*\.\d*|=-\d*|=-\d*\.\d*)(, \d*|, \d*\.\d*|, -\d*|, -\d*\.\d*)(,\d*|)(,left|,right|,center|,absmiddle|)(,\d*|)(,\d*|)\](.[^\[]*)\[\/map\]&#34;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;Set strMatchs=re.Execute(strContent)<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;dim mapID,boxLat,boxLon,boxAling,boxWidth,boxHeight,boxHtml,boxZoom<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;For Each strMatch in strMatchs<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;RAndomize<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxLat=strMatch.SubMatches(0)<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxLat=right(boxLat,(len(boxLat)-1))<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxLon=strMatch.SubMatches(1)<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxLon=right(boxLon,(len(boxLon)-2))<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxZoom=strMatch.SubMatches(2)<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxAling=strMatch.SubMatches(3)<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (len(boxZoom)=0) then<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxZoom=&#34;13&#34;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; boxZoom=right(boxZoom,(len(boxZoom)-1))<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end if<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (len(boxAling)=0) then<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxAling=&#34;left&#34;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; boxAling=right(boxAling,(len(boxAling)-1))<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end if<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxWidth=strMatch.SubMatches(4)<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxHeight=strMatch.SubMatches(5)<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (len(boxWidth)=0) then <br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxWidth=&#34;128&#34;<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; boxWidth=right(boxWidth,(len(boxWidth)-1))<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end if<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (len(boxHeight)=0) then<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; boxHeight=&#34;128&#34;<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxHeight=right(boxHeight,(len(boxHeight)-1))<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end if<br/>&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boxHtml=strMatch.SubMatches(6)<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;mapID=&#34;map&#34;&amp;Int(100000 * Rnd)<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;strContent= Replace(strContent,strMatch.Value,&#34;&lt;a id=&#34;&#34;&#34;+mapID+&#34;_href&#34;&#34; href=&#34;&#34;javascript:MapShow(&#39;&#34;+mapID+&#34;&#39;,&#39;&#34;+boxLat+&#34;&#39;,&#39;&#34;+boxLon+&#34;&#39;,&#34;+boxZoom+&#34;,&#39;&#34;+boxAling+&#34;&#39;,&#39;&#34;+boxWidth+&#34;&#39;,&#39;&#34;+boxHeight+&#34;&#39;,&#39;&#34;+boxHtml+&#34;&#39;)&#34;&#34;&gt;&lt;img name=&#34;&#34;&#34;+mapID+&#34;_img&#34;&#34; src=&#34;&#34;images/google_earth_16.png&#34;&#34; style=&#34;&#34;margin:0px 3px -2px 0px&#34;&#34; border=&#34;&#34;0&#34;&#34; alt=&#34;&#34;显示地图&#34;&#34;/&gt;&lt;span id=&#34;&#34;&#34;+mapID+&#34;_text&#34;&#34;&gt;&#34;+boxHtml+&#34;&lt;/span&gt;&lt;/a&gt;&lt;div id=&#34;&#34;&#34;+mapID+&#34;&#34;&#34; style=&#34;&#34;float:&#34;+boxAling+&#34;&#34;&#34;&gt;&lt;/div&gt;&#34;)<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Next</div>
</div>
<p><br/>&nbsp;&nbsp;&nbsp;&nbsp;四、我们要对UBB的配置文件 UBBconfig.asp 添加对地图标签的配置。在第14行的 <strong>,html</strong> 后面加上 <str<br />
ong>,gmap</strong> 。这里加的位置就决定了UBB编辑器图标显示的位置。在61行下面加一个 Box 来显示用来标点的地图。<br/>[codes=vb]response.write (&#34;&lt;div id=&#34;&#34;UBBMapPanel&#34;&#34; class=&#34;&#34;UBBSmiliesPanel&#34;&#34;&gt;&lt;/div&gt;&#34;)[/codes]<br/>在下面的实例判断下加入一个地图的实例<br/>
<div class="UBBPanel">
<div class="UBBTitle"> 程序代码</div>
<div class="UBBContent">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Case &#34;gmap&#34;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ToolsToCode=ToolsToCode&amp;&#34;&lt;li&gt;&lt;a id=&#34;&#34;A_gmap&#34;&#34; href=&#34;&#34;javascript:UBB_gmap();void(0)&#34;&#34; title=&#34;&#34;插入地标&#34;&#34; class=&#34;&#34;Toolsbutton&#34;&#34;&gt;&lt;img src=&#34;&#34;images/google_earth_16.png&#34;&#34; border=&#34;&#34;0&#34;&#34; alt=&#34;&#34;插入地标&#34;&#34; /&gt;&lt;/a&gt;&lt;/li&gt;&#34;<br/></div>
</div>
<p><br/>&nbsp;&nbsp;&nbsp;&nbsp;五、在插入UBB标签的页面加入添加 [map] 的支持。这个页面分 ubbcode_ie.asp 和 ubbcode_gecko.asp。在 ubbcode_ie.asp 里面加入如下代码<br/>
<div class="UBBPanel">
<div class="UBBTitle"> 程序代码</div>
<div class="UBBContent">function UBB_gmap(){<br/> if (EditMethod==&#34;normal&#34;){<br/> &#160;&#160;&#160;&#160; var PText<br/> &#160;&#160;&#160;&#160; if (PText=window.prompt(&#34;请输入地图显示的文字，不能为空！\n使用标签：[map=lat,lon,zoom,align,width,height]text[/map]&#34;,&#34;请在此输入地标名&#34;)) {<br/>&nbsp;&nbsp;var mapPos=new getPos(&#39;A_gmap&#39;)<br/>&nbsp;&nbsp;smileyPanel=document.getElementById(&#39;UBBMapPanel&#39;)<br/>&nbsp;&nbsp;smileyPanel.style.width=&#34;300px&#34;<br/>&nbsp;&nbsp;smileyPanel.style.height=&#34;300px&#34;&nbsp;&nbsp;<br/>&nbsp;&nbsp;smileyPanel.style.left=(mapPos.Left-300)+&#34;px&#34;<br/>&nbsp;&nbsp;smileyPanel.style.top=(mapPos.Top-300)+&#34;px&#34;<br/>&nbsp;&nbsp;smileyPanel.style.visibility =&#34;visible&#34;<br/>&#160;&#160;&#160;&#160;var map = new GMap2(document.getElementById(&#34;UBBMapPanel&#34;));<br/>&#160;&#160;&#160;&#160;map.addControl(new GSmallMapControl());<br/>&#160;&#160;&#160;&#160;map.addControl(new GMapTypeControl());<br/>&#160;&#160;&#160;&#160;map.setCenter(new GLatLng(36.94,106.08),4);&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;var OKControl=new K_HtmlControl(&#39;&lt;div class=&#34;userpass&#34;&gt; 确定 &lt;/div&gt;&#39;);<br/>&#160;&#160;&#160;&#160;map.addControl(OKControl,new GControlPosition(G_ANCHOR_BOTTOM_RIGHT,new GSize(155,20)));<br/>&#160;&#160;&#160;&#160;GEvent.addListener(OKControl,&#34;click&#34;,function(){<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;CloseMapPanel()<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;var center = map.getCenter();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;var zoom = map.getZoom();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;center = new String(center);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;center = center.substr(1,center.length-2);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;AddText(&#34;[map=&#34;+center+&#34;,&#34;+zoom+&#34;]&#34;+PText+&#34;[/map]&#34;);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;});<br/>&#160;&#160;&#160;&#160;var CloseControl=new K_HtmlControl(&#39;&lt;div class=&#34;userpass&#34;&gt; 取消 &lt;/div&gt;&#39;);<br/>&#160;&#160;&#160;&#160;map.addControl(CloseControl,new GControlPosition(G_ANCHOR_BOTTOM_RIGHT,new GSize(115,20)));<br/>&#160;&#160;&#160;&#160;GEvent.addListener(CloseControl,&#34;click&#34;,function(){<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;CloseMapPanel()<br/>&#160;&#160;&#160;&#160;});<br/>&#160;&#160;&#160;&#160; }<br/> }<br/> if (EditMethod==&#34;expert&#34;)<br/> {<br/>&#160;&#160;&#160;&#160; AddText(&#34;[map][/map]&#34;)<br/> }<br/>&nbsp;&nbsp; }[/codes]<br/>在 ubbcode_gecko.asp 文件中加入如下代码<br/>[codes=js:collapse]function UBB_gmap(){<br/> if (EditMethod==&#34;normal&#34;){<br/> &#160;&#160;&#160;&#160; var PText<br/> &#160;&#160;&#160;&#160; if (PText=window.prompt(&#34;请输入地图显示的文字，不能为空！\n使用标签：[map=lat,lon,zoom,align,width,height]text[/map]&#34;,&#34;请在此输入地标名&#34;)) {<br/>&nbsp;&nbsp;var mapPos=new getPos(&#39;A_gmap&#39;)<br/>&nbsp;&nbsp;smileyPanel=document.getElementById(&#39;UBBMapPanel&#39;)<br/>&nbsp;&nbsp;smileyPanel.style.width=&#34;300px&#34;<br/>&nbsp;&nbsp;smileyPanel.style.height=&#34;300px&#34;&nbsp;&nbsp;<br/>&nbsp;&nbsp;smileyPanel.style.left=(mapPos.Left-300)+&#34;px&#34;<br/>&nbsp;&nbsp;smileyPanel.style.top=(mapPos.Top-300)+&#34;px&#34;<br/>&nbsp;&nbsp;smileyPanel.style.visibility =&#34;visible&#34;<br/>&#160;&#160;&#160;&#160;var map = new GMap2(document.getElementById(&#34;UBBMapPanel&#34;));<br/>&#160;&#160;&#160;&#160;map.addControl(new GSmallMapControl());<br/>&#160;&#160;&#160;&#160;map.addControl(new GMapTypeControl());<br/>&#160;&#160;&#160;&#160;map.setCenter(new GLatLng(36.94,106.08),4);&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;var OKControl=new K_HtmlControl(&#39;&lt;div class=&#34;userpass&#34;&gt; 确定 &lt;/div&gt;&#39;);<br/>&#160;&#160;&#160;&#160;map.addControl(OKControl,new GControlPosition(G_ANCHOR_BOTTOM_RIGHT,new GSize(155,20)));<br/>&#160;&#160;&#160;&#160;GEvent.addListener(OKControl,&#34;click&#34;,function(){<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;CloseMapPanel()<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;var center = map.getCenter();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;var zoom = map.getZoom();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;center = new String(center);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;center = center.substr(1,center.length-2);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#160;&#160;&#160;&#160;AddText(&#34;[map=&#34;+center+&#34;,&#34;+zoom+&#34;]&#34;+PText+&#34;[/map]&#34;);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;});<br/>&#160;&#160;&#160;&#160;var CloseControl=new K_HtmlControl(&#39;&lt;div class=&#34;userpass&#34;&gt; 取消 &lt;/div&gt;&#39;);<br/>&#160;&#160;&#160;&#160;map.addControl(CloseControl,new GControlPosition(G_ANCHOR_BOTTOM_RIGHT,new GSize(115,20)));<br/>&#160;&#160;&#160;&#160;GEvent.addListener(CloseControl,&#34;click&#34;,function(){<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;CloseMapPanel()<br/>&#160;&#160;&#160;&#160;});<br/>&#160;&#160;&#160;&#160; }<br/> }<br/> if (EditMethod==&#34;expert&#34;)<br/> {<br/>&#160;&#160;&#160;&#160; AddText(&#34;[map][/map]&#34;)<br/> }<br/>&nbsp;&nbsp; }<br/><br/>function CloseMapPanel(){<br/>&nbsp;&nbsp;smileyPanel=document.getElementById(&#39;UBBMapPanel&#39;)<br/>&nbsp;&nbsp;smileyPanel.style.visibility =&#34;hidden&#34;<br/>&nbsp;&nbsp;document.body.removeEventListener(&#34;onclick&#34;,CloseMapPanel,true)<br/>}</div>
</div>
<p><br/>到这里就基本完成了。但你发现只有在后台的编辑和发布日志的时候有标点按钮，在评论里怎么没有呢。那就根据你的需要在其他用到UBB编辑器的地方配置了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fineemb.com/blog/archives/286.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>新版巴巴变插件For Pjblog</title>
		<link>http://www.fineemb.com/blog/archives/252.html</link>
		<comments>http://www.fineemb.com/blog/archives/252.html#comments</comments>
		<pubDate>Mon, 21 Aug 2006 11:03:53 +0000</pubDate>
		<dc:creator>花老鼠</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[bababian]]></category>
		<category><![CDATA[pjblog]]></category>

		<guid isPermaLink="false">http://blog.dnxh.cn/archives/252.html</guid>
		<description><![CDATA[&#160;&#160;&#160;&#160;&#160;&#160; 随着巴巴变的API接口的增加相册插件再次出新版。经过一生等人的测试, 现在正式发布 巴巴变个人相册 插件 For PJBlog。下面是一生写的简单的使用教程。感谢一生这段时间给与的支持与帮助。备注：巴巴变API申请地址 1、首先请下载PJblog相册插件（1.11），然后将插件的压缩文件解压，把解压后的BababianAlbum文件夹上传到blog的Plugins目录下； 2、进入到blog的管理页面，选择&#8220;界面与插件&#8221;，然后点击&#8220;安装模块插件&#8221;，找到&#8220;巴巴变个人相册&#8221;，点击&#8220;安装此插件&#8221;。如果出现&#8220;BababianAlbum 插件安装完成并且移动到 已装插件管理&#8221;的提示表示你已经安装成功，如果不是，请检查插件是否放到了Plugins目录下。 &#160;3、在&#8220;界面与插件&#8221;页面上点击&#8220;已装插件管理&#8221;，找到&#8220;巴巴变个人相册&#8221;，点击&#8220;基本设置&#8221; 在这里只需要输入你申请的api_key，点击&#8220;保存设置&#8221;按钮就可以了。 4、在&#8220;界面与插件&#8221;页面上点击&#8220;已装插件管理&#8221;，找到&#8220;巴巴变个人相册&#8221;，点击&#8220;高级设置&#8221;，然后再点击上面的&#8220;绑定用户&#8221; 在上面输入你的巴巴变登陆信息，点击&#8220;绑定用户&#8221;按钮。 OK！ PJblog相册的插件就安装完成，这时，你的blog页面上就会有&#8220;巴巴变个人相册&#8221;的链接了。 如果有任何问题，可以到巴巴变的支持中心提出，或者联系 QQ：42165386 MSN：ivan_qd@hotmail.com &#160; &#160; Update(20060818): 版本更新到 beta1.10 更新内容如下: 重新定义前台页面的部分变量名, 防止和其他插件产生冲突. 后台图片上传页面指定编码方式, 防止在不同浏览器中出现乱码问题. Update(20060821): 版本更新到 beta1.11 更新内容如下（使用上一版本出现变量名重复定义错误的用户请更新）: 几乎重新命名了所有变量（80%，剩余20%我觉得实在没有必要了），采用 作者+插件名+变量名 的形式命名。 下一版本功能计划： 可以在后台设置各个页面照片显示数量。 在浏览单个照片信息的时候实现上下翻页功能。 &#160;插件由Iplinger制作]]></description>
			<content:encoded><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <strong>随着巴巴变的API接口的增加相册插件再次出新版。经过一生等人的测试, 现在正式发布 <font color="#ff0000">巴巴变个人相册</font> 插件 For PJBlog。下面是一生写的简单的使用教程。感谢一生这段时间给与的支持与帮助。<br />备注：</strong><a href="http://www.bababian.com/app.sl" target="_blank"><font style="BACKGROUND-COLOR: #eeeeee" color="#000000"><strong>巴巴变API申请地址</strong></font></a></p>
<p><font size="2"><strong>1</strong>、首先请下载<strong><font style="BACKGROUND-COLOR: #eeeeee" color="#000000">PJblog相册插件（1.11）</font></strong>，然后将插件的压缩文件解压，把解压后的BababianAlbum文件夹上传到blog的Plugins目录下； </font></p>
<p><font size="2"><strong>2</strong>、进入到blog的管理页面，选择&ldquo;界面与插件&rdquo;，然后点击&ldquo;安装模块插件&rdquo;，找到&ldquo;巴巴变个人相册&rdquo;，点击&ldquo;安装此插件&rdquo;。如果出现&ldquo;BababianAlbum 插件安装完成并且移动到 已装插件管理&rdquo;的提示表示你已经安装成功，如果不是，请检查插件是否放到了Plugins目录下。</font></p>
<p><font size="2">&nbsp;<strong>3</strong>、在&ldquo;界面与插件&rdquo;页面上点击&ldquo;已装插件管理&rdquo;，找到&ldquo;巴巴变个人相册&rdquo;，点击&ldquo;基本设置&rdquo; <img height="135" alt="" src="http://photo.bababian.com/20060817/37005D202B9AF541E8504AADC5B920DB.jpg" width="450" border="0" /> </font></p>
<p><font size="2">在这里只需要输入你申请的api_key，点击&ldquo;保存设置&rdquo;按钮就可以了。 </font></p>
<p><font size="2"><strong>4</strong>、在&ldquo;界面与插件&rdquo;页面上点击&ldquo;已装插件管理&rdquo;，找到&ldquo;巴巴变个人相册&rdquo;，点击&ldquo;高级设置&rdquo;，然后再点击上面的&ldquo;绑定用户&rdquo;</font></p>
<p><font size="2"><img height="142" alt="" src="http://photo.bababian.com/20060817/6FB927E3604F972D399AFDF0D467D87D.jpg" width="450" border="0" /></font></p>
<p><font size="2">在上面输入你的巴巴变登陆信息，点击&ldquo;绑定用户&rdquo;按钮。 OK！ <br /></font></p>
<p><font size="2">PJblog相册的插件就安装完成，这时，你的blog页面上就会有&ldquo;巴巴变个人相册&rdquo;的链接了。 <br /></font></p>
<p><font size="2">如果有任何问题，可以到巴巴变的<a href="http://www.bababian.com/forum.sl"><font style="BACKGROUND-COLOR: #eeeeee" color="#000000">支持中心</font></a>提出，或者联系 <br /></font></p>
<p><font size="2">QQ：42165386</font></p>
<p><font size="5"><font size="2">MSN：ivan_qd@hotmail.com </font><img height="505" alt="" src="http://photo.bababian.com/20060817/31C23D08C148AA6CF8936F047A98FF2D.jpg" width="450" /></font></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><strong><font color="#ff0000">Update(20060818)</font></strong>: 版本更新到 <strong>beta1.10</strong> 更新内容如下:</p>
<ol>
<li>重新定义前台页面的部分变量名, 防止和其他插件产生冲突. </li>
<li>后台图片上传页面指定编码方式, 防止在不同浏览器中出现乱码问题. </li>
</ol>
<p><strong><font color="#ff0000">Update(20060821)</font></strong>: 版本更新到 <strong>beta1.11</strong> 更新内容如下（使用上一版本出现变量名重复定义错误的用户请更新）:</p>
<ol>
<li>几乎重新命名了所有变量（80%，剩余20%我觉得实在没有必要了），采用 <strong>作者+插件名+变量名</strong> 的形式命名。 </li>
</ol>
<p><font color="#339966"><strong>下一版本功能计划：</strong></font></p>
<ol>
<li>可以在后台设置各个页面照片显示数量。 </li>
<li>在浏览单个照片信息的时候实现上下翻页功能。</li>
</ol>
<p>&nbsp;插件由Iplinger制作</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fineemb.com/blog/archives/252.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Pjblog模板制作教程</title>
		<link>http://www.fineemb.com/blog/archives/155.html</link>
		<comments>http://www.fineemb.com/blog/archives/155.html#comments</comments>
		<pubDate>Fri, 16 Jun 2006 04:12:15 +0000</pubDate>
		<dc:creator>花老鼠</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[pjblog]]></category>
		<category><![CDATA[skin]]></category>

		<guid isPermaLink="false">http://blog.dnxh.cn/archives/155.html</guid>
		<description><![CDATA[// 此文全部结束，难免有所错误，以后继续修正 本站原创文章，转载请说明出处！！ Pjblog的用户群越来越大，一个Blog就相当于一个Blogger网上的家。而在现在追求个性的时代，给自己的Blog做过有个性的、符合自己特点的Skin是大家的一个愿望。但这个毕竟涉及到一些知识，我们需要通过自己的努力学习来完成我们的愿望。我将从零说起，大概是这样的一个过程：准备工作→Skin的构思→制图→切片→编写CSS→预览→调试兼容性→美化细节，预览和编写是个循环过程。我想通过本教程能够使大家了解Skin制作，不需要再用别人做的Skin，靠自己的努力把自己的Blog装饰的漂亮有个性。很振奋吧，那我们往下看…… 一、准备工作 1.1 必需的一些基础 你要有学习知识的欲望，这个是一切的前提。你对Pjblog的使用有一定的了解（如果你还不知道Skin是什么、怎么安装，建议你不要往下看）。在做Skin的时候要细心，严格要求自己，有一定的审美观。最好熟悉一些制图软件（Adobe Potoshop、Fireworks之类）。对CSS方面番茄做过很不错的教程（需要注册）。 2.2 涉及的工具 首先你要有太电脑，并且显示器的色彩不是很差（我的本本的液晶显示器让我哭笑不得呀……）。制图软件Adobe Potoshop、Fireworks之类。CSS编写工具，你当然用记事本也可以写。色彩调配软件，屏幕截图软件。这些基本在本站都有下载，为了防止站点流量过大被K，我只能加了下载级别，并随机变换下载地址。请注册后下载，谢谢你的合作！ Macromedia Studio 8.0 官方简体中文正式版 电驴下载地址:http://lib.verycd.com/2005/10/14/0000069569.html 比较认同的网页制作类软件，这里我们主要是用套装里面的 Fireworks（教程里面用的就是他）。当然你也可以用Adobe Potoshop。 CSS编写工具EditPlus V2.1.2 Build 147 汉化版 当然有人说用Dreamweaver不是更好？这里不建议用，手写更容易记住代码的含义，再说CSS可视化编写不是很理想。本来TopStyle3是可视化编写CSS的最佳工具，但介于Pjblog的CSS是分几个文件的用他效果也不怎么明显。 Color Schemer Studio1.5配色工具 配色是你构思Skin的第一步。这款工具对颜色的搭配比较专业。 苏昱式样表中文手册2.0（一下简称《手册》） 调试软件Firefox 现在有94％的人在用IE，但Firefox的用户也在不断的增长。Firefox的好我在这里就不说了。但CSS在这两个浏览器之间肯定有兼容的问题。 截图工具HyperSnap5 这个也是我用后认为功能比较强大的截屏软件。 如果你打瞌睡了那就休息一下…… 二、 构思你的Skin 2.1配色 你的Blog给人的第一印象就是视觉上的，所以说色很重要。 这里我们用的是白、灰、红。一般灰色是通用的，就像血型里的O型血一样。 2.2布局 页面的布局先不说太复杂的，你理解了结构后可以发挥自己的想象力。在这里要说的是CSS（Cascading Style Sheets层叠样式表单）这里的重点就是层叠。如果说Skin设计是平面设计，那我认为就错了。从欣赏的角度看这是个平面作品，但从设计的角度看那就是三维的。要不怎么有z-index这样的属性呢。再者我们可以这样做个比较，CSS是说的层类似于PS或FW里面的图层，不一样的地方仅仅在于：层交换顺序－－PS可以而DIV＋CSS不可以；Alpha通道－－PS可以而CSS不可以（一些浏览器可以）。图片的如上图所示，我们可以看到Pjblog的结构和DIV的前后顺序，前面的覆盖后面的（当然也可以是透明的）。我们先不玩花哨的，Blog的布局一般都就这样。 这里的header就是头部，里面包含Blog名、副标题、横向菜单； Tbody是中部内容，里面包含着主内容（mainContent也就是我们写的日志，就像这个教程在的位置）、侧栏（sidebar）； foot是底部，里面包含我们的一些版权信息、备案什么的； 我们说了这么多都是说的Pjblog的结构，也就是说是Box和Box之间的关系。而Box是怎么组成的呢？这里已经有高人Douglas做个个Flash模型，里面很明白的说明了margin，background-color，background-image，padding ，border 以及他们之间的关系。 当然这些是Pjblog的主体部分，每个部分里面还包含一些其他DIV，而这些细节（像横向菜单、侧栏内容面板、主内容模块等等）也是美化我们Blog的要点，但这个我们慢慢来。先看主体这样先可以在你的脑海里有个Skin的大概样子，为我们下面的制图做好充分的准备。 下面自己做了个Pjblog的结构模型。 三、制图 [...]]]></description>
			<content:encoded><![CDATA[<p><script type="text/JavaScript">// <![CDATA[
function runEx(cod1) {
  cod=document.getElementById(cod1);
  var code=cod.value;
  if (code!=""){
  var newwin=window.open('','',''); //打开一个窗口并赋给变量newwin。
  newwin.opener = null // 防止代码对论谈页面修改
  newwin.document.write(code); //向这个打开的窗口中写入代码code，这样就实现了运行代码功能。
  newwin.document.close();
 }
}
// ]]&gt;</script><br />
<span style="color: red;">此文全部结束，难免有所错误，以后继续修正<br />
<strong>本站原创文章，转载请说明出处！！</strong></span><br />
<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的用户群越来越大，一个Blog就相当于一个Blogger网上的家。而在现在追求个性的时代，给自己的Blog做过有个性的、符合自己特点的Skin是大家的一个愿望。但这个毕竟涉及到一些知识，我们需要通过自己的努力学习来完成我们的愿望。我将从零说起，大概是这样的一个过程：<strong>准备工作→Skin的构思→制图→切片→编写CSS→预览→调试兼容性→美化细节，预览和编写是个循环过程</strong>。我想通过本教程能够使大家了解Skin制作，不需要再用别人做的Skin，靠自己的努力把自己的Blog装饰的漂亮有个性。很振奋吧，那我们往下看……<br />
<span style="color: black;"><strong>一、准备工作</strong></span><br />
<span style="color: black;"><strong>1.1 必需的一些基础</strong></span><br />
你要有学习知识的欲望，这个是一切的前提。你对<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的使用有一定的了解（如果你还不知道Skin是什么、怎么安装，建议你不要往下看）。在做Skin的时候要细心，严格要求自己，有一定的审美观。最好熟悉一些制图软件（Adobe Potoshop、Fireworks之类）。对CSS方面<a href="http://bbs.pjhome.net/viewthread.php?tid=51&amp;extra=page%3D1" target="_blank">番茄做过很不错的教程</a>（需要注册）。<br />
<span style="color: black;"><strong>2.2 涉及的工具</strong></span><br />
首先你要有太电脑，并且显示器的色彩不是很差（我的本本的液晶显示器让我哭笑不得呀……）。制图软件Adobe Potoshop、Fireworks之类。CSS编写工具，你当然用记事本也可以写。色彩调配软件，屏幕截图软件。这些基本在本站都有下载，为了防止站点流量过大被K，我只能加了下载级别，并随机变换下载地址。请注册后下载，谢谢你的合作！<br />
<strong>Macromedia Studio 8.0 官方简体中文正式版</strong><br />
电驴下载地址:<a href="http://lib.verycd.com/2005/10/14/0000069569.html" target="_blank">http://lib.verycd.com/2005/10/14/0000069569.html</a><br />
比较认同的网页制作类软件，这里我们主要是用套装里面的 Fireworks（教程里面用的就是他）。当然你也可以用Adobe Potoshop。<br />
<strong>CSS编写工具EditPlus V2.1.2 Build 147 汉化版</strong><br />
当然有人说用Dreamweaver不是更好？这里不建议用，手写更容易记住代码的含义，再说CSS可视化编写不是很理想。本来TopStyle3是可视化编写CSS的最佳工具，但介于<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的CSS是分几个文件的用他效果也不怎么明显。<br />
<strong>Color Schemer Studio1.5配色工具</strong><br />
配色是你构思Skin的第一步。这款工具对颜色的搭配比较专业。<br />
<strong>苏昱式样表中文手册2.0（一下简称《手册》）</strong><br />
<strong>调试软件Firefox</strong></p>
<p>现在有94％的人在用IE，但Firefox的用户也在不断的增长。Firefox的好我在这里就不说了。但CSS在这两个浏览器之间肯定有兼容的问题。<br />
<strong>截图工具HyperSnap5</strong><br />
这个也是我用后认为功能比较强大的截屏软件。<br />
如果你打瞌睡了那就休息一下……<br />
<span style="color: black;"><strong>二、 构思你的Skin</strong></span><br />
<span style="color: black;"><strong>2.1配色</strong></span><br />
你的Blog给人的第一印象就是视觉上的，所以说色很重要。<br />
<img src="http://photo3.yupoo.com/20060224/20060224215726_388672413.jpg" border="0" alt="" /><br />
这里我们用的是白、灰、红。一般灰色是通用的，就像血型里的O型血一样。<br />
<span style="color: black;"><strong>2.2布局</strong></span><br />
<img src="http://photo3.yupoo.com/20060228/20060228081800_1077884960_oWtZM.jpg" border="0" alt="" /><br />
页面的布局先不说太复杂的，你理解了结构后可以发挥自己的想象力。在这里要说的是CSS（Cascading Style Sheets层叠样式表单）这里的重点就是层叠。如果说Skin设计是平面设计，那我认为就错了。从欣赏的角度看这是个平面作品，但从设计的角度看那就是三维的。要不怎么有z-index这样的属性呢。再者我们可以这样做个比较，CSS是说的层类似于PS或FW里面的图层，不一样的地方仅仅在于：层交换顺序－－PS可以而DIV＋CSS不可以；Alpha通道－－PS可以而CSS不可以（一些浏览器可以）。图片的如上图所示，我们可以看到<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的结构和DIV的前后顺序，前面的覆盖后面的（当然也可以是透明的）。我们先不玩花哨的，Blog的布局一般都就这样。<br />
这里的header就是头部，里面包含Blog名、副标题、横向菜单；<br />
Tbody是中部内容，里面包含着主内容（mainContent也就是我们写的日志，就像这个教程在的位置）、侧栏（sidebar）；<br />
foot是底部，里面包含我们的一些版权信息、备案什么的；<br />
我们说了这么多都是说的<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的结构，也就是说是Box和Box之间的关系。而Box是怎么组成的呢？这里已经有高人Douglas做个个<a href="http://www.fineemb.com/attachments/month_0602/7200622583339.swf">Flash模型</a>，里面很明白的说明了margin，background-color，background-image，padding ，border 以及他们之间的关系。<br />
<a href="http://www.fineemb.com/attachments/month_0602/7200622583339.swf"></a></p>
<p>当然这些是<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的主体部分，每个部分里面还包含一些其他DIV，而这些细节（像横向菜单、侧栏内容面板、主内容模块等等）也是美化我们Blog的要点，但这个我们慢慢来。先看主体这样先可以在你的脑海里有个Skin的大概样子，为我们下面的制图做好充分的准备。<br />
下面自己做了个<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的<a href="http://www.fineemb.com/down/Pjblogmodel.swf">结构模型</a>。</p>
<p><span style="color: black;"><strong>三、制图</strong></span><br />
<span style="color: black;"><strong>3.1了解背景</strong></span><br />
为什么要特设一节说背景呢？因为在CSS里所用的图片都是以背景的形式存在的。在我们制图、切图的过程中始终不能忘记这点，要做到尽可能的减少图片的体积（现在好多简洁的Skin都实现了不用图片或少用图片），为的是减少下载量，提高页面浏览的速度。<br />
那我们来看看<strong>background : </strong><br />
他的属性包括了<br />
<span style="color: brown;">background-color</span> 颜色<br />
<span style="color: maroon;"> background-image</span> 图像<br />
<span style="color: brown;">background-repeat</span> 重复方式<br />
<span style="color: brown;">background-attachment</span> 是否滚动<br />
<span style="color: brown;">background-position</span> 位置<br />
而我们制图的时候要注意的是那些呢？首先我们看color和image的关系，始终是color显示在下面image在上面。这个的作用就是某些大块单色的地方我们就不需要用image而是采用color；再个就是repeat，他可以让图片以X或Y重复或不重复的方式显示。这个的作用就是某背景有这样的重复的我们切图的时候宽（长）只要切1px就可以了；我们要结合<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的结构对这些特性综合运用，要培养自己的3D思维。<br />
<span style="color: black;"><strong>3.2主体的制作</strong></span><br />
我们以我现在用的这款Skin做例子，来简述制图过程。<br />
我们先来看看我们想做的是怎样的一个主体（这个在你自己的脑海里应该已经成型，或有个模糊的构思）。<br />
<img src="http://photo3.yupoo.com/20060228/20060228144406_2131754310_zwoRJ.jpg" border="0" alt="" /><br />
白色的主调两边带点阴影，侧边是灰色（#EEEEEE）230px宽。<br />
打开Fireworks，新建一个1000px×768px的白色背景的文件（因为这款Skin的主体背景是白色的）。确定我们的主体内容为800px宽，绘制一个宽度为800px，高度大于画布的矩形，再给加上1px宽的灰色（#999999）的边框。用滤镜发光给加点阴影，滤镜的参数设置成宽度为5，柔化为10，透明度为15，颜色为黑色，偏移为0。<br />
再给加个侧栏绘制一个宽为230px，高度大于画布的矩形，放置到左边，注意不要压住1px的边框。这样我们的主体部分就绘制好了。制作主体部分我们要注意些什么呢。主要我们要考虑到页面的高度问题，因为页面的高度会随内容的不同而变化，那我们就要做一个有弹性的高度。我们可以利用Background-repeat设置值为y。那我们的背景就是纵向重复了。<br />
<span style="color: black;"><strong>3.2头部的制作</strong></span><br />
同样我们先看一下我们要做个什么样的Top。<br />
<img src="http://photo3.yupoo.com/20060228/20060228142555_260782327_IwNXq.jpg" border="0" alt="" /><br />
我们看到的是两条带质感的半透明的横条压在主体上，<br />
我们画两个矩形，宽度大于画布（因为我们要这两条自适应宽度）。通过调节渐变给矩形加点质感，调整透明度为80。<br />
<img src="http://photo3.yupoo.com/20060228/20060228152102_323268779_iKoZh.jpg" border="0" alt="" /><br />
这样我们的Top就做好了。<br />
<span style="color: black;"><strong>3.3底部的制作</strong></span><br />
底部的制作一般比较简单，这里为了对应Top也加了个横条，这里就不做自适应宽度了（当然也是可以做的，我们从简单的做起）。下面是段灰色的矩形，上面压个横条。<br />
<img src="http://photo3.yupoo.com/20060228/20060228155232_324030703_hiKPM.jpg" border="0" alt="" /><br />
到这里我们的图基本已经画了个大概了。你看了可能就一会儿，但有的时候我们从构思到成型可能需要几天。为了配合看效果最好加点内容里面。配合链接颜色看看，反复修改而达到最佳效果。<br />
<span style="color: black;"><strong>3.4切片</strong></span><br />
所谓切片，顾名思义就是把做好的图切成你需要的一块块。有很多朋友都是在这里卡住了，不知道怎么切好。这里要说的是在可以表现出你的效果的前提下，图切的越小越好、越少越好。那需要切那些呢？怎么切？其实是根据你CSS的需要来切的。你可以先跳过这个不看，在学习了CSS后你想在某个Box里设置背景的时候，你就会想到图，那你就到做好的图里面切一块去用吧。慢慢的你就明白怎么切图了。下图就是头部背景图的切片，我们还可以看到切图用的是什么工具（我认为Fireworks切图功能好点）。在Fireworks里面切片是放在网页层里面的，我们可以给切片命名，想要这个切片的时候我们就可以导出图片。这里还要说的是导出图片的格式，就是优化栏的属性。个人比较喜欢PNG32格式，他支持Alpha通道（未来的趋势）。要是不透明图片选JPG也很好（他体积小）。<br />
<img src="http://photo3.yupoo.com/20060303/20060303124349_1351230058_aWxoC.jpg" border="0" alt="" /><br />
整体的PNG分层文件提供给大家研究。 <a href="http://www.fineemb.com/attachments/month_0603/1200633124913.rar" target="_blank">点击下载此文件</a><br />
我们打开这个文件可以看到。如头部、主体背景、底部他们的宽度不是我们刚开始的时候说的800px，那是因为我们在外面加了阴影。一定要把这个尺寸算进去（一般要求算，而不是看阴影和背景色差不大的时候容易搞错，要做到仔细）。而全局背景并不需要拉的很高，因为下面的白色我们完全可以用CSS做，大了就浪费了。还有就是按钮背景图，如果你是有鼠标接触式样的建议你不要分两张图，我们做在一张图上，通过CSS控制图片的位置来实现不同的背景，这个等说到CSS的时候再详细说。<br />
<span style="color: black;"><strong>四、编写代码</strong></span><br />
<span style="color: black;"><strong>4.1全局式样</strong></span><br />
终于进入了核心部分，我们将用CSS＋DIV美化我们的Blog。有好多朋友总是问这样一个问题，我怎样做Skin。我这里想说的是你先要了解CSS和DIV的关系。DIV就像房子的骨架（砖墙等等），而CSS就是室内外装潢，你不了解骨架是怎么构成的你怎么去装潢呢？还有要说的重要的一点是CSS的特点之一，后面定义的取代前面定义的。比如说我在全局式样里定义了字体颜色是红的，而在后面主体里面定义了颜色是蓝的，那我们看到的就是蓝的。<br />
我们进入正题，先说全局式样（在<a href="http://www.pjhome.net" target="_blank">Pjblog</a>里面是Skin文件夹下面的global.css文件）。这里我们可以对整个页面的特定标签定义外观。特定标签比如<span style="color: green;">body、img、select、th</span>等等这些是内置标签。这里的式样对<span style="color: green;">&lt;body&gt;&lt;/body&gt;</span>里面的内容和DIV有效。看代码<strong>（&lt;style type=&#8221;text/css&#8221;&gt;&lt;/style&gt;里面为CSS代码，&lt;/head&gt;看作是DIV布局，以后都是用这种可运行代码表示，不在重复）</strong></p>
<div class="UBBPanel">
<div class="UBBTitle">HTML代码</div>
<div class="UBBContent"><textarea id="temp11167" rows="8">&lt;br /&gt; &lt;mce:style type=&#8221;text/css&#8221;&gt;&lt;!&#8211; body { font-family: Arial, Helvetica, sans-serif;/*设置字体*/ background-color: #FFFFFF;/*背景颜色*/ background-repeat: repeat-x;/*背景图像的重复方向*/ margin: 0px;/*边距为0*/ padding: 0px;/*补白为0，这里假如你不要边框和补白一般最好设置一下0值。就像做表格里的一样*/ background-image: url(skins/dnxh10/bg.jpg);/*背景图像位置*/ color: #888888;/*前景颜色*/ } img { max-width: 100%;height:auto;/*图片的宽度（max-width只对非IE核心浏览器有效）*/ border: none;/*无边框*/ } select { font-family: &#8220;Times New Roman&#8221;, Times, serif; } &#8211;&gt;&lt;/mce:style&gt;&lt;style  type=&#8221;text/css&#8221; mce_bogus=&#8221;1&#8243;&gt;&lt;!&#8211; body { font-family: Arial, Helvetica, sans-serif;/*设置字体*/ background-color: #FFFFFF;/*背景颜色*/ background-repeat: repeat-x;/*背景图像的重复方向*/ margin: 0px;/*边距为0*/ padding: 0px;/*补白为0，这里假如你不要边框和补白一般最好设置一下0值。就像做表格里的一样*/ background-image: url(skins/dnxh10/bg.jpg);/*背景图像位置*/ color: #888888;/*前景颜色*/ } img { max-width: 100%;height:auto;/*图片的宽度（max-width只对非IE核心浏览器有效）*/ border: none;/*无边框*/ } select { font-family: &#8220;Times New Roman&#8221;, Times, serif; } &#8211;&gt;&lt;/style&gt; &lt;p&gt;&lt;/head&gt;&lt;br /&gt; &lt;body&gt;&lt;br /&gt; &lt;/body&gt;&lt;br /&gt; &lt;/html&gt;</textarea></p>
<input onclick="runEx('temp11167')" type="button" value="运行此代码" />
<input onclick="doCopy('temp11167')" type="button" value="复制此代码" /> [Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]</div>
</div>
<p>通过预览我们可以看到一个背景式样了，那其他的说怎么没提现呢。那是没有内容在里面，你可以试着在<span style="color: green;">&lt;body&gt;&lt;/body&gt;</span>之间添加代码或文字看看。你也可以改变式样里的属性看看起了些什么变化（如果你不知道属性是什么，建议你看看上面的《苏昱式样表中文手册2.0》）。你可以把<span style="color: brown;">background-color:</span>的属性改成<span style="color: brown;">#000</span>看看，背景是不是成黑色的了。是不是感觉有点成就感呢（我当时就感觉到了 <img style="margin:0px 0px -2px 0px" src="http://www.fineemb.com/images/smilies/surprised.png" border="0" alt="" />!）。千万不要拘束于这几个标签，你可以试着用更多标签和属性的组合来改变外观。这样你才有可能做出有个性的Skin。<br />
<span style="color: black;"><strong>4.2主体式样</strong></span><br />
我们把全局式样看作是<span style="color: green;">&lt;body&gt;</span>的话，那就把主体式样看作是<span style="color: green;">#container</span>。说到这里我们可能有点明白了CSS的编写其实是一个细化的过程。为什么这么说呢？你看<span style="color: green;">#container</span>其实是包含在<span style="color: green;">&lt;body&gt;</span>里的，而我们以后说的有都是包含在<span style="color: green;">#container</span>里的。<br />
通过上面的模型可以看出，<span style="color: green;">#container</span>里包含了<span style="color: green;">#header、#Tbody、#foot</span>通过这几个的定义我们就可以实现上面所画的图了。我们在上面的代码上继续添加，看代码</p>
<div class="UBBPanel">
<div class="UBBTitle">HTML代码</div>
<div class="UBBContent"><textarea id="temp92604" rows="8">&lt;br /&gt; &lt;mce:style type=&#8221;text/css&#8221;&gt;&lt;!&#8211; &lt;br /&gt; &lt;!&#8211;&lt;br /&gt; body {&lt;br /&gt; 	font-family: Arial, Helvetica, sans-serif;/*设置字体*/&lt;br /&gt; 	background-color: #FFFFFF;/*背景颜色*/&lt;br /&gt; 	background-repeat: repeat-x;/*背景图像的重复方向*/&lt;br /&gt; 	margin: 0px;/*边距为0*/&lt;br /&gt; 	padding: 0px;/*补白为0，这里假如你不要边框和补白一般最好设置一下0值。就像做表格里的一样*/&lt;br /&gt; 	background-image: url(skins/dnxh10/bg.jpg);/*背景图像位置*/&lt;br /&gt;                 color: #888888;/*前景颜色*/&lt;br /&gt;                 text-align:center;/*包含的内容居中*/&lt;br /&gt; }&lt;br /&gt; img {&lt;br /&gt; 	max-width: 100%;height:auto;/*图片的宽度（max-width只对非IE核心浏览器有效）*/&lt;br /&gt; 	border: none;/*无边框*/&lt;/p&gt; &lt;p&gt;}&lt;br /&gt; select {&lt;br /&gt; 	font-family: &#8220;Times New Roman&#8221;, Times, serif;&lt;br /&gt; }&lt;/p&gt; &lt;p&gt;#container{width:816px;text-align:center;margin: auto;background:url(skins/dnxh10/cont_bg.jpg) repeat-y;height:600px;}&lt;br /&gt; &#8211;&gt;&lt;br /&gt; &#8211;&gt;&lt;/mce:style&gt;&lt;style type=&#8221;text/css&#8221; mce_bogus=&#8221;1&#8243;&gt;&lt;br /&gt; &lt;!&#8211;&lt;br /&gt; body {&lt;br /&gt; 	font-family: Arial, Helvetica, sans-serif;/*设置字体*/&lt;br /&gt; 	background-color: #FFFFFF;/*背景颜色*/&lt;br /&gt; 	background-repeat: repeat-x;/*背景图像的重复方向*/&lt;br /&gt; 	margin: 0px;/*边距为0*/&lt;br /&gt; 	padding: 0px;/*补白为0，这里假如你不要边框和补白一般最好设置一下0值。就像做表格里的一样*/&lt;br /&gt; 	background-image: url(skins/dnxh10/bg.jpg);/*背景图像位置*/&lt;br /&gt;                 color: #888888;/*前景颜色*/&lt;br /&gt;                 text-align:center;/*包含的内容居中*/&lt;br /&gt; }&lt;br /&gt; img {&lt;br /&gt; 	max-width: 100%;height:auto;/*图片的宽度（max-width只对非IE核心浏览器有效）*/&lt;br /&gt; 	border: none;/*无边框*/&lt;/p&gt; &lt;p&gt;}&lt;br /&gt; sel&amp;#101;ct {&lt;br /&gt; 	font-family: &amp;#34;Times New Roman&amp;#34;, Times, serif;&lt;br /&gt; }&lt;/p&gt; &lt;p&gt;#container{width:816px;text-align:center;margin: auto;background:url(skins/dnxh10/cont_bg.jpg) repeat-y;height:600px;}&lt;br /&gt; &#8211;&gt;&lt;br /&gt;&lt;/style&gt;&lt;br /&gt; &lt;/head&gt;&lt;/p&gt; &lt;p&gt;&lt;body&gt;&lt;/p&gt; &lt;div id=&#8221;container&#8221;&gt; &lt;div id=&#8221;header&#8221;&gt;        &lt;/div&gt; &lt;div id=&#8221;tbody&#8221; style=&#8221;height:500px&#8221;&gt;        &lt;/div&gt; &lt;div id=&#8221;foot&#8221;&gt;        &lt;/div&gt; &lt;/div&gt; &lt;p&gt;&lt;/body&gt;&lt;br /&gt; &lt;/html&gt;</textarea></p>
<input onclick="runEx('temp92604')" type="button" value="运行此代码" />
<input onclick="doCopy('temp92604')" type="button" value="复制此代码" /> [Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]</div>
</div>
<p>首先我们在&lt;body&gt;里添加了需要的&lt;div&gt;<br />
<span style="color: green;">&lt;div id=&#8221;"&gt;主体<br />
&lt;div id=&#8221;header&#8221;&gt;顶部<br />
&lt;/div&gt;</span></p>
<p>&lt;div id=&#8221;tbody&#8221;&gt;内容<br />
&lt;/div&gt;</p>
<p>&lt;div id=&#8221;foot&#8221;&gt;底部<br />
&lt;/div&gt;</p>
<p>&lt;/div&gt;<br />
我们先从#container加起（为什么要加个#号，不明白的去看手册）。<br />
<span style="color: brown;">#container{width:816px;</span>宽度，应该和你切片的时候有所对应<br />
<span style="color: brown;">text-align:center;</span>内容居中<br />
<span style="color: brown;">margin:0 auto;</span>边框为零。这里要注意的是，要#container居中我们必须设置margin为auto而且父元素（body）为text- align:center;<br />
<span style="color: brown;">background:url(skins/dnxh10/cont_bg.jpg) repeat-y;</span>背景路径并以Y方向重复。<br />
<span style="color: brown;">height:600px;</span><br />
}<br />
现在预览一下看看，好像主体出来了。但顶部不是我们想象的那样呀！在#container上不是有三个元素吗，那我们再来定义一下#header和#foot就可以了。#tbody我们可以留空有更大的活动性。</p>
<div class="UBBPanel">
<div class="UBBTitle">HTML代码</div>
<div class="UBBContent"><textarea id="temp74851" rows="8">&lt;br /&gt; &lt;mce:style type=&#8221;text/css&#8221;&gt;&lt;!&#8211; &lt;br /&gt; &lt;!&#8211;&lt;br /&gt; body {&lt;br /&gt; 	font-family: Arial, Helvetica, sans-serif;/*设置字体*/&lt;br /&gt; 	background-color: #FFFFFF;/*背景颜色*/&lt;br /&gt; 	background-repeat: repeat-x;/*背景图像的重复方向*/&lt;br /&gt; 	margin: 0px;/*边距为0*/&lt;br /&gt; 	padding: 0px;/*补白为0，这里假如你不要边框和补白一般最好设置一下0值。就像做表格里的一样*/&lt;br /&gt; 	background-image: url(skins/dnxh10/bg.jpg);/*背景图像位置*/&lt;br /&gt;                 color: #888888;/*前景颜色*/&lt;br /&gt;                 text-align:center;/*包含的内容居中*/&lt;br /&gt; }&lt;br /&gt; img {&lt;br /&gt; 	max-width: 100%;height:auto;/*图片的宽度（max-width只对非IE核心浏览器有效）*/&lt;br /&gt; 	border: none;/*无边框*/&lt;/p&gt; &lt;p&gt;}&lt;br /&gt; select {&lt;br /&gt; 	font-family: &#8220;Times New Roman&#8221;, Times, serif;&lt;br /&gt; }&lt;/p&gt; &lt;p&gt;#container {width:816px;text-align:center;margin: auto;background:url(skins/dnxh10/cont_bg.jpg) repeat-y;}&lt;br /&gt; #header {width:816px;height:110px;text-align:left;background:url(skins/dnxh10/top.jpg) no-repeat;}&lt;br /&gt; #foot {width:816px;height:85px;text-align:center;background:url(skins/dnxh10/bottom.jpg) no-repeat;}&lt;br /&gt; &#8211;&gt;&lt;br /&gt; &#8211;&gt;&lt;/mce:style&gt;&lt;style type=&#8221;text/css&#8221; mce_bogus=&#8221;1&#8243;&gt;&lt;br /&gt; &lt;!&#8211;&lt;br /&gt; body {&lt;br /&gt; 	font-family: Arial, Helvetica, sans-serif;/*设置字体*/&lt;br /&gt; 	background-color: #FFFFFF;/*背景颜色*/&lt;br /&gt; 	background-repeat: repeat-x;/*背景图像的重复方向*/&lt;br /&gt; 	margin: 0px;/*边距为0*/&lt;br /&gt; 	padding: 0px;/*补白为0，这里假如你不要边框和补白一般最好设置一下0值。就像做表格里的一样*/&lt;br /&gt; 	background-image: url(skins/dnxh10/bg.jpg);/*背景图像位置*/&lt;br /&gt;                 color: #888888;/*前景颜色*/&lt;br /&gt;                 text-align:center;/*包含的内容居中*/&lt;br /&gt; }&lt;br /&gt; img {&lt;br /&gt; 	max-width: 100%;height:auto;/*图片的宽度（max-width只对非IE核心浏览器有效）*/&lt;br /&gt; 	border: none;/*无边框*/&lt;/p&gt; &lt;p&gt;}&lt;br /&gt; sel&amp;#101;ct {&lt;br /&gt; 	font-family: &amp;#34;Times New Roman&amp;#34;, Times, serif;&lt;br /&gt; }&lt;/p&gt; &lt;p&gt;#container {width:816px;text-align:center;margin: auto;background:url(skins/dnxh10/cont_bg.jpg) repeat-y;}&lt;br /&gt; #header {width:816px;height:110px;text-align:left;background:url(skins/dnxh10/top.jpg) no-repeat;}&lt;br /&gt; #foot {width:816px;height:85px;text-align:center;background:url(skins/dnxh10/bottom.jpg) no-repeat;}&lt;br /&gt; &#8211;&gt;&lt;br /&gt;&lt;/style&gt;&lt;br /&gt; &lt;/head&gt;&lt;/p&gt; &lt;p&gt;&lt;body&gt;&lt;/p&gt; &lt;div id=&#8221;container&#8221;&gt; &lt;div id=&#8221;header&#8221;&gt;        &lt;/div&gt; &lt;div id=&#8221;tbody&#8221; style=&#8221;height:500px&#8221;&gt;        &lt;/div&gt; &lt;div id=&#8221;foot&#8221;&gt;        &lt;/div&gt; &lt;/div&gt; &lt;p&gt;&lt;/body&gt;&lt;br /&gt; &lt;/html&gt;</textarea></p>
<input onclick="runEx('temp74851')" type="button" value="运行此代码" />
<input onclick="doCopy('temp74851')" type="button" value="复制此代码" /> [Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]</div>
</div>
<p>看到了，哈哈。整个结构是不是好像成型了。这里我们定义了#header。<br />
#header {<br />
<span style="color: brown;">width:816px;</span>宽度，这里也就是图片的宽度<br />
<span style="color: brown;">height:110px;</span>高度，这里也就是图片的高度<br />
<span style="color: brown;">text-align:left;</span>内容左对齐，因为我们以后里面的Blog名字是要靠左的。<br />
<span style="color: brown;">background:url(skins/dnxh10/top.jpg) no-repeat;</span>背景路径，不重复<br />
}<br />
底部的定义也一样。就不在罗嗦了。<br />
<span style="color: red;">PS:</span>这里的<span style="color: green;">&lt;div id=&#8221;tbody&#8221; style=&#8221;height:500px&#8221;&gt;</span>因为里面没内容，而设置的高度做演示用的。<br />
<span style="color: black;"><strong>4.3顶部式样</strong></span><br />
顶部的美化很重要，因为用户打开你的Blog的时候首先进入眼帘的就是顶部。做顶部式样的时候你要知道顶部式样是在什么地方，他的结构是怎样的。顶部式样就是Header和他里面的内容，结构我们可以通过上面的Flash模型来了解。我们还是看代码：</p>
<div class="UBBPanel">
<div class="UBBTitle">HTML代码</div>
<div class="UBBContent"><textarea id="temp7786" rows="8">&lt;/p&gt; &lt;div id=&#8221;header&#8221;&gt; &lt;div id=&#8221;blogname&#8221;&gt;酷秀网络&lt;/p&gt; &lt;div id=&#8221;blogtitle&#8221;&gt;dnxh:电脑绣花、电脑协会、电脑笑话、呆脑小孩、等你喜欢……             &lt;/div&gt; &lt;/div&gt; &lt;div id=&#8221;left&#8221;&gt;&lt;/div&gt; &lt;div id=&#8221;right&#8221;&gt;&lt;/div&gt; &lt;div id=&#8221;menu&#8221;&gt; &lt;ul&gt; &lt;li class=&#8221;menuL&#8221;&gt;&lt;/li&gt; &lt;li&gt;&lt;a class=&#8221;menuA&#8221; href=&#8221;"/blog&#8221;" mce_href=&#8221;"/blog&#8221;"&gt;首页&lt;/a&gt;&lt;/li&gt; &lt;li class=&#8221;menuDIV&#8221;&gt;&lt;/li&gt; &lt;li&gt;&lt;a class=&#8221;menuA&#8221; href=&#8221;"/rss&#8221;" mce_href=&#8221;"/rss&#8221;"&gt;聚合器&lt;/a&gt;&lt;/li&gt; &lt;li class=&#8221;menuR&#8221;&gt;&lt;/li&gt; &lt;/ul&gt; &lt;/div&gt; &lt;/div&gt; &lt;p&gt;</textarea></p>
<input onclick="runEx('temp7786')" type="button" value="运行此代码" />
<input onclick="doCopy('temp7786')" type="button" value="复制此代码" /> [Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]</div>
</div>
<p>不知道为什么这段不能加式样，可能是和页面的代码一样的缘故吧。那我们就不加，我们先来分析一下结构，看每个元素的作用是什么。我们先设置一下#header的式样，上面我们已经说过了。<br />
<span style="color: brown;">#container #header{width:816px;height:110px;background: url(top.jpg) no-repeat;text-align:left;}</span><br />
#blogname就是我们的Blog的名字，他包含了#blogtitle子元素。我们设置的时候先设置#blogname再设置#blogtitle。<br />
<span style="color: brown;">#container #header #blogname{font-size:22px;color:#999;font-weight:bold;float:left;padding:15px 0 0 25px;}</span><br />
<span style="color: brown;">#container #header #blogname #blogTitle{display:none}</span><br />
在这里我们设置了#blogname的字体大小、颜色、粗体、和浮动左、补白的距离。而blogtitle设置了不显示。<br />
再往下看，看到了#left和#right两个元素，看命名的意思我们就知道了。那是#header两头的式样，我们可以靠float:left和float:right来实现，在这个式样里我们不需要设置。这个主要可以实现圆角之类的#header。<br />
#menu是菜单项，一般我们看这里的时候比较糊涂，再加上含有float属性，运用起来比较难以驾驱。我们来分析一下：<br />
#menu是个整体式样。里面包含了一个&lt;ul&gt;&lt;li&gt;&lt;/li&gt;&lt;/ul&gt;的结构。<a href="http://www.cnbruce.com/blog/showlog.asp?cat_id=5&amp;log_id=866" target="_blank">关于项目列表</a>,而li里面又有绑定了式样，分别是menuL、menuA、menuDIV、menuR分别的作用就是menuL利用Float:left;控制菜单左端的式样，menuDIV控制菜单项目之间的式样也就是分隔符，而menuR就是利用float:right;控制菜单右端的式样。<br />
<span style="color: brown;"> #container #header #menu{float:right;margin:35px 15px 0 0}<br />
#container #header #menu ul{}<br />
#container #header #menu ul li{float:left;height:20px;list-style:none;}<br />
.menuL{}<br />
.menuR{}<br />
.menuDiv{width:1px;height:20px;background:#999;margin-right:15px;margin-left:15px;}</span><br />
li里面的float:left;是实现横向菜单的必要条件，list-style:none;是消除列表前的小圆点的。<br />
仅仅就这些式样顶部还是不完美的。我们要设置菜单的链接式样。也就是我们刚才少一个没说的menuA的式样。<br />
<span style="color: brown;"> .menuA:link,.menuA:visited{text-align:center;text-decoration:none;color:#cc3300;line-height:19px;height:15px;}<br />
.menuA:hover{text-decoration:none;}</span><br />
:visited是访问后的式样，:link是通常的式样，:hover是鼠标接触的式样，其实还有个:active（在鼠标点击与释放之间发生的事件时的样式）这里有个书写的顺序<strong>“LoVe/HAte”（爱/恨）链接规则：Link, Visited, Hover, Acitve</strong>。具体参数可以参照手册。<br />
<span style="color: black;"><strong>4.4内容式样</strong></span><br />
内容式样里包含的元素比较多，变换也比较多，我们看看到底要做的是那些式样。首先是内容<span style="color: brown;">#Tbody</span>，这个里面在首页的时候包含的是主内容<span style="color: brown;">#mainContent</span>和工具条也就是侧栏<span style="color: brown;">#sidebar</span>。而在登陆页的时候里面就是登陆框，注册页，还有信息提示出错，恭喜通过什么这些就是消息框式样<span style="color: brown;">#MsgContent</span>。如果你看过以前的式样文件里的Layout.css的你可能会发现一个问题，我上面说的这些标签都是带#号的也就是ID选择符，而上面没有提及是.开头的是类选择符，也就是<span style="color: green;">class=&#8221;*&#8221;</span>。为什么会有这样的命名方式，我们知道<a href="http://www.pjhome.net" target="_blank">Pjblog</a>是一个模块化的程序。我们可以自己自定义侧栏模块和内容模块，也就是说侧栏工具条里的若干个工具箱里的ID（<span style="color: brown;"><strong>模块标识</strong></span>）是可以自己定义名字的，内容里的模块也是如此。这就为我们的模板创造了更多式样的可能。你可以这样理解，首先我们用了统一的类class，再个我们又给每个工具箱定义了唯一的一个ID，那我们通过这两组合就可以定义每个工具箱的式样了。形式如下：</p>
<p>我们从侧栏开始，侧栏的结构很清晰。一个<span style="color: brown;">#sidebar</span>主元素，里面包含了<span style="color: brown;">#sidebar-topimg、#innersidebar、#sidebar-bottomimg</span>三个子元素，很明显<span style="color: brown;">#sidebar-topimg、#sidebar-bottomimg</span>是侧栏的顶部和底部的式样，而<span style="color: brown;">#innersidebar</span>里面是放工具箱<span style="color: brown;">.sidepanel</span>的。工具箱<span style="color: brown;">.sidepanel</span>又作为一个主元素，里面包含了<span style="color: brown;">.Ptitle</span>标题、<span style="color: brown;">.Pcontent</span>内容面板、<span style="color: brown;">.Pfoot</span>底部。看代码：</p>
<div class="UBBPanel">
<div class="UBBTitle">程序代码</div>
<div class="UBBContent">&lt;div id=&#8221;sidebar&#8221;&gt;<br />
&lt;div id=&#8221;sidebar-topimg&#8221;&gt;&lt;/div&gt;<br />
&lt;div id=&#8221;innersidebar&#8221;&gt;<br />
&lt;div id=&#8221;Side_AA&#8221; class=&#8221;sidepanel&#8221;&gt;<br />
&lt;h4 class=&#8221;Ptitle&#8221;&gt;&lt;/h4&gt;<br />
&lt;div class=&#8221;pcontent&#8221;&gt;&lt;/div&gt;<br />
&lt;div class=&#8221;pfoot&#8221;&gt;&lt;/div&gt;<br />
&lt;/div&gt;</p>
<p>&lt;div id=&#8221;Side_BB&#8221; class=&#8221;sidepanel&#8221;&gt;<br />
&lt;h4 class=&#8221;Ptitle&#8221;&gt;&lt;/h4&gt;<br />
&lt;div class=&#8221;pcontent&#8221;&gt;&lt;/div&gt;<br />
&lt;div class=&#8221;pfoot&#8221;&gt;&lt;/div&gt;<br />
&lt;/div&gt;</p>
<p>&lt;div id=&#8221;Side_CC&#8221; class=&#8221;sidepanel&#8221;&gt;<br />
&lt;h4 class=&#8221;Ptitle&#8221;&gt;&lt;/h4&gt;<br />
&lt;div class=&#8221;pcontent&#8221;&gt;&lt;/div&gt;<br />
&lt;div class=&#8221;pfoot&#8221;&gt;&lt;/div&gt;<br />
&lt;/div&gt;<br />
&lt;/div&gt;<br />
&lt;div id=&#8221;sidebar-bottomimg&#8221;&gt;&lt;/div&gt;<br />
&lt;/div&gt;</p></div>
</div>
<p>代码里的AA、BB、CC就是我们自定义的<span style="color: brown;"><strong>模块标识</strong></span>。这个在后台模块设置里可以自己定义。<br />
<img src="http://photo3.yupoo.com/20060322/20060322095943_42884196_fVWBk.jpg" border="0" alt="" /><br />
那我们把上面的代码定义一下式样看看效果，想要的效果就是每个功能块(AA、BB、CC)的头部(ptitle)有一个自己的式样（分别是：红、黄、蓝）。</p>
<div class="UBBPanel">
<div class="UBBTitle">HTML代码</div>
<div class="UBBContent"><textarea id="temp27676" rows="8">&lt;br /&gt; &lt;mce:style type=&#8221;text/css&#8221;&gt;&lt;!&#8211; &lt;br /&gt; &lt;!&#8211;&lt;br /&gt; .sidepanel{height:100px;width:200px;background:#eee;}&lt;br /&gt; .ptitle{height:10px}&lt;br /&gt; #Side_aa .ptitle{background:red}&lt;br /&gt; #Side_bb .ptitle{background:yellow}&lt;br /&gt; #Side_cc .ptitle{background:blue}&lt;br /&gt; &#8211;&gt;&lt;br /&gt; &#8211;&gt;&lt;/mce:style&gt;&lt;style type=&#8221;text/css&#8221; mce_bogus=&#8221;1&#8243;&gt;&lt;br /&gt; &lt;!&#8211;&lt;br /&gt; .sidepanel{height:100px;width:200px;background:#eee;}&lt;br /&gt; .ptitle{height:10px}&lt;br /&gt; #Side_aa .ptitle{background:red}&lt;br /&gt; #Side_bb .ptitle{background:yellow}&lt;br /&gt; #Side_cc .ptitle{background:blue}&lt;br /&gt; &#8211;&gt;&lt;br /&gt;&lt;/style&gt;&lt;/p&gt; &lt;div id=&#8221;sidebar&#8221;&gt; &lt;div id=&#8221;sidebar-topimg&#8221;&gt;&lt;/div&gt; &lt;div id=&#8221;innersidebar&#8221;&gt; &lt;div id=&#8221;Side_AA&#8221; class=&#8221;sidepanel&#8221;&gt; &lt;h4 class=&#8221;Ptitle&#8221;&gt;&lt;/h4&gt; &lt;div class=&#8221;pcontent&#8221;&gt;&lt;/div&gt; &lt;div class=&#8221;pfoot&#8221;&gt;&lt;/div&gt; &lt;/div&gt; &lt;div id=&#8221;Side_BB&#8221; class=&#8221;sidepanel&#8221;&gt; &lt;h4 class=&#8221;Ptitle&#8221;&gt;&lt;/h4&gt; &lt;div class=&#8221;pcontent&#8221;&gt;&lt;/div&gt; &lt;div class=&#8221;pfoot&#8221;&gt;&lt;/div&gt; &lt;/div&gt; &lt;div id=&#8221;Side_CC&#8221; class=&#8221;sidepanel&#8221;&gt; &lt;h4 class=&#8221;Ptitle&#8221;&gt;&lt;/h4&gt; &lt;div class=&#8221;pcontent&#8221;&gt;&lt;/div&gt; &lt;div class=&#8221;pfoot&#8221;&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div id=&#8221;sidebar-bottomimg&#8221;&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;</textarea></p>
<input onclick="runEx('temp27676')" type="button" value="运行此代码" />
<input onclick="doCopy('temp27676')" type="button" value="复制此代码" /> [Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]</div>
</div>
<p><span style="color: brown;">.ptitle{height:10px}</span>定义一下ptitle共有的式样属性；<br />
<span style="color: brown;">#Side_aa .ptitle{background:red}</span>下面就分别定义不同的颜色。<br />
<span style="color: brown;">#Side_bb .ptitle{background:yellow}</span><br />
<span style="color: brown;">#Side_cc .ptitle{background:blue}</span><br />
<span style="color: red;"><strong>这里要注意的是PJ侧栏模块的ID命名规则：在模块标识前加Side_。比如这里的aa，那就是#Side_aa。而程序默认得模块标识是不可以更改的。</strong></span><br />
看到效果后你是不是已经感觉到了<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的模块功能的神奇了，我们还可以给个个模块给于绝对定位来实现各式各样的布局。比如<a href="http://www.fineemb.com/blog/archives/92.html" target="_blank">Eternal Love</a>的日历式样、<a href="http://www.fineemb.com/blog/archives/121.html" target="_blank">Yahoo Weight</a>的Skins切换模块式样。我们这里同样说的是Pj的构造和怎么运用这些构造，具体的CSS属性还是去参考手册。<br />
这里我们着重要了解的是模块标识、选择符之间的关系。关于选择符手册里有更详细的说明。</p>
<p>然后我们看主内容的式样。主内容的式样比侧栏要复杂一点，首先主内容的标签是<span style="color: brown;">#innermainContent</span>，这也是一个三栏（或说成是多栏，因为可以添加自定义模块）的布局。包括了头部<span style="color: brown;">#mainContent-topimg</span>、中栏<span style="color: brown;">#Content_Contentlist</span>和底部<span style="color: brown;">#mainContent-bottomimg</span>。我们可以分别定义他们的式样，头部和底部已经是最基层的DIV了，不含有子元素了，你可以尽情的定义他们的式样，不用考虑他里面还有什么式样，这句话的含义就是定义完后就是最终式样了。而<span style="color: brown;">#Content_Contentlist</span>是程序的默认模块，是不可以删除的，在后台设置模块的最下面一个。如果你增加了内容模块，那增加的那些内容模块就像上面侧栏说到的一样，可以自由定义。<span style="color: red;"><strong>这里也要注意的是：PJ内容模块的ID命名规则：比如内容模块标识是Contentlist那这个模块的ID就是#Content_Contentlist，要在内容模块标识前加Content_，这个很重要</strong></span><br />
自定义模块因为具有不确定性，我在这里就不具体的说了，着重说说Contentlist这个默认模块。这里面的内容和侧栏一样不再是用ID选择符了，用的是类选择符。首先<span style="color: brown;">#Content_Contentlist</span>包含了两栏，<span style="color: brown;">.pageContent</span>和<span style="color: brown;">.Content</span>，<span style="color: brown;">.pageContent</span>是分页式样，这也是最终定义的式样。具体的是那部分呢，我们看下图：<br />
<img src="http://photo7.yupoo.com/20060409/20060409102649_805374837_PRWTK.jpg" border="0" alt="" /><br />
凡是这些地方都属于<span style="color: brown;">.pageContent</span>这个类的。这就是类选择符的优点。你可能觉得怎么说了半天的结构不说CSS呢，别急，了解结构很重要。忍着点往下看。<br />
分页式样了解后我们再看<span style="color: brown;">.Content</span>的式样。<span style="color: brown;">.Content</span>里面的内容比较丰富。首先他是一个三栏的布局，头部<span style="color: brown;">.Content-top</span>、内容<span style="color: brown;">.content-body</span>、底部<span style="color: brown;">.content-bottom</span>。而头部和底部又分别挂了左右两DIV。头部的是.Contentleft和.contentright，底部的是.ContentBleft和.contentBright。我们从字面上就可以了解到这些分别是在那个位置了。如果你还不了解请去看<a href="http://www.fineemb.com/blog/archives/171.html" target="_blank">模型</a>。<br />
在<span style="color: brown;">.Content-top</span>里面还包含着一些日志其他信息，就是日志的标题、作者、日期。那这些分别是在哪里呢？标题是属于.ContentTitle一类，作者和日期包是属于.ContentAuthor一类。他们分别包含在&lt;h1&gt;&lt;/h1&gt;和&lt;h2&gt;&lt;/h2&gt;里面。<br />
上面说道这些是在首页情况下的式样，在单篇日志的模式下有一点不一样。在&lt;h2&gt;&lt;/h2&gt;下面多了个.Content-Info类，再里面又包含了InfoAuthor和InfoOther两个类。这里包含的信息如下图：<br />
<img src="http://photo7.yupoo.com/20060409/20060409123738_1994053259_enLci.jpg" border="0" alt="" /><br />
再下面就是正文了.Content-body了。在单篇日志里因为【文章来自】【引用通告地址】【Tags】等内容也赋予了.Content-body这个类，为了和【文章来自】【引用通告地址】【Tags】区别还给这个ID加了#logPanel标签，在首页里是没有的。其实在首页里加个也可以，我在做<a href="http://www.fineemb.com/blog/archives/121.html" target="_blank">Yahoo Weight</a>这个式样的时候，内容首字母式样就在首页加了个#logPanel标签，可以单独控制日志内容和首页摘要的式样。<br />
内容里除了这些式样外还有评论框式样.comment和信息框式样#MsgContent、UBB框.comment。<br />
评论框式样.comment一般是在单篇日志内容里，他是一个两栏的布局。里面包含了.commenttop和.commentcontent两个类。<br />
<img src="http://photo7.yupoo.com/20060409/20060409131721_215984823_LEjTi.jpg" border="0" alt="" /><br />
你往下拉了看看是不是这样的。<br />
信息框式样#MsgContent。就是评论信息的下面，你发表评论的地方（当然还有登陆框、信息提示宽、注册等等要用到）。这个也不复杂，就一个头部#MsgHead和#MsgBody，意思也很明了。而内容里面的UBB编辑器式样是另外一个文件控制，这就放到后面说。<br />
到这里内容式样基本结束，下面我们主要看这节的部分代码。<br />
内容块的结构会出现几种情况，首页状态、单篇日志、内容插件等模式。着重说前两种情况。<br />
<strong>首页状态代码</strong></p>
<div class="UBBPanel">
<div class="UBBTitle">HTML代码</div>
<div class="UBBContent"><textarea id="temp94563" rows="8">&lt;br /&gt; &lt;mce:style type=&#8221;text/css&#8221;&gt;&lt;!&#8211; &lt;br /&gt; &lt;!&#8211;&lt;br /&gt; #innermainContent{font-size:12px;}&lt;br /&gt; #mainContent-topimg{height:10px;background-color:red;color:#999;}&lt;br /&gt; #mainContent-bottomimg{height:10px;background-color:red;color:#999;}&lt;br /&gt; #Content_GG{background-color:yellow;}&lt;br /&gt; #Content_ContentList{background:#ddd;padding:0 10px 0 10px}&lt;/p&gt; &lt;p&gt;.pageContent{background:#faa;}&lt;br /&gt; .Content{background:#aaa;}&lt;br /&gt; .Content-top{margin:10px 0 10px 0;background-color:red}&lt;br /&gt; .Content-bottom{margin:10px 0 10px 0;background-color:red}&lt;br /&gt; .titleA{margin:10px 0;}&lt;br /&gt;  .titleA:link,.titleA:visited{font-size:18px;font-weight: bold;text-decoration:none;text-align:left;color:#999;}&lt;br /&gt;  .titleA:hover{text-decoration:none;color:#fff;}&lt;br /&gt; .ContentAuthor{color:#fff;font-size:12px;}&lt;/p&gt; &lt;p&gt;#log_173{background-color:#444;color:#fff}&lt;/p&gt; &lt;p&gt;&#8211;&gt;&lt;br /&gt; &#8211;&gt;&lt;/mce:style&gt;&lt;style type=&#8221;text/css&#8221; mce_bogus=&#8221;1&#8243;&gt;&lt;br /&gt; &lt;!&#8211;&lt;br /&gt; #innermainContent{font-size:12px;}&lt;br /&gt; #mainContent-topimg{height:10px;background-color:red;color:#999;}&lt;br /&gt; #mainContent-bottomimg{height:10px;background-color:red;color:#999;}&lt;br /&gt; #Content_GG{background-color:yellow;}&lt;br /&gt; #Content_ContentList{background:#ddd;padding:0 10px 0 10px}&lt;/p&gt; &lt;p&gt;.pageContent{background:#faa;}&lt;br /&gt; .Content{background:#aaa;}&lt;br /&gt; .Content-top{margin:10px 0 10px 0;background-color:red}&lt;br /&gt; .Content-bottom{margin:10px 0 10px 0;background-color:red}&lt;br /&gt; .titleA{margin:10px 0;}&lt;br /&gt;  .titleA:link,.titleA:visited{font-size:18px;font-weight: bold;text-decoration:none;text-align:left;color:#999;}&lt;br /&gt;  .titleA:hover{text-decoration:none;color:#fff;}&lt;br /&gt; .ContentAuthor{color:#fff;font-size:12px;}&lt;/p&gt; &lt;p&gt;#log_173{background-color:#444;color:#fff}&lt;/p&gt; &lt;p&gt;&#8211;&gt;&lt;br /&gt;&lt;/style&gt;&lt;/p&gt; &lt;div id=&#8221;innermainContent&#8221;&gt; &lt;div id=&#8221;mainContent-topimg&#8221;&gt;内容头部&lt;/div&gt; &lt;div id=&#8221;Content_GG&#8221; class=&#8221;content-width&#8221;&gt;自定义模块GG&lt;/div&gt; &lt;div id=&#8221;Content_ContentList&#8221; class=&#8221;content-width&#8221;&gt;内容列表&lt;/p&gt; &lt;div class=&#8221;pageContent&#8221; style=&#8221;text-align:Right;overflow:hidden;height:18px;line-height:140%&#8221;&gt;&lt;span style=&#8221;"float:left&#8221;" mce_style=&#8221;"float:left&#8221;"&gt;&lt;/span&gt;&lt;/p&gt; &lt;div class=&#8221;page&#8221; style=&#8221;"float:Left&#8221;" mce_style=&#8221;"float:Left&#8221;"&gt; &lt;ul&gt; &lt;li class=&#8221;pageNumber&#8221;&gt;&lt;b&gt;1&lt;/b&gt; | &lt;a href=&#8221;"/blog/default.asp?page=2&#8243;&#8221; mce_href=&#8221;"/blog/default.asp?page=2&#8243;&#8221;&gt;2&lt;/a&gt; | &lt;a href=&#8221;"/blog/default.asp?page=3&#8243;&#8221; mce_href=&#8221;"/blog/default.asp?page=3&#8243;&#8221;&gt;3&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt; &lt;/div&gt; &lt;p&gt;	  预览模式: &lt;a href=&#8221;"?distype=normal&#8221;" mce_href=&#8221;"?distype=normal&#8221;" accesskey=&#8221;1&#8243;&gt;普通&lt;/a&gt; | &lt;a href=&#8221;"?distype=list&#8221;" mce_href=&#8221;"?distype=list&#8221;" accesskey=&#8221;2&#8243;&gt;列表&lt;/a&gt;&lt;/div&gt; &lt;div class=&#8221;Content&#8221;&gt;内容块&lt;/p&gt; &lt;div class=&#8221;Content-top&#8221;&gt; &lt;div class=&#8221;ContentLeft&#8221;&gt;&lt;/div&gt; &lt;div class=&#8221;ContentRight&#8221;&gt;&lt;/div&gt; &lt;h1 class=&#8221;ContentTitle&#8221;&gt; 		&lt;img src=&#8221;"images/icons/1.gif&#8221;" mce_src=&#8221;"images/icons/1.gif&#8221;" style=&#8221;"margin:0px&#8221; mce_style=&#8221;"margin:0px&#8221; 2px -4px 0px;&#8221; alt=&#8221;" class=&#8221;CateIcon&#8221;/&gt;&lt;br /&gt; 		&lt;a class=&#8221;titleA&#8221; href=&#8221;"article.asp?id=174&#8243;&#8221; mce_href=&#8221;"article.asp?id=174&#8243;&#8221;&gt;标题1编号174&lt;/a&gt;&lt;br /&gt; 		&lt;/h1&gt; &lt;h2 class=&#8221;ContentAuthor&#8221;&gt;作者:×××; 日期:×××××&lt;/h2&gt; &lt;/div&gt; &lt;div id=&#8221;log_174&#8243;&gt; &lt;div id=&#8221;logPanel&#8221; class=&#8221;Content-body&#8221;&gt;文章内容1&lt;/div&gt; &lt;p&gt;&lt;a href=&#8221;"article.asp?id=174&#8243;&#8221; mce_href=&#8221;"article.asp?id=174&#8243;&#8221; class=&#8221;more&#8221;&gt;查看更多&#8230;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Tags: &lt;a href=&#8221;"default.asp?tag=blog&#8221;" mce_href=&#8221;"default.asp?tag=blog&#8221;"&gt;blog&lt;/a&gt; &lt;/p&gt; &lt;/div&gt; &lt;div class=&#8221;Content-bottom&#8221;&gt; &lt;div class=&#8221;ContentBLeft&#8221;&gt;&lt;/div&gt; &lt;div class=&#8221;ContentBRight&#8221;&gt;&lt;/div&gt; &lt;p&gt;		分类:&lt;a href=&#8221;"default.asp?cateID=4&#8243;&#8221; mce_href=&#8221;"default.asp?cateID=4&#8243;&#8221; title=&#8221;基本都是转贴&#8221;&gt;技术文档&lt;/a&gt; | &lt;a href=&#8221;"?id=174&#8243;&#8221; mce_href=&#8221;"?id=174&#8243;&#8221;&gt;固定链接&lt;/a&gt;|&lt;a href=&#8221;"article.asp?id=174#comm_top&#8221;" mce_href=&#8221;"article.asp?id=174#comm_top&#8221;"&gt;评论: 0&lt;/a&gt;|引用: 0 | 查看次数: 42 		&lt;/div&gt; &lt;/div&gt; &lt;div class=&#8221;Content&#8221;&gt;内容块&lt;/p&gt; &lt;div class=&#8221;Content-top&#8221;&gt; &lt;div class=&#8221;ContentLeft&#8221;&gt;&lt;/div&gt; &lt;div class=&#8221;ContentRight&#8221;&gt;&lt;/div&gt; &lt;h1 class=&#8221;ContentTitle&#8221;&gt;&lt;img src=&#8221;"images/icons/1.gif&#8221;" mce_src=&#8221;"images/icons/1.gif&#8221;" style=&#8221;"margin:0px&#8221; mce_style=&#8221;"margin:0px&#8221; 2px -4px 0px;&#8221; alt=&#8221;" class=&#8221;CateIcon&#8221;/&gt;&lt;a class=&#8221;titleA&#8221; href=&#8221;"article.asp?id=174&#8243;&#8221; mce_href=&#8221;"article.asp?id=174&#8243;&#8221;&gt;标题2编号173&lt;/a&gt;&lt;/h1&gt; &lt;h2 class=&#8221;ContentAuthor&#8221;&gt;作者:×××; 日期:×××××&lt;/h2&gt; &lt;/div&gt; &lt;div id=&#8221;log_173&#8243;&gt; &lt;div id=&#8221;logPanel&#8221; class=&#8221;Content-body&#8221;&gt;文章内容2&lt;/div&gt; &lt;p&gt;&lt;a href=&#8221;"article.asp?id=173&#8243;&#8221; mce_href=&#8221;"article.asp?id=173&#8243;&#8221; class=&#8221;more&#8221;&gt;查看更多&#8230;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Tags: &lt;a href=&#8221;"default.asp?tag=blog&#8221;" mce_href=&#8221;"default.asp?tag=blog&#8221;"&gt;blog&lt;/a&gt; &lt;/p&gt; &lt;/div&gt; &lt;div class=&#8221;Content-bottom&#8221;&gt; &lt;div class=&#8221;ContentBLeft&#8221;&gt;&lt;/div&gt; &lt;div class=&#8221;ContentBRight&#8221;&gt;&lt;/div&gt; &lt;p&gt;		分类:&lt;a href=&#8221;"default.asp?cateID=4&#8243;&#8221; mce_href=&#8221;"default.asp?cateID=4&#8243;&#8221; title=&#8221;基本都是转贴&#8221;&gt;技术文档&lt;/a&gt; | &lt;a href=&#8221;"?id=174&#8243;&#8221; mce_href=&#8221;"?id=174&#8243;&#8221;&gt;固定链接&lt;/a&gt; |&lt;a href=&#8221;"article.asp?id=174#comm_top&#8221;" mce_href=&#8221;"article.asp?id=174#comm_top&#8221;"&gt;评论: 0&lt;/a&gt;| 引用: 0 | 查看次数: 42 		&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div id=&#8221;mainContent-bottomimg&#8221;&gt;内容底部&lt;/div&gt; &lt;/div&gt; &lt;p&gt;</textarea></p>
<input onclick="runEx('temp94563')" type="button" value="运行此代码" />
<input onclick="doCopy('temp94563')" type="button" value="复制此代码" /> [Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]</div>
</div>
<p>从上面的代码可以看到，我并不没有用多少式样，我只用了背景色和前景色来区别各个元素。看上去可能不是很漂亮，重要的是自己改。有些时候一个元素里没有内容，我们就不容易了解这个元素的存在。我一些模块里没有文字等内容的元素添加了文字说明。你可以试着把CSS代码删掉或改动，来进一步了解没个元素的作用。<span style="color: red;"><strong>这里还有个小技巧，在首页普通模式下<a href="http://www.pjhome.net" target="_blank">Pjblog</a>给每个日志摘要都给于了一个ID，单独定义或批量定义式样，命名规则是&#8221;log_&#8221;+&#8221;日志ID号&#8221;。</strong></span>我们从上面的代码可以看到日志173和174的不同的地方。那日志的ID怎么知道？我们把鼠标挪到日志的链接那里，看到链接的最后有<span style="color: red;">?id=***</span>这样的，就是日志的ID了。<br />
<strong>单篇日志状态</strong><br />
单篇日志状态和首页有很大的不同。里面包括的内容有自定义模块、分类和上下篇（.pageContent）、标题作者日期（.ContentTitle.ContentAuthor）、自定义字体大小和日志等级天气情况（.Content-Info）、内容、评论分页（pageContent）、评论（comment）、发表评论框（MsgContent）等等。<br />
看代码</p>
<div class="UBBPanel">
<div class="UBBTitle">HTML代码</div>
<div class="UBBContent"><textarea id="temp93900" rows="8">&lt;br /&gt; &lt;mce:style type=&#8221;text/css&#8221;&gt;&lt;!&#8211; &lt;br /&gt; &lt;!&#8211;&lt;br /&gt; li{list-style:none;}&lt;br /&gt; #innermainContent{font-size:12px;}&lt;br /&gt; #mainContent-topimg{height:10px;background-color:red;color:#fff;}&lt;br /&gt; #mainContent-bottomimg{height:10px;background-color:red;color:#fff;}&lt;br /&gt; #Content_AdSense{background-color:yellow;}&lt;br /&gt; #Content_ContentList{background:#ddd;padding:0 10px 0 10px}&lt;/p&gt; &lt;p&gt;.pageContent{background:#faa;}&lt;br /&gt; .page{background:#faa;}&lt;br /&gt; .Content{background:#aaa;}&lt;br /&gt; .Content-top{margin:10px 0 10px 0;background-color:red}&lt;br /&gt; .Content-bottom{margin:10px 0 10px 0;background-color:red}&lt;br /&gt; .ContentTitle{font-size:16px;}&lt;br /&gt; .ContentAuthor{color:#fff;font-size:12px;}&lt;br /&gt; .Comment{background:#fee;margin-top:10px;}&lt;br /&gt; .Commenttop{margin:15px;background:#000;color:#fff;}&lt;br /&gt; .Commentinfo{background:#fff;color:#000;}&lt;/p&gt; &lt;p&gt;&#8211;&gt;&lt;br /&gt; &#8211;&gt;&lt;/mce:style&gt;&lt;style type=&#8221;text/css&#8221; mce_bogus=&#8221;1&#8243;&gt;&lt;br /&gt; &lt;!&#8211;&lt;br /&gt; li{list-style:none;}&lt;br /&gt; #innermainContent{font-size:12px;}&lt;br /&gt; #mainContent-topimg{height:10px;background-color:red;color:#fff;}&lt;br /&gt; #mainContent-bottomimg{height:10px;background-color:red;color:#fff;}&lt;br /&gt; #Content_AdSense{background-color:yellow;}&lt;br /&gt; #Content_ContentList{background:#ddd;padding:0 10px 0 10px}&lt;/p&gt; &lt;p&gt;.pageContent{background:#faa;}&lt;br /&gt; .page{background:#faa;}&lt;br /&gt; .Content{background:#aaa;}&lt;br /&gt; .Content-top{margin:10px 0 10px 0;background-color:red}&lt;br /&gt; .Content-bottom{margin:10px 0 10px 0;background-color:red}&lt;br /&gt; .ContentTitle{font-size:16px;}&lt;br /&gt; .ContentAuthor{color:#fff;font-size:12px;}&lt;br /&gt; .Comment{background:#fee;margin-top:10px;}&lt;br /&gt; .Commenttop{margin:15px;background:#000;color:#fff;}&lt;br /&gt; .Commentinfo{background:#fff;color:#000;}&lt;/p&gt; &lt;p&gt;&#8211;&gt;&lt;br /&gt;&lt;/style&gt;&lt;/p&gt; &lt;div id=&#8221;innermainContent&#8221;&gt; &lt;div id=&#8221;mainContent-topimg&#8221;&gt;内容顶部&lt;/div&gt; &lt;div id=&#8221;Content_AdSense&#8221; class=&#8221;content-width&#8221;&gt;自定义模块AdSense&lt;/div&gt; &lt;div id=&#8221;Content_ContentList&#8221; class=&#8221;content-width&#8221;&gt; &lt;div class=&#8221;pageContent&#8221;&gt; &lt;div style=&#8221;float:right;width:180px !important;width:auto&#8221;&gt; 						   		&lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" target=&#8221;_blank&#8221; &gt;&lt;img border=&#8221;0&#8243; src=&#8221;"images/rss.gif&#8221;" mce_src=&#8221;"images/rss.gif&#8221;"  style=&#8221;"margin-bottom:-1px&#8221;/&#8221; mce_style=&#8221;"margin-bottom:-1px&#8221;/&#8221;&gt; 订阅&lt;/a&gt;&lt;br /&gt; 						    | &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" &gt;&lt;img border=&#8221;0&#8243; src=&#8221;"images/Cprevious.gif&#8221;" mce_src=&#8221;"images/Cprevious.gif&#8221;" /&gt; 上一篇&lt;/a&gt; | &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" &gt;&lt;img border=&#8221;0&#8243; src=&#8221;"images/Cnext.gif&#8221;" mce_src=&#8221;"images/Cnext.gif&#8221;" /&gt; 下一篇&lt;/a&gt; 						   &lt;/div&gt; &lt;p&gt; 						   &lt;img src=&#8221;"images/icons/13.gif&#8221;" mce_src=&#8221;"images/icons/13.gif&#8221;" style=&#8221;"margin:0px&#8221; mce_style=&#8221;"margin:0px&#8221; 2px -4px 0px&#8221; alt=&#8221;"/&gt; &lt;b&gt;&lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" &gt;IT 、软件信息&lt;/a&gt;&lt;/b&gt; 					   &lt;/div&gt; &lt;div class=&#8221;Content&#8221;&gt; &lt;div class=&#8221;Content-top&#8221;&gt; &lt;div class=&#8221;ContentLeft&#8221;&gt;&lt;/div&gt; &lt;div class=&#8221;ContentRight&#8221;&gt;&lt;/div&gt; &lt;h1 class=&#8221;ContentTitle&#8221;&gt;&lt;b&gt;文章标题&lt;/b&gt;&lt;/h1&gt; &lt;h2 class=&#8221;ContentAuthor&#8221;&gt;作者:**** 日期:****&lt;/h2&gt; &lt;/div&gt; &lt;div class=&#8221;Content-Info&#8221;&gt; &lt;div class=&#8221;InfoOther&#8221;&gt;字体大小: &lt;a href=&#8221;"javascript:SetFont(&#8221; mce_href=&#8221;"javascript:SetFont(&#8220;&#8217;12px&#8217;)&#8221; accesskey=&#8221;1&#8243;&gt;小&lt;/a&gt; &lt;a href=&#8221;"javascript:SetFont(&#8221; mce_href=&#8221;"javascript:SetFont(&#8220;&#8217;14px&#8217;)&#8221; accesskey=&#8221;2&#8243;&gt;中&lt;/a&gt; &lt;a href=&#8221;"javascript:SetFont(&#8221; mce_href=&#8221;"javascript:SetFont(&#8220;&#8217;16px&#8217;)&#8221; accesskey=&#8221;3&#8243;&gt;大&lt;/a&gt;&lt;/div&gt; &lt;div class=&#8221;InfoAuthor&#8221;&gt;&lt;img src=&#8221;"images/weather/hn2_sunny.gif&#8221;" mce_src=&#8221;"images/weather/hn2_sunny.gif&#8221;" style=&#8221;"margin:0px&#8221; mce_style=&#8221;"margin:0px&#8221; 2px -6px 0px&#8221; alt=&#8221;"/&gt;&lt;img src=&#8221;"images/weather/hn2_t_sunny.gif&#8221;" mce_src=&#8221;"images/weather/hn2_t_sunny.gif&#8221;" /&gt; &lt;img src=&#8221;"images/level3.gif&#8221;" mce_src=&#8221;"images/level3.gif&#8221;" style=&#8221;"margin:0px&#8221; mce_style=&#8221;"margin:0px&#8221; 2px -1px 0px&#8221; /&gt;&lt;/p&gt; &lt;/div&gt; &lt;/div&gt; &lt;div id=&#8221;logPanel&#8221; class=&#8221;Content-body&#8221;&gt; 						文章内容 					   &lt;/div&gt; &lt;div class=&#8221;Content-body&#8221;&gt; &lt;p&gt;						&lt;img src=&#8221;"images/From.gif&#8221;" mce_src=&#8221;"images/From.gif&#8221;" style=&#8221;"margin:4px&#8221; mce_style=&#8221;"margin:4px&#8221; 2px -4px 0px&#8221; alt=&#8221;"/&gt;&lt;b&gt;文章来自:&lt;/b&gt; &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" target=&#8221;_blank&#8221;&gt;本站原创&lt;/a&gt;&lt;/p&gt; &lt;p&gt;						&lt;img src=&#8221;"images/icon_trackback.gif&#8221;" mce_src=&#8221;"images/icon_trackback.gif&#8221;" style=&#8221;"margin:4px&#8221; mce_style=&#8221;"margin:4px&#8221; 2px -4px 0px&#8221; alt=&#8221;"/&gt;&lt;b&gt;引用通告地址:&lt;/b&gt; &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" target=&#8221;_blank&#8221;&gt;&lt;a href=&#8221;http://www.fineemb.com/blog/trackback.asp?tbID=27&#8243; mce_href=&#8221;http://www.fineemb.com/blog/trackback.asp?tbID=27&#8243; target=&#8221;_blank&#8221;&gt;http://www.fineemb.com/blog/trackback.asp?tbID=27&lt;/a&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;						 &lt;img src=&#8221;"images/tag.gif&#8221;" mce_src=&#8221;"images/tag.gif&#8221;" style=&#8221;"margin:4px&#8221; mce_style=&#8221;"margin:4px&#8221; 2px -4px 0px&#8221; alt=&#8221;"/&gt;&lt;b&gt;Tags:&lt;/b&gt; &lt;a href=&#8221;"default.asp?tag=Google&#8221;" mce_href=&#8221;"default.asp?tag=Google&#8221;"&gt;Google&lt;/a&gt; &lt;/p&gt; &lt;/div&gt; &lt;div class=&#8221;Content-bottom&#8221;&gt; &lt;div class=&#8221;ContentBLeft&#8221;&gt;&lt;/div&gt; &lt;div class=&#8221;ContentBRight&#8221;&gt;&lt;/div&gt; &lt;p&gt;评论: 112 | 引用: 0 | 查看次数: 2693 					   &lt;/ul&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class=&#8221;pageContent&#8221;&gt; &lt;div class=&#8221;page&#8221; style=&#8221;"float:right&#8221;" mce_style=&#8221;"float:right&#8221;"&gt; &lt;ul&gt; &lt;li class=&#8221;pageNumber&#8221;&gt;&lt;b&gt;1&lt;/b&gt; | &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;"&gt;2&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class=&#8221;comment&#8221;&gt; &lt;div class=&#8221;commenttop&#8221;&gt;&lt;a name=&#8221;comm_557&#8243; href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;"&gt;&lt;img border=&#8221;0&#8243; src=&#8221;"images/icon_quote.gif&#8221;" mce_src=&#8221;"images/icon_quote.gif&#8221;" alt=&#8221;" style=&#8221;"margin:0px&#8221; mce_style=&#8221;"margin:0px&#8221; 4px -3px 0px&#8221;/&gt;&lt;/a&gt;&lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;"&gt;&lt;b&gt;jim&lt;/b&gt;&lt;/a&gt; &lt;span class=&#8221;commentinfo&#8221;&gt;[2006-04-24 08:19 AM]&lt;/span&gt;&lt;/div&gt; &lt;div class=&#8221;commentcontent&#8221; id=&#8221;commcontent_557&#8243;&gt;评论1&lt;/div&gt; &lt;/div&gt; &lt;div class=&#8221;comment&#8221;&gt; &lt;div class=&#8221;commenttop&#8221;&gt;&lt;a name=&#8221;comm_550&#8243; href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;"&gt;&lt;img border=&#8221;0&#8243; src=&#8221;"images/icon_quote.gif&#8221;" mce_src=&#8221;"images/icon_quote.gif&#8221;" alt=&#8221;" style=&#8221;"margin:0px&#8221; mce_style=&#8221;"margin:0px&#8221; 4px -3px 0px&#8221;/&gt;&lt;/a&gt;&lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;"&gt;&lt;b&gt;seamcker&lt;/b&gt;&lt;/a&gt; &lt;span class=&#8221;commentinfo&#8221;&gt;[2006-04-22 08:02 PM]&lt;/span&gt;&lt;/div&gt; &lt;div class=&#8221;commentcontent&#8221; id=&#8221;commcontent_550&#8243;&gt;评论2&lt;/div&gt; &lt;/div&gt; &lt;div class=&#8221;comment&#8221;&gt; &lt;div class=&#8221;commenttop&#8221;&gt;&lt;a name=&#8221;comm_548&#8243; href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;"&gt;&lt;img border=&#8221;0&#8243; src=&#8221;"images/icon_quote.gif&#8221;" mce_src=&#8221;"images/icon_quote.gif&#8221;" alt=&#8221;" style=&#8221;"margin:0px&#8221; mce_style=&#8221;"margin:0px&#8221; 4px -3px 0px&#8221;/&gt;&lt;/a&gt;&lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;"&gt;&lt;b&gt;dnxh&lt;/b&gt;&lt;/a&gt; &lt;span class=&#8221;commentinfo&#8221;&gt;[2006-04-22 03:48 PM]&lt;/span&gt;&lt;/div&gt; &lt;div class=&#8221;commentcontent&#8221; id=&#8221;commcontent_548&#8243;&gt;评论3&lt;/div&gt; &lt;/div&gt; &lt;div class=&#8221;pageContent&#8221;&gt; &lt;div class=&#8221;page&#8221; style=&#8221;"float:right&#8221;" mce_style=&#8221;"float:right&#8221;"&gt; &lt;ul&gt; &lt;li class=&#8221;pageNumber&#8221;&gt;&lt;b&gt;1&lt;/b&gt; | &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;"&gt;2&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt; &lt;/div&gt; &lt;/div&gt; &lt;div id=&#8221;MsgContent&#8221; style=&#8221;width:94%;&#8221;&gt; &lt;div id=&#8221;MsgHead&#8221;&gt;发表评论&lt;/div&gt; &lt;div id=&#8221;MsgBody&#8221;&gt; &lt;form name=&#8221;frm&#8221; action=&#8221;blogcomm.asp&#8221; method=&#8221;post&#8221; onsubmit=&#8221;return CheckPost()&#8221; style=&#8221;"margin:0px;&#8221;" mce_style=&#8221;"margin:0px;&#8221;"&gt; &lt;table width=&#8221;100%&#8221; cellpadding=&#8221;0&#8243; cellspacing=&#8221;0&#8243;&gt; &lt;tr&gt; &lt;td align=&#8221;right&#8221; width=&#8221;70&#8243;&gt;&lt;b&gt;昵　称:&lt;/b&gt;&lt;/td&gt; &lt;td align=&#8221;left&#8221; style=&#8221;"padding:3px;&#8221;" mce_style=&#8221;"padding:3px;&#8221;"&gt;&lt;input name=&#8221;username&#8221; type=&#8221;text&#8221; size=&#8221;18&#8243; class=&#8221;userpass&#8221; maxlength=&#8221;24&#8243; /&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align=&#8221;right&#8221; width=&#8221;70&#8243;&gt;&lt;b&gt;密　码:&lt;/b&gt;&lt;/td&gt; &lt;td align=&#8221;left&#8221; style=&#8221;"padding:3px;&#8221;" mce_style=&#8221;"padding:3px;&#8221;"&gt;&lt;input name=&#8221;password&#8221; type=&#8221;password&#8221; size=&#8221;18&#8243; class=&#8221;userpass&#8221; maxlength=&#8221;24&#8243;/&gt; 游客发言不需要密码.&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align=&#8221;right&#8221; width=&#8221;70&#8243;&gt;&lt;b&gt;验证码:&lt;/b&gt;&lt;/td&gt; &lt;td align=&#8221;left&#8221; style=&#8221;"padding:3px;&#8221;" mce_style=&#8221;"padding:3px;&#8221;"&gt;&lt;input name=&#8221;validate&#8221; type=&#8221;text&#8221; size=&#8221;4&#8243; class=&#8221;userpass&#8221; maxlength=&#8221;4&#8243;/&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align=&#8221;right&#8221; width=&#8221;70&#8243; valign=&#8221;top&#8221;&gt;&lt;b&gt;内　容:&lt;/b&gt;&lt;/p&gt; &lt;/td&gt; &lt;td style=&#8221;"padding:2px;&#8221;" mce_style=&#8221;"padding:2px;&#8221;"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align=&#8221;right&#8221; width=&#8221;70&#8243; valign=&#8221;top&#8221;&gt;&lt;b&gt;选　项:&lt;/b&gt;&lt;/td&gt; &lt;td align=&#8221;left&#8221; style=&#8221;"padding:3px;&#8221;" mce_style=&#8221;"padding:3px;&#8221;"&gt;              &lt;label for=&#8221;label5&#8243;&gt;&lt;input name=&#8221;log_DisSM&#8221; type=&#8221;checkbox&#8221; id=&#8221;label5&#8243; value=&#8221;1&#8243; /&gt;禁止表情转换&lt;/label&gt;&lt;br /&gt;              &lt;label for=&#8221;label6&#8243;&gt;&lt;input name=&#8221;log_DisURL&#8221; type=&#8221;checkbox&#8221; id=&#8221;label6&#8243; value=&#8221;1&#8243; /&gt;禁止自动转换链接&lt;/label&gt;&lt;br /&gt;              &lt;label for=&#8221;label7&#8243;&gt;&lt;input name=&#8221;log_DisKey&#8221; type=&#8221;checkbox&#8221; id=&#8221;label7&#8243; value=&#8221;1&#8243; /&gt;禁止自动转换关键字&lt;/label&gt; 	  &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td colspan=&#8221;2&#8243; align=&#8221;center&#8221; style=&#8221;"padding:3px;&#8221;" mce_style=&#8221;"padding:3px;&#8221;"&gt; 			  &lt;input name=&#8221;logID&#8221; type=&#8221;hidden&#8221; value=&#8221;27&#8243;/&gt;&lt;br /&gt;               &lt;input name=&#8221;action&#8221; type=&#8221;hidden&#8221; value=&#8221;post&#8221;/&gt;&lt;br /&gt; 			  &lt;input name=&#8221;submit2&#8243; type=&#8221;submit&#8221; class=&#8221;userbutton&#8221; value=&#8221;发表评论&#8221; accesskey=&#8221;S&#8221;/&gt;&lt;br /&gt;               &lt;input name=&#8221;button&#8221; type=&#8221;reset&#8221; class=&#8221;userbutton&#8221; value=&#8221;重写&#8221;/&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td colspan=&#8221;2&#8243; align=&#8221;right&#8221; &gt; 			 虽然发表评论不用注册，但是为了保护您的发言权，建议您&lt;a href=&#8221;"register.asp&#8221;" mce_href=&#8221;"register.asp&#8221;"&gt;注册帐号&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;	  字数限制 &lt;b&gt;1000 字&lt;/b&gt; |&lt;br /&gt; 	  UBB代码 &lt;b&gt;开启&lt;/b&gt; |&lt;br /&gt; 	  [img]标签 &lt;b&gt;关闭&lt;/b&gt;&lt;/p&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;/form&gt; &lt;/div&gt; &lt;/div&gt; &lt;div id=&#8221;mainContent-bottomimg&#8221;&gt;内容底部&lt;/div&gt; &lt;/div&gt; &lt;p&gt; </textarea></p>
<input onclick="runEx('temp93900')" type="button" value="运行此代码" />
<input onclick="doCopy('temp93900')" type="button" value="复制此代码" /> [Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]</div>
</div>
<p>发表评论框（MsgContent）准备放到以后的章节里详细说明。内容通用部分大体就说完了，重要的是自己把上面的代码通过改动，细化来认识<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的结构和CSS各个属性的具体含义和产生的效果。<br />
<span style="color: black;"><strong>4.5底部式样</strong></span><br />
底部式样内容其实不是很多，可以说是非常的少。但这里为什么也要开一节说呢，这里要涉及一些教程的题外话。大家也不得不看一下，要不做的再好的Skin也会被人BS的。<br />
我们知道Blog的底部包含着一些重要的信息。第一行开头就是很重要的版权信息，说明了<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的版权并含有官方的网址链接，后面是自己站点的名字，站点是有什么构架的（就是xhtml | css）。第二行是页面执行的时间和查询数据库的次数，再后面就是我们Skin的一些信息了包含了Skin名字作者的站点和Email地址。第三行是站点的备案。<br />
这里要着重说说版权。Skin的一些信息就标明了这个Skin是你做的（具体怎么弄，等后面的章节里会说到的），使用者可以通过这些信息和你联系反应一些问题，当然也是宣传你的好方法，也是鼓励大家做Skin的好处。<span style="color: red;"><strong>对于<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的版权信息我们要绝对的保护</strong></span>。我们也讨论过这个问题，说Windows这么多盗版的但这些也保留了MS的版权，都知道Windows是微软的产品。盗版可能是某些人穷，这我可以理解。但对于<a href="http://www.pjhome.net" target="_blank">Pjblog</a>这样一个优秀的开源程序，要你一分钱了吗？你有必要把他的版权去掉吗？这样就会失去了基本的道德。所以我们无论是在做Skin还是在使用<a href="http://www.pjhome.net" target="_blank">Pjblog</a>都应该尊重作者。似乎叉的远了点。<br />
言归正传，来简单的看一下底部式样。很简单，看代码：</p>
<div class="UBBPanel">
<div class="UBBTitle">HTML代码</div>
<div class="UBBContent"><textarea id="temp69333" rows="8">&lt;br /&gt; &lt;mce:style type=&#8221;text/css&#8221;&gt;&lt;!&#8211; &lt;br /&gt; &lt;!&#8211;&lt;br /&gt;   /*&#8212;底部式样&#8212;*/&lt;br /&gt;   #foot1{width:816px;text-align:center;background:url(skins/dnxh10/bottom.jpg);height:85px;padding-top:6px;margin:0;border-bottom:1px solid #fff;font-size:12px;font-family: Arial, Verdana, Helvetica;}&lt;br /&gt;   #foot1 p{padding:0;margin:0;}&lt;br /&gt; &#8211;&gt;&lt;br /&gt; &#8211;&gt;&lt;/mce:style&gt;&lt;style type=&#8221;text/css&#8221; mce_bogus=&#8221;1&#8243;&gt;&lt;br /&gt; &lt;!&#8211;&lt;br /&gt;   /*&#8212;底部式样&#8212;*/&lt;br /&gt;   #foot1{width:816px;text-align:center;background:url(skins/dnxh10/bottom.jpg);height:85px;padding-top:6px;margin:0;border-bottom:1px solid #fff;font-size:12px;font-family: Arial, Verdana, Helvetica;}&lt;br /&gt;   #foot1 p{padding:0;margin:0;}&lt;br /&gt; &#8211;&gt;&lt;br /&gt;&lt;/style&gt;&lt;/p&gt; &lt;div id=&#8221;foot1&#8243;&gt; &lt;p style=&#8221;"font-size:11px;&#8221;" mce_style=&#8221;"font-size:11px;&#8221;"&gt;Powered By &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" target=&#8221;_blank&#8221;&gt;&lt;b&gt;PJBlog2 v2.5.0125&lt;/b&gt;&lt;/a&gt; CopyRight 2005, &lt;b&gt;酷秀网络&lt;/b&gt; &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" target=&#8221;_blank&#8221;&gt;xhtml&lt;/a&gt; | &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;"&gt;css&lt;/a&gt;&lt;/p&gt; &lt;p&gt;    Processed in &lt;b&gt;0.359375&lt;/b&gt; second(s) , &lt;b&gt;5&lt;/b&gt; queries , &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" target=&#8221;_blank&#8221;&gt;&lt;b&gt;素&lt;/b&gt;&lt;/a&gt; Design By &lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" target=&#8221;_blank&#8221;&gt;&lt;b&gt;dnxh&lt;/b&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href=&#8221;"#&#8221;" mce_href=&#8221;"#&#8221;" style=&#8221;"font-size:12px&#8221;" mce_style=&#8221;"font-size:12px&#8221;"&gt;&lt;b&gt;苏ICP备05072353号&lt;/b&gt;&lt;/a&gt;     &lt;/p&gt; &lt;/div&gt; &lt;p&gt;</textarea></p>
<input onclick="runEx('temp69333')" type="button" value="运行此代码" />
<input onclick="doCopy('temp69333')" type="button" value="复制此代码" /> [Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]</div>
</div>
<p>很清楚，一个Foot标签的DIV和两个&lt;p&gt;。通过前面的学习我想大家应该了解怎么做了。其实一般这个不需要我们设置，基本的字体大小什么的都默认已经定义了。但我们可以要在底部加一些图片之类的，利用padding、margin等属性控制文字的位置，文本的左对齐、右对齐等等。这里要了解的一点是对&lt;p&gt;的控制，程序里面用了两&lt;p&gt;字段，可能在设置边框或补白的时候出现分行的问题。<br />
<span style="color: black;"><strong>五、细节表现</strong></span><br />
<span style="color: black;"><strong>5.1 <a href="http://www.pjhome.net" target="_blank">Pjblog</a>默认模块</strong></span><br />
我们知道<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的很多功能是有模块构成的，而程序默认的模块我们在做Skin的时候为了通用性也必须要注意定义的。<br />
<span style="color: black;"><strong>5.1.1 日历式样</strong></span><br />
同样我们要来了解它的结构。<br />
日历它是一个侧栏模块。我们前面说了模块是包含在侧栏的sidepanel面板里的，然后给各自的模块一个唯一的ID。在这里日历的ID就是Side_Calenbar。那我们就可以对这class为sidepanel、ID为Side_Calendar的DIV进行定义了。对于class、ID 是怎样定义式样的我们前面也说了在这里再复习一下。前者是类选择符，表现形式为：<span style="color: brown;">.类属性</span>。后者是ID选择符，表现形式为：<span style="color: brown;">#ID名称</span>。以后就不再重复了。一般为了Skin的统一协调是对sidepanel进行统一定义的，只有特殊式样的时候才定义这个ID为Side_Calendar的DIV。当然这个DIV里面和其他侧栏面板一样同样有一个Class为Ptitle的H4标签、一个Class为Pcontent的内容DIV和一个Class为Pfoot的底部DIV。<br />
日历的主要内容是在Pcontent里的一个ID为Calendar_Body的DIV。这里面一共保护了7行。一个ID为Calendar_Top的DIV里面显示的就是XXXX年XX月和两个方向按钮，一个ID为Calendar_week的DIV里面显示的是星期， 还有5个都是ID为Calendar_Day的DIV这里就是具体的日期了。<br />
<img src="http://photo7.yupoo.com/20060616/20060616110859_159798966_aFlRu.jpg" border="0" alt="" /><br />
我们再来看看进一步的结构，充分的了解结构才能做好Skin。<br />
Calendar_Top:除了内容外还有ID为LeftB和RightB两个DIV，分别控制两个方向按钮。我们可以自定义按钮的图片<br />
Calendar_week:里面是一个&lt;ul&gt;&lt;li&gt;&lt;/ul&gt;&lt;/li&gt;的结构其中第一个也就是星期天“日”外面套了一个&lt;font&gt;程序默认定义了红色。我们通过导航的了解知道了这个结构要使它横向排列必须用Float，要不见点必须用<span style="color: green;">liststyle:none;</span><br />
Calendar_Day:这里面的结构和Calendar_week是一样的，不同的是li里面都包含超链接&lt;a&gt;,对不同情况的日期做了不同的Class。<span style="color: brown;">日期选中（.click）、今天（.today）、非本月日期（.otherday）、本日存在日志（.haveD）、今天存在日志（.DayD）</span><br />
那我们来看代码，日历的式样表在模板的typography.css里面。因为<a href="http://www.yesky.com/SoftChannel/72351167954354176/20040713/1830356.shtml" target="_blank">CSS有继承的特性</a>，因此我们最好<span style="color: maroon;"><strong>按照默认式样的顺序书写代码</strong></span>。</p>
<div class="UBBPanel">
<div class="UBBTitle">程序代码</div>
<div class="UBBContent">/*日历式样－－－对整个框架进行定义，这里定义的内容是会继承的下面的。也就是说如果下面的不另外声明就表现这里定义的内容*/<br />
#Calendar_Body{margin:5px 10px 5px 0px;font-family:arial;line-height:120%}<br />
/*顶部－－－对顶部定义式样，这里定义了一下文本居中*/<br />
#Calendar_Body #Calendar_Top{padding:0px 2px 0px 2px;height:18px;text-align:center;font-weight:bold;}<br />
/*按钮左－－－按钮图片（我这里用了颜色背景代替）*/<br />
#Calendar_Body #Calendar_Top #LeftB{background:#333;width:9px;height:16px;float:left;cursor:pointer;overflow:hidden;}<br />
/*按钮右－－－和上面的一样都要注意float*/<br />
#Calendar_Body #Calendar_Top #RightB{background:#333;width:9px;height:16px;float:right;cursor:pointer;overflow:hidden;}<br />
/*星期－－－这里要注意的是浮动（float）和宽度（width），宽带是用的%，这样做是为了适应个个Skin*/<br />
#Calendar_Body #Calendar_week{text-align:center;height:20px;padding:0px 0px 0px 2%;font-weight:bold;}<br />
ul.Week_UL{display:inline;list-style:none;margin:0px;padding:0px;}<br />
ul.Week_UL li{display:inline;margin:3px 0px 2px 0px;padding:0px;float:left;color:#003;width:14%;}<br />
/*日期－－－日期的整体使用这里定义了li使之横向排列同时注意宽带也是和上面一样用的%*/<br />
.Calendar_Day {text-align:center;height:20px;padding:0px 0px 0px 2%;color:#9c1c1c}<br />
.Calendar_Day ul.Day_UL{display:inline;list-style:none;}<br />
.Calendar_Day ul.Day_UL li{display:inline;float:left;width:14%;}</p>
<p>/*日期超链接－－－可以定义鼠标式样等等，包括下面的个个项完全可以自由发挥，不过要注意的是宽带、高度不需要再定义了。*/<br />
.DayA a{cursor:default;padding:2px 0px 3px 0px;display:block;font-size:11px;height:13px;color:#9c1c1c}<br />
.DayA a:link,.DayA a:visited{color:#06c;}<br />
.DayA a:hover{color:#f0821d;background:#FFBFBF}<br />
/*选中日期*/<br />
.DayA a.click{cursor:default;background:#9c1c1c;font-weight:bold;}<br />
.DayA a.click:link,.DayA a.click:visited{cursor:pointer;font-weight:bold;text-decoration:none;color:#fff}<br />
.DayA a.click:hover{text-decoration:none;color:#336633;}<br />
/*今天*/<br />
.DayA a.today{cursor:default;color:#9c1c1c;border:1px solid #9c1c1c;background:#fff;}</p>
<p>/*非本月日期*/<br />
.DayA a.otherday{cursor:default;color:#fff;text-decoration:none;/*visibility:hidden*/}<br />
.DayA a.otherday:link,.DayA a.otherday:visited{cursor:default;color:#eee;font-weight:bold;}<br />
.DayA a.otherday:hover{cursor:default;color:#9c1c1c;font-weight:bold;}</p>
<p>/*本日存在日志*/<br />
.DayA a.haveD{cursor:pointer;}<br />
.DayA a.haveD:link,.DayA a.haveD:visited{color:#9c1c1c;font-weight:bold;}<br />
.DayA a.haveD:hover{color:#9c1c1c;}<br />
/*今天存在日志*/<br />
.DayA a.DayD{cursor:pointer;}<br />
.DayA a.DayD:link,.DayA a.DayD:visited{border:1px solid #9c1c1c;background:#fff;font-weight:bold;text-decoration:none;color:#9c1c1c}<br />
.DayA a.DayD:hover{color:#9c1c1c;text-decoration:underline;border:1px solid #9c1c1c;background:#fff;font-weight:bold;}</p></div>
</div>
<p><span style="color: black;"><strong>5.2 按钮、信息框和输入框</strong></span><br />
都被指着鼻子说了，实在是不好意思再偷懒了。由于前段时间工作的变动，以及自己的懒惰 <img style="margin:0px 0px -2px 0px" src="http://www.fineemb.com/images/smilies/laugh.png" border="0" alt="" />这文章一直没续，今天开始继续来完成他。顺便自己也对CSS也温习一下。<br />
以后说的内容可能影响的地方不大，都是对一些细节方面的表现。前一节我们说了默认模块日历的编排，这最重要的就是要学习和了解<a href="http://www.yesky.com/SoftChannel/72351167954354176/20040713/1830356.shtml" target="_blank">CSS的继承性</a>，其他默认模块里面其实就是一些超链接，其他没什么特别的。<br />
首先我们要了解这一节里面我们要对哪些地方的式样进行定义。内容有文本输入框（用户名）、密码输入框（密码）、按钮、置顶日志按钮、日志分类图标、信息框（确认、报错等等）。而这些部位有些内容是在特定的时候出现的往往一些朋友刚开始做Skin的时候不注意这些地方，使得模版不够完美。这些内容<a href="http://www.pjhome.net" target="_blank">Pjblog</a>一般都是用类选择符来定义的，什么是类选择符我们在第四章第一节里面做了简短的说明。<br />
在CSS里面你只要选择了一个元素那你可以把这个元素看成或认为这个元素就是一个BOX。在第二章第二节里面有BOX的Flash模型，你可以尽情的对他们定义发挥你的创意。其中输入框（.inputBox）、密码输入框（.userpass）、按钮（.userbutton）、分类图标（.CateIcon）。这些我们可以定义他们的背景（background）、边框等等。重要的是他们还具有<strong>伪类</strong>（什么是伪类，在上面提供下载的CSS2.0手册里面有详细的说明），这样我们就可以做出鼠标在和不在的时候的式样。对于分类图标你还可以利用BOX的display属性定义他是否需要显示。还有就是置顶按钮，我们知道置顶按钮有两种状态，一个就是打开的时候的状态（.BttnC），还有一个就是关闭的状态（.BttnE），这样我们就可以给两个不同的图片作为按钮了。在当前我的这个Skin上面做了以下定义：</p>
<div class="UBBPanel">
<div class="UBBTitle">程序代码</div>
<div class="UBBContent">.userpass{border:1px solid #cc3300;font-size:12px;font-family: Verdana, Arial, Helvetica, sans-serif;background:#fff;}<br />
.userpass:hover,.userpass:focus{border-color:#cc3300;background:#fff;}<br />
.inputBox{border:1px solid #cc3300;;font-size:12px;}<br />
.inputBox:hover,.inputBox:focus{border-color:#cc3300;}<br />
.userbutton{height:21px;background:url(button_bg.jpg) repeat-x;border:none;padding:3px;border-right:2px solid #d6d6d6;border-bottom:2px solid #d6d6d6;}<br />
.CateIcon{display:none}</div>
</div>
<p>对于信息框我们来看一下他的结构。<br />
<img src="http://photo4.yupoo.com/20061225/104311_232213133_gwpnmoyo.jpg" border="0" alt="" /><br />
首先我们这个信息框（MsgContent）是包含在Tbody）里面的，这个也要了解的，因为Tbody里的定义一般会继承到他的子元素里面。我们了解了结构就好办了分别对这3个BOX定义就是了。</p>
<div class="UBBPanel">
<div class="UBBTitle">程序代码</div>
<div class="UBBContent">/*&#8212;信息框&#8211;*/<br />
#MsgContent{text-align:center;margin:auto;border:1px #999 solid;width:450px;}<br />
#MsgContent #MsgHead{padding:4px;color:#999;font-weight:bold;}<br />
#MsgContent #MsgBody{padding:4px;line-height:180%;color:#333;}</div>
</div>
<p>而在MsgBody里面可能有一些不同的情况发生，比如包含一个注册的表单和就只有一些文字。而需要定义的就是提示（.MessageIcon）、出错（.ErrorIcon）、警告（.WarningIcon）和询问（.QuestionIcon）的图标和文字。</p>
<div class="UBBPanel">
<div class="UBBTitle">程序代码</div>
<div class="UBBContent">/*信息框图标以及文字*/<br />
.MessageText{height:76px;margin-right:18px;margin-top:2px}<br />
.MessageIcon{background:url(2.gif) no-repeat;width:60px;height:60px;float:left;margin-left:10px;}<br />
.ErrorIcon{background:url(5.gif) no-repeat;width:60px;height:60px;float:left;margin-left:10px;}<br />
.WarningIcon{background:url(5.gif) no-repeat;width:60px;height:60px;float:left;margin-left:10px;}<br />
.QuestionIcon{background:url(5.gif) no-repeat;width:60px;height:60px;float:left;margin-left:10px;}</div>
</div>
<p>这里再提一个额外的式样，一般<a href="http://www.pjhome.net" target="_blank">Pjblog</a>默认情况下是不开启这个功能的。那就是提示框。<br />
<img src="http://photo4.yupoo.com/20061225/110449_1046112465_yakgpbkd.jpg" border="0" alt="" /><br />
这个只有在header.asp文件里面启用一个JS文件的时候才有效，但是你做的Skin无论是愿意提供给别人还是自己用建议都应该定义一下。</p>
<div class="UBBPanel">
<div class="UBBTitle">程序代码</div>
<div class="UBBContent">/*提示框CSS*/<br />
div.nicetitle {<br />
position: absolute;<br />
padding: 4px !important;<br />
padding: 6px 4px 4px 4px;<br />
top: 0;<br />
left: 0;<br />
font-family: Verdana, Helvetica, Arial, sans-serif;<br />
font-size: 12px;<br />
width: 15em;<br />
background: #FFFBD1 url(nicetitlebg.jpg);<br />
color: #3D2C05;<br />
border: 1px solid #715208;<br />
text-align: left;<br />
}<br />
div.nicetitle p {<br />
margin: 0; padding: 0 3px;<br />
}<br />
div.nicetitle p.destination {<br />
font-size: 9px;<br />
text-align: left;<br />
padding:3px 0px 0px 3px;<br />
color: #715208;<br />
}</div>
</div>
<p><span style="color: black;"><strong>5.3 UBB编辑器以及内容</strong></span><br />
这应该是全部模块讲述里面的最后一个部分了。有的时候我们使用UBB编辑器写的内容里包含一些代码块，说代码块可能不是很好理解。举例子就像插入Flash、视频、代码、可运行代码等等。这些我们可以在定义完内容面板式样后定义这些内容。这些内容就是包含在一个大的元素（.UBBPanel）里面的，同样是类选择符。<br />
<img src="http://photo4.yupoo.com/20070102/133425_1697216009_nwsugfpr.jpg" border="0" alt="" /><br />
从上图中可以看出这个结构很容易理解，同样我们只要分别把里面的每个元素看成是一个BOX，然后对他们进行定义。而其中的.UBBContent TEXTAREA为文本框多数在可运行代码里可以看到，里面的字体不要设置的过小哦，看代码太小很累的。<br />
说完内容部分接下来就说说UBB编辑器的式样。UBB式样是包含在模版主目录里的UBB文件夹里面，里面分别有一个editor.css的式样文件、bar.gif的栏目分割图片、和一个Icons的图标文件夹。我们可以替换这些图片但不能改文件名（有的时候为了和模版协调，需要更换UBB图标）。这里重点看editor.css这个式样文件。我们先开看看UBB编辑器的结构<br />
<img src="http://photo4.yupoo.com/20070102/141541_59143385_fylgjzpx.jpg" border="0" alt="" /><br />
我们从图中的结构可以看出，.editorContent部分的内容相对比较简单就是一个大的里面包含了一个文本框。主要是在#editorHead里的内容首先是包含了一个纵向排列的.editorTools我们可以看做是一个个工具栏。在工具栏里面又包含了一个个.Toolsbar工具条。工具条里是一个有Ul、Li构成的列表列表里是一个个的.Toolsbutton按钮，当然有的时候也有选择框.ToolsUL Li select。在一般情况下默认式样文件里的UBB式样可以通用不需要自己写，当然如果你的模版要求UBB编辑器协调的话可以在默认的基础上修改比如边框色、背景色之类的。当然如果你要在鼠标移到图标的时候当前图标稍微变大点，那你就可以.Toolsbutton:hover的式样，在里面定义一下尺寸。每个按钮除了有一个统一的Toolsbutton类之外他们各自还有一个唯一的ID，比如粗体就是A_bold。<br />
说到这里似乎要完了，但还有很重要的一个元素，那就是.UBBSmiliesPanel。这个是就是表情面板，就是点击插入表情的那个按钮时跳出给你选择表情的面板。因为这个元素默认是隐藏的，一般不会很注意他。这个面板除了自身的一个元素.UBBSmiliesPanel外，里面包含的就是一个表格，表格里面是一个个图像链接每个链接都有一个名为Smilie的类。我们定义的时候就定义.Smilie{}。这里要注意的是.UBBSmiliesPanel这个面板的定义，因为一些有些朋友用visibility:hidden来定义这个面板的隐藏。这里要注意，<strong><span style="color: maroon;">隐藏一个元素有两种方法visibility:hidden和display:none，这两个不同的是display:none不为被隐藏的对象保留其物理空间</span></strong>。也就是说display:none这个隐藏了就不占地方了，如果有的时候你做了一个800px的模版，但是有时遇到有横向滚动条的情况，但找不到那里出了问题，那你就试试这里有问题没有。<br />
<span style="color: black;"><strong>六、兼容调试</strong></span><br />
兼容问题一直是设计制作模版最头疼的问题。这里我们就目前主要流行的浏览器Firefox和IE6/7做为主要浏览器。在我们编写CSS过程中我们要经常的预览观看书写的效果，这个预览的过程最好使用一种浏览器或Firefox或IE，这里推荐使用Firefox。这里我就主要会出现的问题来进行说明。<br />
居中的问题。我们在要使一个DIV居中的时候，首先要对这个DIV的父元素（就使这个BOX的外面一层）设置text-align为center，然后设置目标DIV的margin为auto；<br />
尺寸问题。Firefox在设置padding后会加上这个BOX的高度和宽度，而IE就不加。由于Firefox和IE中的BOX模型解释不一致导致margin相差2px，就是说Firefox下设置margin:30px，那IE下就显示的尺寸为28px。margin还有个问题就是解决办法在IE7没出来前是用!important来解决的，IE出来了对!important认识了那就要另外解决了，<a href="http://www.blueidea.com/tech/site/2006/3626.asp" target="_blank">解决方法看这里</a>。另外在计算BOX宽度的时候一定要记得算上边框border的宽度。比如</p>
<div class="UBBPanel">
<div class="UBBTitle">程序代码</div>
<div class="UBBContent">&lt;div id=&#8221;1&#8243;&gt;<br />
&lt;div id=&#8221;2&#8243;&gt;&lt;div&gt;<br />
&lt;/div&gt;</div>
</div>
<p>这样的结构在<a href="http://www.pjhome.net" target="_blank">Pjblog</a>里随处可见。看式样</p>
<div class="UBBPanel">
<div class="UBBTitle">程序代码</div>
<div class="UBBContent">#2{width:100px;height:100px;border:2px solid #fff;}</div>
</div>
<p>这样的式样，由于1没设置固定的高和宽，而2设定了高和宽都为100px并且边框为2px，那1就被撑开到的高度和宽度尺寸为104px=100px+2px+2px。<br />
浮动的问题，这个最头疼了。这个主要是在使用横向布局的时候，比如使用Ul、Li结构的菜单、工具条等等。设置浮动的DIV那这个元素的margin的数值在IE下会加倍，这是一个ie6都存在的bug。解决方案是在这个浮动的div里面加上display:inline<br />
由于兼容出现的问题会根据不同的情况而出现，所以在这里就讲这些比较常见的问题。同时推荐一些调试工具，都是浏览器插件。一个是在IE下的由微软自己出的<a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=e59c3964-672d-4511-bb3e-2d5e1db91038&amp;DisplayLang=en" target="_blank">Internet Explorer Developer Toolbar</a>，就是英文版的。还有个就是Firefox的<a href="http://chrispederick.com/work/webdeveloper/" target="_blank">Web Developer Extension</a><br />
<span style="color: black;"><strong>七、打包</strong></span><br />
如果你认真看过<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的官方文档，这部分基本没什么问题了。所谓的打包，就是我们所做的模版的一些文件按<a href="http://www.pjhome.net" target="_blank">Pjblog</a>要求的文档结构布置。并且放置一个可以给Blog程序识别的skin.xml文件。文档的放置结构你随便拿个可用的模版参考一下就行了。我们重点看一下这个skin.xml文件</p>
<div class="UBBPanel">
<div class="UBBTitle">程序代码</div>
<div class="UBBContent">&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243;?&gt;<br />
&lt;SkinSet&gt;<br />
&lt;SkinName&gt;2007&lt;/SkinName&gt;&lt;!&#8211; 模版名字 &#8211;&gt;<br />
&lt;SkinDesigner&gt;dnxh&lt;/SkinDesigner&gt;&lt;!&#8211; 作者名字 &#8211;&gt;<br />
&lt;pubDate&gt;2001-01-25&lt;/pubDate&gt;&lt;!&#8211; 发布日期 &#8211;&gt;<br />
&lt;DesignerURL&gt;<a href="http://www.fineemb.com" target="_blank">http://www.fineemb.com</a>&lt;/DesignerURL&gt;&lt;!&#8211; 作者站点 &#8211;&gt;<br />
&lt;DesignerMail&gt;embont@gmail.com&lt;/DesignerMail&gt;&lt;!&#8211; 作者邮箱 &#8211;&gt;<br />
&lt;/SkinSet&gt;</div>
</div>
<p>这是一个标准的XML文件。每一项我都已经注明了含意。最后强调的是模版里的所有文件，包括这个XML全部采用<a href="http://www.fineemb.com/blog/archives/261.html" target="_blank">UTF-8</a>的编码<br />
<span style="color: black;"><strong>八、总结</strong></span><br />
写这篇文章还跨年度了，只能说自己太懒了。如果你认真的看过这篇文章，你会发现在我总是在强调模版皮肤制作的时候（不仅仅是<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的）要先理解并且熟悉这个程序的结构。根据Web标准的说法，因为结构在前，而我们做的模版也好皮肤也好是在他的基础上进行的渲染，是一件外套。所以你如果熟悉了程序的DIV结构那你制作模版也就会了一半了。</p>
<p>我们量好了身材就要知道这个衣服怎么个做法，有些什么标准。我们回到CSS上来，CSS是 Cascading Style Sheet 的缩写缩写，译作「层叠样式表单」。CSS关键就是要领略“叠层”二字，并且有子父关系，他们之间有继承性，就是说你的定义了span{color:&#8221;blue&#8221;;}后，那以后的span元素就全部显示蓝色了，这样就不需要一个个的元素来定义了。这个就是<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的侧栏模块一样，先定义一个全局的类元素（sidepanel），这样大大减少了代码的冗余。那如果说我在这一批元素里面的某一个或几个是需要特别显示的呢？那就再使用侧栏的模块ID来特别定义一下，这就是CSS的解决冲突的规则，了解了这两点就可以写出比较明朗的CSS代码了。</p>
<p>兼容性的问题总觉得的很头大。其实只要你记住几点就不是什么大问题了。浮动的元素一定要闭合，这个在前面的章节里说过。除了这个外最大的问题就边框边距之类的问题，除了我们苦苦寻求hack。还不如绕过这些容易产生兼容问题的情况。这就是说建议你少用或不用maring之类会出问题的属性，那你会说不用这个怎么行呢？你可以利用它旁边的DIV的大小来调节它的位置。一个我遇到的一个典型的例子。是<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的Header部分的，里面分别有Blog名字、Blog标题和菜单3个DIV，而标题设置的是display : none;而菜单则用一个大大的margin-top来撑开菜单的距离，这样做是非常不明智的。你完全可以把标题的DIV设置一个高度并且使用visibility : hidden ;来隐藏这个元素从而撑开菜单到顶部的距离。<br />
－－－－全文完－－－－</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fineemb.com/blog/archives/155.html/feed</wfw:commentRss>
		<slash:comments>65</slash:comments>
		</item>
		<item>
		<title>Skin发布【素】For Pjblog2.6 Beta 01</title>
		<link>http://www.fineemb.com/blog/archives/197.html</link>
		<comments>http://www.fineemb.com/blog/archives/197.html#comments</comments>
		<pubDate>Mon, 12 Jun 2006 08:13:58 +0000</pubDate>
		<dc:creator>花老鼠</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[pjblog]]></category>
		<category><![CDATA[skin]]></category>

		<guid isPermaLink="false">http://blog.dnxh.cn/archives/197.html</guid>
		<description><![CDATA[风格名称：素 发布时间： 2006-06-12 发 布 人： dnxh 联系方式：http://www.fineemb.com 演示地址：用Skin Switcher插件预览 下载地址： 点击下载此文件 使用说明：好长时间没发Skin了。这个也是我用的时间最长的一个Skin了，感觉比较舒服。Logo自己做，我提供了一个干净的Top图片。默认的是显示Blogname的，只是在IE和Firefox下的显示效果不一样，找不到原因。]]></description>
			<content:encoded><![CDATA[<p>风格名称：素<img src="http://www.fineemb.com/attachments/month_0601/h2006124103259.png" border="0" alt="" align="right" /><br />
发布时间： 2006-06-12<br />
发 布 人： dnxh<br />
联系方式：<a href="http://www.fineemb.com" target="_blank">http://www.fineemb.com</a><br />
演示地址：用Skin Switcher插件预览<br />
下载地址： <a href="http://www.fineemb.com/attachments/month_0606/q200661216932.rar" target="_blank">点击下载此文件</a><br />
使用说明：好长时间没发Skin了。这个也是我用的时间最长的一个Skin了，感觉比较舒服。Logo自己做，我提供了一个干净的Top图片。默认的是显示Blogname的，只是在IE和Firefox下的显示效果不一样，找不到原因。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fineemb.com/blog/archives/197.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Pjblog的结构模型Flash版</title>
		<link>http://www.fineemb.com/blog/archives/171.html</link>
		<comments>http://www.fineemb.com/blog/archives/171.html#comments</comments>
		<pubDate>Sat, 08 Apr 2006 02:08:38 +0000</pubDate>
		<dc:creator>花老鼠</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[pjblog]]></category>

		<guid isPermaLink="false">http://blog.dnxh.cn/archives/171.html</guid>
		<description><![CDATA[Pjblog的结构模型Flash版 Pjblog结构模型]]></description>
			<content:encoded><![CDATA[<p>Pjblog的结构模型Flash版<br />
<a href="http://www.pjhome.net" target="_blank"></a><a href="http://www.fineemb.com/down/Pjblogmodel.swf">Pjblog结构模型</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.fineemb.com/blog/archives/171.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Skin发布【简约（100％）】For Pjblog2.5</title>
		<link>http://www.fineemb.com/blog/archives/151.html</link>
		<comments>http://www.fineemb.com/blog/archives/151.html#comments</comments>
		<pubDate>Mon, 20 Feb 2006 07:47:21 +0000</pubDate>
		<dc:creator>花老鼠</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[pjblog]]></category>
		<category><![CDATA[skin]]></category>

		<guid isPermaLink="false">http://blog.dnxh.cn/archives/151.html</guid>
		<description><![CDATA[风格名称：简约（100％） 发布时间： 2006-02-20 发 布 人： dnxh 联系方式：http://www.fineemb.com 演示地址：用Skin Switcher插件预览 下载地址： 点击下载此文件 使用说明：这是我唯一做的一款自适应Skin。主要的特点是导航和侧栏的超链接式样，其实也不是很特别。只是自己没尝试过罢了。但还有些不足的地方，那就是侧栏的Category部分式样。由于在源程序里有个&#60;/br&#62;所以没有达到预先的效果。暂没办法解决。]]></description>
			<content:encoded><![CDATA[<p>风格名称：简约（100％）<img src="http://www.fineemb.com/attachments/month_0601/h2006124103259.png" border="0" alt="" align="right" /><br />
发布时间： 2006-02-20<br />
发 布 人： dnxh<br />
联系方式：<a href="http://www.fineemb.com" target="_blank">http://www.fineemb.com</a><br />
演示地址：用Skin Switcher插件预览<br />
下载地址： <a href="http://www.fineemb.com/attachments/month_0602/82006220154047.rar" target="_blank">点击下载此文件</a><br />
使用说明：这是我唯一做的一款自适应Skin。主要的特点是导航和侧栏的超链接式样，其实也不是很特别。只是自己没尝试过罢了。但还有些不足的地方，那就是侧栏的Category部分式样。由于在源程序里有个&lt;/br&gt;所以没有达到预先的效果。暂没办法解决。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fineemb.com/blog/archives/151.html/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Pjblog2.5 XML-RPC使用详细说明</title>
		<link>http://www.fineemb.com/blog/archives/131.html</link>
		<comments>http://www.fineemb.com/blog/archives/131.html#comments</comments>
		<pubDate>Wed, 25 Jan 2006 18:09:45 +0000</pubDate>
		<dc:creator>花老鼠</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[pjblog]]></category>
		<category><![CDATA[xmlrpc]]></category>

		<guid isPermaLink="false">http://blog.dnxh.cn/archives/131.html</guid>
		<description><![CDATA[今天PJblog2.5发布了，里面最重要的一个功能就是XML-RPC。首先这个技术我的理解就是不需要打开你的Blog就可以发布日志。你可以用本地客户端（Zoundry）写好日志后上传，也可以在其他功能WEB程序（Flickr、Yupoo）里发布日志到你的Blog。 Zoundry是Pjblog推荐的客户端软件，这里我们做个详细的介绍： 打开Zoundry，设置你的帐户信息。 设置Blog帐户，新增一个Blog。可以是多个 填入你的帐户信息，这里要注意的是XML-RPC接口类型。注意图上标注的。 Pjblog2.5的XML-RPC URl是：http://你的Blog根目录/xmlrpc.asp 如果你的服务器支持文件上传就点上一个，不支持就点下一个FTP上传（大多数是上一个） 这里我们的Blog就添加好了，你可以再编辑你的Blog信息。比如修改了密码之类的。 下载你以前的日志。 注意这里你可以设置你下载的日志条数，最多500条。 切换到你的Blog面板，选择你的Blog。 这里你可以打开你以前写的日志看看（这个也相当于你备份了一下你的数据哦！） 我们新建一个日志，从上图看到，我们可以选择日志的分类。Tag好像没啥效果。 填好标题，选择好日志分类。我们编辑日志的内容。这里我们可以贴图片，可以是贴图片的链接也可以是本地文件（你的服务器支持上传文件）。 发布你的日志。上传日志，有三个复选框，Update（更新数据）Draft（保存草稿）Image Upload（图片上传）。点Post发布。 看一下效果。 ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ 在Filckr之类的WEB程序上怎么发布呢！ 简单说明一下 登陆到你的相册－打开你的帐户( Your Account )－Blogging栏－Your blogs 如果你没有设置就会叫你添加一个Blog( Set up a new blog) 注意这里的设置，特别是XML-RPC接口的类型。 设置好了后保存。 以后你就可以用Flickr的BLOF THIS功能发布日志到你的Blog上了。 ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ 在Yupoo下的运用 和Filckr没多大的区别，这里我就贴张图表示一下了 Yupoo下的接口类型为Movable Type，虽然上图的也可以，但Movable Type才是Pjblog的标准类型。 听说Yupoo要为Pjblog专门开个链接了。到时候大家就看的明白咯。 好了就说到这里了，明天好有回家哦。不明白的先去问问舜子吧。困死我了！～～]]></description>
			<content:encoded><![CDATA[<p>今天PJblog2.5发布了，里面最重要的一个功能就是XML-RPC。首先这个技术我的理解就是不需要打开你的Blog就可以发布日志。你可以用本地客户端（<a href="http://www.zoundry.com/" target="_blank">Zoundry</a>）写好日志后上传，也可以在其他功能WEB程序（<a href="http://www.flickr.com/" target="_blank">Flickr</a>、<a href="http://www.yupoo.com" target="_blank">Yupoo</a>）里发布日志到你的Blog。<br />
<a href="http://www.zoundry.com/" target="_blank">Zoundry</a>是<a href="http://www.pjhome.net" target="_blank">Pjblog</a>推荐的客户端软件，这里我们做个详细的介绍：<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_1309428002.jpg" border="0" alt="" /><br />
打开<a href="http://www.zoundry.com/" target="_blank">Zoundry</a>，设置你的帐户信息。<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_845533397.jpg" border="0" alt="" /><br />
设置Blog帐户，新增一个Blog。可以是多个<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_1853397206.jpg" border="0" alt="" /><br />
填入你的帐户信息，<span style="color:red">这里要注意的是XML-RPC接口类型。注意图上标注的。<br />
<a href="http://www.pjhome.net" target="_blank">Pjblog</a>2.5的XML-RPC URl是：<a href="http://" target="_blank">http://</a>你的Blog根目录/xmlrpc.asp</span><br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_2165415.jpg" border="0" alt="" /><br />
如果你的服务器支持文件上传就点上一个，不支持就点下一个FTP上传（大多数是上一个）<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_2074797179.jpg" border="0" alt="" /><br />
这里我们的Blog就添加好了，你可以再编辑你的Blog信息。比如修改了密码之类的。<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_575092490.jpg" border="0" alt="" /><br />
下载你以前的日志。<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_1276541219.jpg" border="0" alt="" /><br />
注意这里你可以设置你下载的日志条数，最多500条。<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_490766628.jpg" border="0" alt="" /><br />
切换到你的Blog面板，选择你的Blog。<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_1888440013.jpg" border="0" alt="" /><br />
这里你可以打开你以前写的日志看看（这个也相当于你备份了一下你的数据哦！）<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_1743042533.jpg" border="0" alt="" /><br />
我们新建一个日志，从上图看到，我们可以选择日志的分类。Tag好像没啥效果。<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_2077690009.jpg" border="0" alt="" /><br />
填好标题，选择好日志分类。我们编辑日志的内容。这里我们可以贴图片，可以是贴图片的链接也可以是本地文件（你的服务器支持上传文件）。<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_1502331222.jpg" border="0" alt="" /><br />
发布你的日志。上传日志，有三个复选框，Update（更新数据）Draft（保存草稿）Image Upload（图片上传）。点Post发布。<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_105810211.jpg" border="0" alt="" /><br />
看一下效果。<br />
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝<br />
在Filckr之类的WEB程序上怎么发布呢！<br />
简单说明一下<br />
登陆到你的相册－打开你的帐户( Your Account )－Blogging栏－Your blogs<br />
如果你没有设置就会叫你添加一个Blog( Set up a new blog)<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_1723838677.jpg" border="0" alt="" /><br />
注意这里的设置，特别是XML-RPC接口的类型。<br />
设置好了后保存。<br />
以后你就可以用<a href="http://www.flickr.com/" target="_blank">Flickr</a>的BLOF THIS功能发布日志到你的Blog上了。<br />
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝<br />
在<a href="http://www.yupoo.com" target="_blank">Yupoo</a>下的运用<br />
和Filckr没多大的区别，这里我就贴张图表示一下了<br />
<img src="http://photo3.yupoo.com/20060126/20060126011938_87599004.jpg" border="0" alt="" /><br />
<a href="http://www.yupoo.com" target="_blank">Yupoo</a>下的接口类型为Movable Type，虽然上图的也可以，但Movable Type才是<a href="http://www.pjhome.net" target="_blank">Pjblog</a>的标准类型。<br />
听说<a href="http://www.yupoo.com" target="_blank">Yupoo</a>要为<a href="http://www.pjhome.net" target="_blank">Pjblog</a>专门开个链接了。到时候大家就看的明白咯。<br />
好了就说到这里了，明天好有回家哦。不明白的先去问问舜子吧。困死我了！～～</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fineemb.com/blog/archives/131.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>FlickrShow For PJblog2.5</title>
		<link>http://www.fineemb.com/blog/archives/124.html</link>
		<comments>http://www.fineemb.com/blog/archives/124.html#comments</comments>
		<pubDate>Wed, 25 Jan 2006 03:55:00 +0000</pubDate>
		<dc:creator>花老鼠</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[pjblog]]></category>

		<guid isPermaLink="false">http://blog.dnxh.cn/archives/124.html</guid>
		<description><![CDATA[插件名称：Flickr Show 发布时间：2006-1-25 设计作者：dnxh 作者主页：http://www.fineemb.com/ 下载地址：http://www.fineemb.com/blog/article.asp?id=124 使用说明：本人原创。免费使用，但必须遵循创作共用(Creative Commons)约定。 ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ 这个插件早就有构思了，但苦于没有编程基础，未能完成。此间还请教过舜子，由于他太慢了，未能解决问题。前些天看到了FlickrBadge插件才想起来还有个插件没完成，FlickrShow和FlickrBadge的区别是，前者是内容插件后者是侧栏插件，而侧栏插件面临的问题是侧栏的宽度，不一定适合全部的Skins。而且也影响页面访问的速度。而内容插件基本没有这样的问题。下面说说插件的使用： FlickrShow可以显示你的相册或别人的相册 用户ID格式是*******@***，组ID的格式也是一样的。具体可以通过idGettr把自己的用户名转换成ID。 标签（Tag）。是你设置的TAG，这个功能就想Blog里的TAG一样，好处就不多说了。【建议设置英文标签】 收藏（favorites）。你可以收藏来自Flickr的照片。 ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ FlickrShow的显示组合： 用户的全部图片：填用户的ID，其他的留空； 用户的某个Tag：填用户的ID，填这个用户的标签名字（建议用英文标签），其他的留空； 群组（Groups）图片：填群组的ID，其他的留空； 显示用户收藏（favorites）图片：填用户的ID，可以选择用户登陆后显示（私有收藏）、公开收藏、不显示（默认值），其他的留空； 其实应该还有好多组合的，原因是要放假了。我得回家咯！过了年再研究 ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ 插件下载： 点击下载此文件]]></description>
			<content:encoded><![CDATA[<p>插件名称：<a href="http://www.flickr.com/" target="_blank">Flickr</a> Show<img src="http://www.fineemb.com/attachments/month_0601/a2006125121242.png" border="0" alt="" align="right" /><br />
发布时间：2006-1-25<br />
设计作者：dnxh<br />
作者主页：<a href="http://www.fineemb.com/" target="_blank">http://www.fineemb.com/</a><br />
<span style="text-decoration: line-through;">下载地址：http://www.fineemb.com/blog/article.asp?id=124</span><br />
使用说明：本人原创。免费使用，但必须遵循创作共用(Creative Commons)约定。</p>
<p>＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝</p>
<p>这个插件早就有构思了，但苦于没有编程基础，未能完成。此间还请教过舜子，由于他太慢了，未能解决问题。前些天看到了<a href="http://www.flickr.com/" target="_blank">Flickr</a>Badge插件才想起来还有个插件没完成，<a href="http://www.flickr.com/" target="_blank">Flickr</a>Show和<a href="http://www.flickr.com/" target="_blank">Flickr</a>Badge的区别是，前者是内容插件后者是侧栏插件，而侧栏插件面临的问题是侧栏的宽度，不一定适合全部的Skins。而且也影响页面访问的速度。而内容插件基本没有这样的问题。下面说说插件的使用：<br />
<a href="http://www.flickr.com/" target="_blank">Flickr</a>Show可以显示你的相册或别人的相册<br />
用户ID格式是*******@***，组ID的格式也是一样的。具体可以通过<a href="http://idgettr.com/" target="_blank">idGettr</a>把自己的用户名转换成ID。<br />
标签（Tag）。是你设置的TAG，这个功能就想Blog里的TAG一样，好处就不多说了。【建议设置英文标签】<br />
收藏（favorites）。你可以收藏来自<a href="http://www.flickr.com/" target="_blank">Flickr</a>的照片。</p>
<p>＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝</p>
<p><strong><a href="http://www.flickr.com/" target="_blank">Flickr</a>Show的显示组合：</strong><br />
<span style="color:Red">用户的全部图片</span>：填用户的ID，其他的留空；<br />
<span style="color:Red">用户的某个Tag</span>：填用户的ID，填这个用户的标签名字（建议用英文标签），其他的留空；<br />
<span style="color:Red">群组（Groups）图片</span>：填群组的ID，其他的留空；<br />
<span style="color:Red">显示用户收藏（favorites）图片</span>：填用户的ID，可以选择用户登陆后显示（私有收藏）、公开收藏、不显示（默认值），其他的留空；<br />
其实应该还有好多组合的，原因是要放假了。我得回家咯！过了年再研究</p>
<p>＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝</p>
<p>插件下载： 点击下载此文件</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fineemb.com/blog/archives/124.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>
