<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title></title>
		<link>http://www.fantxi.com/blog/category//</link>
		<description>几乎任何事都有可能,只要你去做.专注web前端开发</description>
		<copyright>Copyright (C) 2004 Security Angel Team [S4T] All Rights Reserved.</copyright>
		<generator>SaBlog-X Version Plus 2.0 Build 20081118</generator>
		<lastBuildDate>Tue, 09 Feb 2010 13:05:28 +0000</lastBuildDate>
		<ttl>30</ttl>
		<item>
			<guid>http://www.fantxi.com/blog/archives/672/</guid>
			<title>开始使用 html5+css3吧</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>&nbsp;XHTML1.0、XHTML1.1的doctype不嫌长吗？虽然XHTML1.1比XHTML1.0的少了几个字母，但html5仅需：&lt;!DOCTYPE html&gt;，喜欢探索的同学应该注意到了淘宝、土豆的首页，都使用了html5的DTD。</p>
<div>html5的编码仅需：&lt;meta charset=&quot;utf-8&quot;&gt;，html5可以直接&lt;style&gt;&lt;/style&gt;、&lt;script&gt;&lt;/script&gt;,不需要加type=&quot;text/css&quot;、type=&quot;text/javascript&quot;。而且还加入了更语义化的：header、nav、menu、article、aside、details、dialog、footer等，不过为了兼容IE(IE下css里设置html5新增元素的样式无效)目前还是使用div吧。或者是把&lt;!--[if IE]&gt;http://html5shiv.googlecode.com/svn/trunk/html5.js&lt;![endif]--&gt;加入&lt;head&gt;，然后用到的块级元素(section, article, aside, header, footer, nav, dialog, figure)在css加上：display:block也可以。原理就是用js先创建这些元素，然后ie下面就可以应用css的样式了。具体例子可看：<a href="http://ejohn.org/blog/html5-shiv/">http://ejohn.org/blog/html5-shiv/</a></div>
<div>&nbsp;</div>
<div>css3的圆角阴影等虽然在兼容上有问题，有些时候部分内容也可以用一下,毕竟新技术是要不断学习的。总要学点啥吧？</div>
<div>&nbsp;</div>
<div>最近用html5、css3写了一个门户站，感觉优化的极好，结构和兼容性都很满意，很有成就感，哈哈</div>
<p>&nbsp;</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/672/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2009-12-11 16:00</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/671/</guid>
			<title>vim使用autocomplpop插件编辑html文件错误的解决</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>autocomplpop插件绝对是一个出色的差价，边输入边提示，使VIM看起来像IDE了。废话不多说了，使用autocomplpop编辑html文件时，比如输入&quot;&lt;div &quot; （DIV空格），这时会弹出提示来，当选择[class=&quot;   CDATA]或者[id=&quot;      ID]时，VIM会报错：</p>
<p>Error detected while processing function htmlcomplete#complete tags: <br />
line 304 <br />
E121: Undefined variable :classlines</p>
<p>下面提供两个解决方法：</p>
<p>1、我的：把plugin/acp.vim 的35/36行（html/xhtml那里 ）删除掉,100-104/106-110行 删除或者注释掉。</p>
<p>2、我也发了邮件给作者，他说没有发现任何问题（可能他用的LINUX），经过两次交流，他发给我个地址：<a href="http://likealunatic.jp/2009/09/29_acpvim.php">http://likealunatic.jp/2009/09/29_acpvim.php</a>，这里的方法是：编辑：autoload/htmlcomplete.vim，</p>
<p>245-256行注释掉（246、247不注释），294-310行注释掉（295、296、307、308不注释）</p>
<p>推荐第二种，因为我的方法，在html下面没有autocomplpop的功能了，当然，如不需要HTML的提示也可以用第一种。</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/671/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2009-11-19 18:02</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/670/</guid>
			<title>加入VIM阵营了</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>刚接触vim应该是2年前吧，到现在才去尝试把它作为自己的主要编辑器。VIM的界面实在太普通，貌似是从史前一万年座时空穿梭机来的，这点绝对是让很多人不想接触它的原因之一，不过我们使用gVim，下几个<a href="http://www.vim.org/scripts/script_search_results.php?order_by=creation_date&amp;direction=descending">配色方案、插件</a>或者别人的配置，感觉会舒服许多。<br />
<br />
VIM不愧是世界第二，可制定性很强大，而且插件N多，虽然开始有些不适，需要在下面打一些命令。但是我会强制多使用它的，用熟练了是绝对可以提高效率地。<br />
优秀的软件的发展应该就要走这个路线，自己本身提供最基本的功能，然后超强的可制定性，加上很多好用的插件等待你去发掘。比如：前端开发er必备的firefox。<br />
但是Editplus也算是比较优秀的编辑器，缺点就是制定性有限（还有，是收费的:)）。ed自己配置后，很多功能也是可以用快捷键实现，开发效率也是比较快的。目前的状况是vim有的ed没有，ed有的vim(可能还)没有。所以一段时间内，这两个都是我不可或缺的软件。<br />
<br />
使用vim，推荐看看这篇文章，http://blog.chinaunix.net/u/3514/showart.php?id=1974190<br />
http://vimcdoc.sourceforge.net/ 这里的pdf手册<br />
或者在线阅读：http://vimcdoc.sourceforge.net/doc/help.html<br />
VIM的命令实在太多，如果一个人能熟练使用它所有的命令，那他一定是个使用VIM很多年的大牛了。不要太贪，想一下就可以驾驭它，可以慢慢去发掘，慢慢去体会。<br />
<br />
另外再推荐一个VIM插件：autocomplpop(语法自动提示，像VS2008、DW的提示，很好很强大)http://www.vim.org/scripts/script.php?script_id=1879<br />
还有：snipMate(tab键代码段补全（仿MAC下的TextMate的补全）)http://www.vim.org/scripts/script.php?script_id=2540，针对不同的文件类型可以自己制定，发现没有css制定的，粗略看了下它里面的注释是用的#号开头，应该会和css里面的冲突，不过用了：autocomplpop这点完全可以忽略了。<br />
autocomplpop的确是很不错的插件，这个插件应该会让很多使用其他编辑器的人加入VIM阵营吧～<br />
在推荐2个防TextMate的配色方案<br />
&nbsp;&nbsp;&nbsp; eclm_wombat.vim:&nbsp;&nbsp;&nbsp; http://www.vim.org/scripts/script.php?script_id=2490<br />
&nbsp;&nbsp;&nbsp; blackboard.vim:&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; http://www.vim.org/scripts/script.php?script_id=2280<br />
&nbsp;&nbsp;&nbsp; vim72\colors\里面自带的：desert.vim、slate.vim也是不错的</p>
<p>google的 <a href="http://closure-compiler.appspot.com/home">Closure Compiler</a> 真的很强大，压缩js效果很好。</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/670/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2009-11-15 10:38</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/669/</guid>
			<title>最近也尝试使用jquery写页面了</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>其实自己写了一个js库的，这也不能算是库吧，因为叫库的话，应该要比较强大吧。和jquery、mootools、yui那些比起来简直差好多。我这个只是把自己常用的整理在了一起，比如：addclass、hasclass、removeclass、cookies、getByClassName、<span class="Apple-style-span" style="font-family: arial; line-height: normal; font-size: 16px; white-space: pre; ">event</span>等一些最常用的，相对简单许多了，写法应该和JQ、yui的有些类似吧。因为JQ压缩版也有50多K，而我写的因为简单，做一个门户站的话，全站的js差不多也就30来k，所以还是有些好处的，因为大家都知道仅仅因为一个tab切换而去用jq的话，那算是暴发户所为吧，太浪费了。但是这个有一个缺点，因为JS代码不统一，而合作开发的人如果要用到里面的写法，那么就会需要花费时间，或者，可能他自己加入了另一个js库去实现页面，那么与其这样倒不如团队统一。自己写的那个js目前也用在了两个门户站还有几个小站上面，也算知足了吧。那么goodbye了，为了团队开始用jq吧。</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/669/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2009-09-21 02:07</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/666/</guid>
			<title>发现了一个IE6的2个form嵌套bug</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>如果网站是.net程序的话，body下面紧跟着就是一个form，因此页面出现两个form的几率很高。在做公司目前的一个项目时，发现当在网页中加进去一个form后，用IE6测试时，发现加进去的form后面的文字变成居中对齐了。比如下面的代码：</p>
<pre><ol class="dp-xml"><li class="alt"><span><span>&lt;!DOCTYPE&nbsp;html&nbsp;PUBLIC&nbsp;&quot;-//W3C//DTD&nbsp;XHTML&nbsp;1.1//EN&quot;&nbsp;&quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&quot;</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="tag">&lt;</span><span class="tag-name">html</span><span>&nbsp;</span><span class="attribute">xmlns</span><span>=</span><span class="attribute-value">&quot;http://www.w3.org/1999/xhtml&quot;</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="tag">&lt;</span><span class="tag-name">head</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="tag">&lt;</span><span class="tag-name">meta</span><span>&nbsp;</span><span class="attribute">http-equiv</span><span>=</span><span class="attribute-value">&quot;Content-Type&quot;</span><span>&nbsp;</span><span class="attribute">content</span><span>=</span><span class="attribute-value">&quot;text/html;&nbsp;charset=gbk&quot;</span><span>&nbsp;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></span><span class="Apple-style-span" style="color: rgb(0, 0, 0);">&nbsp;</span></li><li class="alt"><span><span class="tag">&lt;</span><span class="tag-name">style</span><span class="tag">&gt;</span></span><font color="#000000" class="Apple-style-span"><br /></font></li><li class="alt"><span>body,div,h2,form,p{margin:0;padding:0;font-weight:400;}&nbsp;</span></li><li><span>body{background:#FFF;color:#444;font:12px/20px&nbsp;Arial;text-align:center;}&nbsp;</span><font color="#000000" class="Apple-style-span"><br /></font></li><li><font color="#000000" class="Apple-style-span"><br /></font></li><li class="alt"><span>#body,#ft{clear:both;width:706px;margin:0&nbsp;auto;border:1px solid #CCC;text-align:left;}&nbsp;</span></li><li><span>#body&nbsp;div{text-align:left;}&nbsp;</span></li><li class="alt"><span><span class="tag">&lt;/</span><span class="tag-name">style</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="tag">&lt;/</span><span class="tag-name">head</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;</span></li><li><span><span class="tag">&lt;</span><span class="tag-name">body</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="tag">&lt;</span><span class="tag-name">form</span><span class="tag">&gt;</span><span>第一个form&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">div</span><span>&nbsp;</span><span class="attribute">id</span><span>=</span><span class="attribute-value">&quot;body&quot;</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">div</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">form</span><span class="tag">&gt;</span><span>第二个form：这是一个神奇的Form，这个form下面的内容，IE6会居中显示，继承了body的text-align:center（#body:{text-align:left}没有起到作用）。删除这个form后，会发现ie6下下面的内容都变成正常的左对齐了。&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;/</span><span class="tag-name">form</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;此现象应该是form内又嵌套了一个form所导致。&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;/</span><span class="tag-name">div</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">div</span><span class="tag">&gt;</span><span>这里的内容,要再设置一次：#bd&nbsp;div{text-align:left;}&nbsp;ie6才会左对齐</span><span class="tag">&lt;/</span><span class="tag-name">div</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">h2</span><span class="tag">&gt;</span><span>这里的内容IE6居中了</span><span class="tag">&lt;/</span><span class="tag-name">h2</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;/</span><span class="tag-name">div</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="tag">&lt;/</span><span class="tag-name">form</span><span class="tag">&gt;</span></span><font color="#006699" class="Apple-style-span"><b><font color="#000000" class="Apple-style-span"><br /></font></b></font></li><li class="alt"><span><span class="tag">&lt;/</span><span class="tag-name">body</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="tag">&lt;/</span><span class="tag-name">html</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li></ol></pre>
<p>&nbsp;由于以前接触的基本都是php的程序，从来没遇到过这样的情况，.net把body间的内容用一个form给包含了，当里面再加进去一个form后，上面描述的问题就出现了。</p>
<p>我想到的解决办法就是：</p>
<p>1、 把css里body的text-align:center;修改成：text-align /*IE5.5 only*/:center; （这里没照顾ie5.0），由于IE5、IE6都识别前面加下划线&ldquo;_text-align:&rdquo;这个hack，所以这个hack在这里也用不上（以前还以为加下划线只有IE6能识别）。 body加text-align:center;也就是为了让IE5实现margin:0 auto的效果。</p>
<p>2、狠下心把body的text-align:center删掉也能解决，但是ie5就。。可惜IE5还有极少数的人在用。。<font size="4" face="'Courier New'" color="#007700" class="Apple-style-span"><span class="Apple-style-span" style="font-size: 16px; line-height: normal;"><br />
</span></font></p>
<p>3、&lt;!--[if IE 6]&gt;&nbsp;body{text-align:left;}&nbsp;&lt;![endif]--&gt; 或者 * html body{text-align:left;}/*IE6/ie7都识别*/</p>
<p>4、重设#body下面的元素，#body div,&nbsp;#body h2{text-align:left;}&nbsp;</p>
<p>在实践中上面的四种方法都可能用到，个人更偏向于第三、四种方案。</p>
<p>&nbsp;另外发现我blog的字体，在chrome下不是一般的难看啊。。。越来越不喜欢这个风格了。。不知道啥时候有空做一个。还有这两天做了一个雅黑+DejaVuSansMono的等宽字体，等宽主要是方便用vim的时候选择，还有bug 所以还不能发布，等发现没什么问题了就发布出来。主要是搜索很久都没找到雅黑+DejaVuSansMono的等宽字体，所以才萌生了自己做的想法。这个合并字体搞了很久，也搞的很郁闷，制作字体的时候CUP经常100%，终于发现我的电脑年纪不小了。。英文使用DejaVu，是因为最喜欢它的等宽字体，Consolas、Monaco、Bitstream等等好多等宽字体测试后，发现DejaVu的效果是最好的，1、l和0、o、O很容易区分（dejavu也是Bitstream出的他们很接近）。</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/666/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2009-04-08 21:00</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/665/</guid>
			<title>WinXP SP3 安装IE7的方法</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>默认的xp sp3安装的ie都是ie6，那么像我们这类搞web前端开发的就郁闷了，还要装IE7再装IEtester。但是系统为精简版的SP3可能会安装IE7失败，摸索很久才找到原因，不过这个方法很久之前就被我发现了，一直没时间打字～下面说下我的解决办法：</p>
<p>访问：Windows update：http://update.microsoft.com/Windowsupdate/v6/default.aspx?ln=en，安装Windows update ActiveX Control，之后它会提示重启系统。<br />
再安装IE7，问题就解决了。</p>
<p>我想原因就是系统精简了Windows update，而安装ie7首先需要这个功能所以导致安装失败。安装好ie7后再关闭Windows update即可。<br />
我用的是SP3英文版，中文版的解决办法也都是大同小异的了。</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/665/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2009-03-10 22:45</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/662/</guid>
			<title>fieldset 在ie 和 firefox 下的不同</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>最近用php做了一个留言板，用户发布留言的form就用到了fieldset，不过发现了一个问题，就是IE下面fieldset的margin-top和margin-bottom无效，当然margin横向是正常的。</p>
<p>比如css里：fieldset{margin:100px auto;}那么这个fieldset在FF（包括safari等浏览器）显示是上下100px、左右居中。而IE下就是左右居中，margin的上下无效。（当然这里的ie是IE6-IE8、页面带DOCTYPE声明）。</p>
<p>我的解决办法就是修改fieldset内legend的margin，或者fieldset外面加一个div，然后修改这个div的margin。</p>
<p>顺便，这个表单也被我拿来当作练习js了，深刻的体会到：学到的理论如果不用到实践上，那永远也不会有提升。</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/662/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2009-01-06 16:57</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/661/</guid>
			<title>删除重复内容行</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>由于要处理一个两万多行的数据，但要删除其中内容重复的行，所以找了几个方法：</p>
<p>1. 用<a href="http://sed.sourceforge.net/">sed</a>替换重复内容，使用命令 <span style="color:#FF6600;">-n &quot;G;s/\n/&amp;&amp;/;/^\(.*\n\).*\n\1/d; s/\n//;h;P&quot; &quot;$(FilePath)&quot;&nbsp;</span>（这里是在editplus里的使用，注意$(FilePath)必须是带路径的文件名）。当然sed不需依赖editplus，可以单独使用的。优点：删除重复内容后，顺序结构不变。缺点：不支持UTF-8，处理大文件时（2w多行）就<span>不行了。</span></p>
<p>2.使用editplus-工具-排序，勾选&quot;删除重复&quot;。可惜不想把内容排序，却被自动排序了。（勾选&quot;区分位置&quot;，好像没用？），这个效率相当快～<span>差不多是瞬间完成的</span>，之所以没放弃editplus，确实它的优点有很多。</p>
<p>3.使用一个批处理</p>
<p><code>
 @echo off<br />
:: 删除重复的行，但不能保留空行<br />
:: 对不符合变量命名规则、变量个数超过限制的文本都无法正确处理<br />
(echo 清除重复行后的文件内容：&amp; echo.)>str_.txt<br />
for /f &quot;delims=&quot; %%i in (testText.txt) do (<br />
&nbsp;   if not defined %%i set %%i=A &amp; echo %%i>>str_.txt)<br />
:: start str_.txt<br />
</code></p>
<p>当然也不支持utf8，效率也比较慢，处理2w多行用了1分多钟，不过排序没有改变:)。</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/661/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-12-30 20:32</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/660/</guid>
			<title>editplus 正则删除 多行注释</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>editplus的正则不能用于多行，这点比较郁闷。css里面的注释，有些内容都是多行的，而且还可能包含html语句，这样的情况editplus批量删除注释就不能用了。研究了一下，提供下我认为目前比较完美的方法：</p>
<p>editplus删除多行注释：/*......*/的方法：<br />
1、把全文中的&ldquo;\n&rdquo;全都替换成&ldquo;┓&rdquo;。<br />
2、把&ldquo;[&lt;|/]/&rdquo;替换成空。(删除注释里面的&ldquo;&lt;/&rdquo;、&ldquo;//&rdquo;类内容，注释里面带有&quot;/&quot;的话，第三步就查不到了)<br />
3、把&ldquo;/\*.[^/]*\*/&rdquo;替换成空。(不加[^/]，就会波及到非注释内容)<br />
4、把&quot;┓&quot;再替换成&quot;\n&quot;。</p>
<p>以上替换的时候都要勾上&ldquo;正则表达式&rdquo;。虽然步骤比较多，但是总算能实现替换多行了。<br />
&nbsp;</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/660/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-12-24 13:16</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/658/</guid>
			<title>editplus SVN 设置</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>SVN在团队开发的时候很强大。VS有VisualSVN插件，但是我不喜欢用VS。vim电脑上也有，虽然很多人说vim也很强大，不过我目前还是习惯editplus。也许以后会去适应vim吧。</p>
<p>1、首先这里有<a target="_blank" href="http://www.toplee.com/blog/615.html">一篇介绍</a>，edtiplus使用SlikSVN来实现update、commit。当然前提也是要安装TortoiseSVN的。</p>
<p>2、发现了一个更好的<a href="http://editplus.info/wiki/User_Tools#Subversion">介绍</a>，是deitplus wiki里面的介绍的方法。</p>
<p><span style="color: rgb(153, 51, 102);">说明：方法1使用的SlikSVN是命令行端，方法2使用的TortoiseProc.exe是GUI端。</span></p>
<p>下面我把方法二的实现方法稍微翻译一下：</p>
<h4>Subversion Commit</h4>
<p>说明：用TortoiseSVN校检文件并提交文件到服务器（当然，前提是你安装了TortoiseSVN）<br />
添加方法:编辑edtiplus 工具-用户工具-添加工具-程序<br />
菜单文本：SVN Commit<br />
命令: <tt>C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe</tt><br />
参数: <tt>/command:commit /path:&quot;$(FilePath)&quot; <span style="color: rgb(255, 102, 0);">/notempfile</span> /closeonend:0</tt><br />
初始目录: <tt>$(FileDir)</tt> Check: &quot;Capture output&quot;, &quot;Save open files&quot;<br />
勾上&quot;保存打开文件&quot;。可以不勾&quot;捕获输出&quot;，根据个人喜好吧，我是没勾。</p>
<p>说明：TortoiseSVN 使用临时文件在 shell 扩展和主程序之间传递多个参数，（低于1.5.0版，必须增加<tt>/notempfile参数，如果不这样做，</tt>该命令将无法正常工作，/path指定的文件将被删除。）<span style="color: rgb(255, 102, 0);">从 TortoiseSVN 1.5.0 开始，废弃/notempfile参数，不再需要增加此参数。</span></p>
<h4>Subversion Update, Delete, Rename, Checkout etc</h4>
<p>说明：SVN的更新、删除、重命名、校检等命令<br />
方法：只需要把上面的&quot;参数&quot;里的：<tt>/command:</tt><span style="color: rgb(255, 0, 0);"><tt>commit</tt></span><tt> </tt><tt>用下面的替换（例如：</tt><tt>/command:</tt><span style="color: rgb(255, 0, 0);"><tt>about</tt></span><tt>）</tt></p>
<p><code> :about 显示关于对话框<br />
:log 打开日志对话框<br />
:checkout 打开检出对话框<br />
:import 打开导入对话框<br />
:update 将工作副本的/path更新到HEAD，如果给定参数/rev，就会弹出一个对话框询问用户需要更新到哪个修订版本。为了避免指定修订版本号/rev:1234的对话框，需要加上/nonrecursive和/ignoreexternals参数（这2个参数我没加，还没遇到上述问题）<br />
:commit 打开提交对话框<br />
:add 将/path的文件添加到版本控制<br />
:revert 撤消一个文件自上次更新后的所有的变更<br />
:cleanup 递归清理工作拷贝，删除未完成的工作拷贝锁定<br />
:resolve 将/path指定文件的冲突标示为解决，如果加上/noquestion，将不会提示确认操作。<br />
:repocreate 在/path创建一个版本库<br />
:switch 切换至分枝/标记<br />
:export 将/path的工作副本导出到另一个目录<br />
:merge 打开合并对话框<br />
:mergeall 打开合并所有对话框<br />
:copy 复制工作副本至URL<br />
:settings 打开设置对话框<br />
:remove 从版本控制里移除/path中的文件<br />
:rename 重命名/path的文件<br />
:diff 启动TortoiseSVN设置的外置比较程序<br />
:help 打开帮助文件<br />
:relocate 打开重定位对话框<br />
:help 打开帮助文件<br />
:repobrowser 打开版本库浏览器对话框<br />
:ignore 将/path中的对象加入到忽略列表，仅对文件夹有效。<br />
:blame 打开文件的追溯对话框<br />
:createpatch 创建/path下的补丁文件。<br />
:revisiongraph 显示/path目录下的版本变化图。<br />
:lock 锁定一个文件，可以输入锁定的原因。<br />
:rebuildiconcache 重建windows的图标缓存，当系统图标缓存出了问题才需要这样做（会导致桌面的图标会重新排列）<br />
:properties 显示 /path 给出的路径之属性对话框。<br />
</code></p>
<p>更多的命令看：<a href="http://tortoisesvn.net/docs/release/TortoiseSVN_zh_CN/tsvn-automation.html#tsvn-automation-basics" target="_blank">tortoisesvn docs</a>吧</p>
<p>我只用了update、commit、add、revert、rename、remove、export、lock、unlock、resolve、checkout、blame、merge，后面几个都是不太常用的了。</p>
<p>另外在editplus wiki，还发现了一个不错的东西：<span style="color: rgb(0, 51, 102);">打开当前文件的文件夹</span>（使用svn的话，这个功能就很实用了）。方法，在用户工具里添加-程序：<br />
菜单文本：Current Location(当前文件的文件夹) <br />
命令：%systemroot%\explorer.exe /e,/root,\local disk, 参数：$(FileDir)<br />
初始目录：空着<br />
勾上：退出时关闭窗口、保存打开文件</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/658/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-12-17 12:27</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/656/</guid>
			<title>准备写个html 的 framework</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>现在好多css framework，准备写个 html 的 framework。<img alt="" src="/blog/include/editor/editor/images/smiley/46.gif" />当然每个人的习惯不同，写这个出来也是留给自己用。这个点子是昨天想到的，比如注册页、登录页面等大部分东西都是差不多的（这里是指html的结构方面），那么为何不写一个framework提高自己的效率呢。当然，这个html 的 framework也可以顺便为它写一个css样式，那么又多了一个css framework。应该会很爽吧～很期待自己写出来一个很牛的 html +css 的framework，兴奋ing。。</p>
<p>现在对.net还是不怎么喜欢。以前接触的都是php程序的模板，现在也接触到了.net的程序的模板制作，几个人用visualSVN，感觉很爽～不过.net里面，加ID就会被自动改名成xxx_ID，加class要写成CssClass，这点很让人讨厌。</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/656/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-12-05 13:15</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/browser_detector/</guid>
			<title>用css 写的一个浏览器检测</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>这个用css hacks 判断浏览器大概是上个月写的，其中的hacks基本涵盖了大部分浏览器，本页面经过测试的浏览器：IE5.0、IE5.5、IE6、 IE7、IE8（beta1&amp;beta2）、Opera 9.5, Firefox 3, Safari4、K-Meleon、Google Chrome。&nbsp;其实用css判断浏览器是没有什么意义的，其主要意义就在于css hack在多浏览器下的使用，及如何用更少的css代码来实现各种主流浏览器的兼容。这个页面里的css hacks基本上囊括了ie系列（ie5.0-IE8）的csshack，同时也加入了不太常用的针对Opera和Safari的css hacks。</p>
<p>演示可以见：<a href="http://www.fantxi.com/blog/demo/html/browser_detector.html">http://www.fantxi.com/blog/demo/html/browser_detector.html</a></p>
<p>在css hacks方面，我觉得最好不要用!important来提升指定样式的优先权，我不喜欢这它，因为如果使用它的话，你可能会发现写出的css代码相对较多。当然也不是完全不用它，目的只是当我们加入hacks时，是否要考虑一下如何才能使css的代码更精简？顺便也应该想到，当我们写XHTML代码时，是否考虑某处用div合适，还是ul合适，或者是dl合适？当我们写javascript的时候呢，是否也可以使用最少的代码来实现某一效果？有些人只是写出了div、css代码就很自豪的说自己已经会div、css了，当我问他浏览器兼容和HTML标签语义化时，他却说不出。其实有很多地方值得我们去研究，上次帮公司做的网页，css和js代码基本都被我压缩的不能再压缩了，先手工压缩再机器压缩，很爽很爽:)， 不过他们说我变态～。其实这样网站的效率才能达到最高。</p>
<p>我的做法就是在做网页时，应该以firefox来作为参照，然后再在ie和其他浏览器下测试，这样写出的css代码可能会是最少的。还有就是善用display:inline来解决ie下margin加倍，善用clear:both，有时也可以这样：&lt;!--[if IE]&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;ie.css&quot; /&gt;&lt;![endif]--&gt;，给IE单独做一个css。因为之前做的是门户级的网站，写了很多页面，从中也学到了很多新知识，一时想不起来了，有时间再整理出来。还有只要结构写的好,不需要hack大部分也都能兼容。能不用hack就不用。</p>]]></description>
			<link>http://www.fantxi.com/blog/browser_detector/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-11-09 14:50</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/652/</guid>
			<title>最近，最近，最近</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>以前是工作太忙了，还加了很多次班，根本没时间管理blog，导致blog都快长草了～最近，属于自己的时间多了，本来想好好玩玩，好好休息休息，但发现这几天仍然比较忙，还是有很多事情做。</p>
<p>前两天把fantxi的域名续费了，把fantxi.com的首页代码又重写了一遍。其实很有冲动做个sablog2.0的模板，不过这件事的优先级可能是最低的。。</p>
<p>最近面临一个选择，这个选择也许会对自己的人生产生重大影响，希望自己多用些心思在这方面。</p>
<p>最近粗略看了一些用户体验、网站运营方面的资料，受益不少，对那些作者表示感谢。</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/652/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-11-08 04:02</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/650/</guid>
			<title>又发现了点css hack的写法</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>&nbsp;之前在这里：<a href="http://www.fantxi.com/blog/archives/534">http://www.fantxi.com/blog/archives/534</a>总结了一次，这次加上点。</p>
<div class="codeText">
<div class="codeHead">CSS代码</div>
<ol class="dp-css">
    <li class="alt"><span><span>这个是基本大家都知道的： &nbsp;&nbsp;</span></span></li>
    <li><span>test{</span><span class="keyword">margin</span><span>:</span><span class="string">1px</span><span>!</span><span class="keyword">important</span><span>;</span><span class="keyword">margin</span><span>:</span><span class="string">2px</span><span>} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>firefox/IE7&nbsp;-&gt;&nbsp;</span><span class="string">1px</span><span>&nbsp;&nbsp;</span></li>
    <li><span>IE6&nbsp;-&gt;&nbsp;</span><span class="string">2px</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li><span>下面两个是新发现的(这里不考虑IE5了，最值得看的就是第三个)： &nbsp;&nbsp;</span></li>
    <li class="alt"><span>test{</span><span class="keyword">margin</span><span>:</span><span class="string">1px</span><span>;+</span><span class="keyword">margin</span><span>:</span><span class="string">2px</span><span>} &nbsp;&nbsp;</span></li>
    <li><span>firefox&nbsp;-&gt;</span><span class="string">1px</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>IE6/IE7&nbsp;-&gt;</span><span class="string">2px</span><span>&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>test{</span><span class="keyword">margin</span><span>:</span><span class="string">4px</span><span>!</span><span class="keyword">important</span><span>;&gt;</span><span class="keyword">margin</span><span>:</span><span class="string">3px</span><span>!</span><span class="keyword">important</span><span>;</span><span class="keyword">margin</span><span>:</span><span class="string">2px</span><span>;} &nbsp;&nbsp;</span></li>
    <li><span>firefox&nbsp;-&gt;&nbsp;</span><span class="string">4px</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>IE7&nbsp;-&gt;&nbsp;</span><span class="string">3px</span><span>&nbsp;&nbsp;</span></li>
    <li><span>IE6&nbsp;-&gt;&nbsp;</span><span class="string">2px</span><span>&nbsp;&nbsp;</span></li>
</ol>
</div>]]></description>
			<link>http://www.fantxi.com/blog/archives/650/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-07-18 12:34</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/644/</guid>
			<title>译文：开发人员经常犯的8个设计错误</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>计师在抱怨开发人员不尊重Web标准，后台开发人员在抱怨为什么不可以增加一个空格。PM在抱怨为什么项目总是因为那些看似简单的问题而延期&hellip;&hellip;如何才能提高后台开发人员与设计师以及前端开发工程师的合作效率？相信很多网站或软件开发公司都越到类似的问题。</p>
<p>从UED的角度而言，我们的天职是追求用户体验。我们应该尽力坚持自己应该坚持的东西。白鸦曾经说过，用户体验不只是UED的事情，而是整个开发团队乃至整个公司需要参与的事情。</p>
<p>我们不能只是抱怨，我们去理解开发人员。同样，我们做出努力，让开发人员去理解我们。</p>
<p>我们努力去先做出改变。（小马按语）</p>
<p>原文地址： 8 Web Design Mistakes That Developers Make</p>
<p>一个优秀的网站是优秀的设计和优秀的代码的结合，你经常发现设计师不得不去理解代码，而开发人员尝试自己去设计。 开发人员花费大学生涯和与其他开发人员一起学习，我可以肯定的说程序员并不是设计师。谢天谢地，我们以前可以评判代码是否重用或者符合正确的OO方法论，但却无法评判美学。 但现在，一个开发人员最值钱的资产就是他对设计的敏锐的理解。</p>
<p>现在据我所知，程序员可能从不需要任何设计的知识（或者说，设计师从不需要了解程序）。但事实是，每一个拥有个人项目、少量客户或是管理角色的程序员都需要设计。甚至，我可以说，显而易见，一个自由工作者最大优势就在于，培养潜在的客户让他们渴望理解整个网站的建构过程。所以一个人正在学习做一个开发人员的同时，也需要学设计（至少尝试去做），以下就是我曾经听说或者犯过的8个错误。</p>
<p>&ldquo;我知道什么看起来很好（我有photoshop）&rdquo;</p>
<p>这是成为差劲的设计师的原因之一。更无可救药的是本来就很差劲了，还以为自己很好。每个好的设计师都有一个度量好设计的&ldquo;设计标准&rdquo;，这个经验来自于自己经常看好的设计。你需要把时间花费在看伟大的设计上，诸如TheFWA, FaveUp, Design is Kinky, 和我个人喜欢的 Behance Network 这些网站。你可能也知道如何去挑选设计杂志，比如How或者print（注意两者并不都是美国的，可能更加国际化一些）。就像好的程序员喜欢看（或评论）其他人的代码一样，好的设计师也总是环顾他人的工作成果，无论是站点、广告牌还是菜单。没有一个好的&ldquo;设计标准&rdquo;，即使有大量的photoshop滤镜也拯救不了你。</p>
<p>&ldquo;一再地使用蓝色和白色&rdquo;</p>
<p>大多数程序员嘲笑一个设计师总是花费大量的时间来为站点挑选精确的颜色。但是，颜色总要比你想象中还重要，并且你不能在站点构建的时候来更改（至少，那时候就不得不花费大的气力）。象很多事物一样，观察一个好的设计师的配色方案是很有帮助的，寻找配色方案最好的一个站点是COLOURlovers.</p>
<p>&ldquo;我把每样东西都居中&rdquo;</p>
<p>大多数情况下，将标题、标语和副本的一部分居中很自然。但是通常，将网页上的文字居中就很外行了。左对齐是很保险的做法，但往往最好是视情况而定。更好地是，在photoshop中利用标尺和网格精确地计算你网站的各个部分。这并不意味着你的设计像格子一样，但是眼睛可以注意到理应被排成一行的几部分却没有这样排列的情况（特别是文本）。每个像素都很重要。</p>
<p>&ldquo;使用免费的字体&hellip;它对于我来说看起来不错&rdquo;</p>
<p>我曾有一段时间这样想：（a）所有的衬线字看起来都一样（b）没有任何字体值得付钱。我现在把这两条都废除了，去继续学习更多的字体知识，那是一个复杂而美丽的世界。坦诚地讲，如果有一个领域我能成为专家，我希望是字体。你可以只用一点颜色和不错的字体来建立伟大的站点（这只是任何伟大设计的基础）。再次申明，在字体方面要做得更好，需要你多阅读好的站点培养你的眼睛。</p>
<p>&ldquo;我们可以在那里放置更多的信息&rdquo;</p>
<p>在拥有程序员和设计师的团队里工作，两者间一个普遍的争论是&ldquo;空间的利用&rdquo;，程序员想在页面明显的位置放置尽可能多的信息。设计师争论道，眼睛不可能承受如此多的东西，最好只是在明显的位置只放置logo和标语。尝试去找到最佳的平衡，需要知道（a）杂乱的网站可能没有效果（b）留白不是懒惰的设计师在倒退 （c）被称作&ldquo;空&rdquo;的部分是很必要的，以便突出其它元素。</p>
<p>&ldquo;我可不想为照片付钱&rdquo;</p>
<p>槽糕的图片或照片可以毁灭一个合理的网站，同时经过简单处理的伟大图片可以看起来很好。在网页上那么多的资源，没有理由使用差劲的图片。对于非营利站点而言，可以查看stock.xchng 或 Flickr。对于商业的站点，有许许多多的站点，比如iStockPhoto（但是需要了解版权的知识，因为不久后，你可能在其他站点上看到同样的照片了）。最后不要为在诸如Veer这样的站点上找到完美的照片而花费大笔的钱吓坏了。</p>
<p>&ldquo;我无需询问意见&rdquo;</p>
<p>更多地询问而不是闭门造车，你会成为你们设计师的最大粉丝（尽管你戴着一副玫瑰色的眼镜）。你需要询问你认识的设计师，以便得到坦诚的评价。不幸的是，我知道大多数被我问过的人，都只是赞誉而非批评。所以让你的自尊滚一边去吧，戴上&ldquo;知识&rdquo;这顶帽子。因为这些人是设计师而你不是。然后在你得到了他们的反馈之后，尊重他们、信任他们，并做一些改变。</p>
<p>&ldquo;无需得到太多细节&rdquo;</p>
<p>就像你很一般的代码需要等待提高（虽然仍能执行），你也有一些还说的过去的设计，但是离伟大差得远呢。看伟大的设计很容易这样想&ldquo;这看起来没什么嘛&rdquo;，但是事实上，伟大的设计花费了很多的时间（特别是对设计的新手）。但是有这些伟大的设计，你只是看到了最终的产品，并不知道设计者期间经历了多少次编辑和修改。甚至，你可能会惊讶于一条分割线会为设计带来多大的不同。当你把所有元素刚放在一起的时候，别以为设计做&ldquo;完&rdquo;了。</p>
<p>总而言之，伟大的设计（就像伟大的代码）很耗时间、耐心和技巧&mdash;&mdash;因此，应该得到适当的尊重。尽管作为程序员（或者是内容编辑还是其他的web员工），你可能从不需要设计整个一个站点，但我有一种感觉，或多或少，你不得不做一点设计。如果可能的话，你尽量不要犯以上的错误&hellip;&hellip;</p>
<p>文章来源: http://ued.taobao.com/blog/2008/02/01/8-web-design-mistakes-that-developers-make/</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/644/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-04-28 18:26</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/642/</guid>
			<title>js 解决两列、三栏div等高(自适应高度)</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <div class="codeText">
<div class="codeHead">JavaScript代码</div>
<ol class="dp-c">
    <li class="alt"><span><span>&lt;script&nbsp;type=</span><span class="string">&quot;text/javascript&quot;</span><span>&gt;&nbsp; &nbsp;&nbsp;</span></span></li>
    <li><span>&lt;!--&nbsp; &nbsp;&nbsp;</span></li>
    <li class="alt"><span class="keyword">var</span><span>&nbsp;l=document.getElementById(</span><span class="string">&quot;left&quot;</span><span>).scrollHeight; &nbsp;&nbsp;</span></li>
    <li><span class="keyword">var</span><span>&nbsp;r=document.getElementById(</span><span class="string">&quot;right&quot;</span><span>).scrollHeight &nbsp;&nbsp;</span></li>
    <li class="alt"><span class="keyword">if</span><span>&nbsp;(r&gt;l) &nbsp;&nbsp;</span></li>
    <li><span>{ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>document.getElementById(</span><span class="string">&quot;left&quot;</span><span>).style.height=document.getElementById(</span><span class="string">&quot;right&quot;</span><span>).scrollHeight+</span><span class="string">&quot;px&quot;</span><span>; &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>} &nbsp;&nbsp;</span></li>
    <li><span class="keyword">else</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>{ &nbsp;&nbsp;</span></li>
    <li><span>document.getElementById(</span><span class="string">&quot;right&quot;</span><span>).style.height=document.getElementById(</span><span class="string">&quot;left&quot;</span><span>).scrollHeight+</span><span class="string">&quot;px&quot;</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>} &nbsp;&nbsp;</span></li>
    <li><span>--&gt;&nbsp; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&lt;/script&gt; &nbsp;&nbsp;</span></li>
</ol>
</div>
<p>网上的div等高方法大致有五种，这个算是其中一种的完善，无论left或是right高时，都可以实现自适应高度。而且就算遇到left或right里面有其他元素影响时，也可以通过在<strong><font color="#ff9900">+<span class="string">&quot;px&quot;</span></font></strong><span><strong><font color="#ff9900">;</font></strong>&nbsp;前面加上加减乘除来达到满意的效果，例,可写成：+5+&quot;px&quot;。</span></p>
<p>
<p>下面是三栏等高：</p>
<pre><ol class="dp-c"><li class="alt"><span><span>&lt;script&nbsp;language=</span><span class="string">&quot;javascript&quot;</span><span>&gt;&nbsp;</span></span></li><li><span><span class="keyword">var</span><span>&nbsp;l=document.getElementById(</span><span class="string">&quot;left&quot;</span><span>).scrollHeight&nbsp;</span></span></li><li class="alt"><span><span class="keyword">var</span><span>&nbsp;m=document.getElementById(</span><span class="string">&quot;middle&quot;</span><span>).scrollHeight&nbsp;</span></span></li><li><span><span class="keyword">var</span><span>&nbsp;r=document.getElementById(</span><span class="string">&quot;right&quot;</span><span>).scrollHeight&nbsp;</span></span></li><li class="alt"><span>layoutHeight=Math.max(l,m,r)&nbsp;</span></li><li><span>document.getElementById(<span class="string">&quot;left&quot;</span><span>).style.height=layoutHeight+</span><span class="string">&quot;px&quot;</span><span>&nbsp;</span></span></li><li class="alt"><span>document.getElementById(<span class="string">&quot;right&quot;</span><span>).style.height=layoutHeight+</span><span class="string">&quot;px&quot;</span><span>&nbsp;</span></span></li><li><span>document.getElementById(<span class="string">&quot;middle&quot;</span><span>).style.height=layoutHeight+</span><span class="string">&quot;px&quot;</span><span>&nbsp;</span></span></li><li class="alt"><span>&lt;/script&gt;&nbsp;</span></li></ol></pre>
</p>
<p>&nbsp;</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/642/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-04-20 01:08</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/638/</guid>
			<title>240多个jQuery插件</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>jQuery 是继 prototype 之后又一个优秀的 Javascript 框架。其宗旨是&mdash;写更少的代码,做更多的事情。它是轻量级的 js 库(压缩后只有21k) ，这是其它的 js 库所不及 的，它兼容 CSS3，还兼容各种浏览器（IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+）。 jQuery 是一个快速的，简洁的 javaScript 库，使用户能更方便地处理 HTML documents、events、实现动画效果，并且方便地为网站提供 AJAX 交互。 jQuery 还有一个比较大的优势是，它的文档说明很全，而且各种应用也说得很详细，同时还有许多成熟的插件可供选择。 jQuery 能够使用户的 html 页保持代码和 html 内容分离，也就是说，不用再在 html 里面插入一堆js来调用命令了，只需定义 id 即可。</p><br /><br /><a href="http://www.fantxi.com/blog/archives/638/" target="_blank">阅读全文</a><br /><br />]]></description>
			<link>http://www.fantxi.com/blog/archives/638/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-03-20 16:22</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/637/</guid>
			<title>使你的网站设计更加科学的23条</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>科学设计你的网站网页:来自 <a target="_blank" href="http://www.virtualhosting.com/blog/2007/scientific-web-design-23-actionable-lessons-from-eye-tracking-studies/">Eye-Tracking研究的23节必修课</a>&nbsp;&mdash;&mdash;Christina Laun</p>
<p>在网络设计领域关于Eye-Tracking的研究十分火爆，但是如何把这些研究结果转变为具体可行的设计来运作依旧是个难点。以下就是一些来自于Eye-Tracking研究结果的窍门，可以为改进你的网站设计提供些意见：</p>
<p><strong>1.对比图像，文字更具吸引力</strong></p>
<p>与你所认为的相反，在浏览一个网站的时候，能够直接吸引用户目光的并不是图像。大多数通过偶然点击进入你的网站的用户，他们是来寻觅信息的而不是图像。因此，保证你的网站设计凸现出最重要的信息板块，这才是设计的首要原则。</p>
<p><strong>2.眼球的第一运动聚焦于网页的左上角</strong></p>
<p>用户浏览网页的这一习惯应该在意料之中，毕竟左上部为主要操作中心这一点为大多数重要的计算机应用程序的设计所采用。在你构建网站考虑网站设计时，应该尽量保持这一格式。要知道，如果你希望保持个人特色，搭建一个成功的网站，你就必须尊重用户们的习惯。</p>
<p><strong>3.用户浏览网页时，首先观察网页的左上部和上层部分，之后再往下阅读，浏览右边的内容</strong></p>
<p>用户普遍的浏览方式呈现出<a target="_blank" href="http://www.useit.com/alertbox/reading_pattern.html">&ldquo;F&rdquo;的形状</a> 。保证网站内容的重要要素集中于这些关键区域，以此确保读者的参与。在此放置头条，副题，热点以及重要文章，这样可以吸引到读者进行阅读。</p>
<p><strong>4.读者会忽视横幅广告</strong></p>
<p>研究表明，读者常忽视大部分的横幅广告&mdash;&mdash;尽管你以此维持网站生计&mdash;&mdash;视线往往只停留几分之一秒。如果你想通过广告挣钱，那么必须创新你的广告位以及合理配置网站广告形式。</p>
<p><strong>5.花哨的字体和格式被忽视</strong></p>
<p>为什么呢？那是因为用户会认为这些是广告，并非他们所需要的信息。事实上，研究表明用户很难在充满大量颜色的花哨字体格式里寻找到所需的信息，因为视觉线索告诉他们把这些忽略吧。保持网站的清爽，不要因为华而不实的表面，让重要的信息被忽略。</p>
<p><strong>6.用数词来代替数字</strong></p>
<p>如果使用数词取代数字的罗列，读者会发现在你的网站可以很容易地发现真实的资料。要知道，你是写给那些将第一次浏览你的网站的读者，所以，让他们容易发现他们所需的信息，让他们感兴趣。</p>
<p><strong>7.字体大小影响浏览行为</strong></p>
<p>想改变人们对你的网页的看法吗？改变网页字体的大小。大的字体刺激浏览，而小一些的字体则提高焦点阅读量。根据你的需要，合理配置两者的比例。</p>
<p><strong>8.遇到感兴趣的内容，用户仅会多看一眼副标题</strong></p>
<p>不要过分坚持副标题固定的格式&mdash;&mdash;保证他们的相关性和兴趣。你也可以让副标题包含关键词，这样可以有效利用搜索引擎，让它带来读者。</p>
<p><strong>9.人们大都只浏览网页的小部分内容</strong></p>
<p>如果在用户浏览的时候提供信息使他们尽快锁定目标，就可以把这一点发展成为你的优势。突出某些部分或者创建项目列表使网页信息容易找到和阅读。</p>
<p><strong>10.简短的段落相对于长段落来说有更好的表现力</strong></p>
<p>网页信息是为大多数强调快速浏览的无联网用户提供的。除非上下文的衔接要求，保持信息由简短的段落和句式组成，例如 <a target="_blank" href="http://www.virtualhosting.com/blog/e-commerce-virtual-web-hosting-top-10-providers">这个电子商务网站</a> 的产品介绍。</p>
<p><strong>11.根据视觉锁定，一栏格式比多栏格式拥有更好的表现力</strong></p>
<p>别让过多的信息把网站来访者淹没。大多数情况下，简洁更具力量。多栏内容容易被用户忽视，我们需要消除这些干扰。</p>
<p><strong>12.网页顶部和左边的广告更能吸引眼球</strong></p>
<p>如需要在网站植入广告，试图使他们融入网页的左上部，这样他们才能吸引到最大的视觉注意力。当然，用户仅仅会注意到这些广告，这并不意味着他们会用鼠标点击。所以不要为了提高广告的注意力而牺牲原有的网站设计。</p>
<p><strong>13.将广告放置与最佳内容一旁也可以提升注意力</strong></p>
<p>如果想要提升广告的可视性和点击率，可以将其设置于最能引起人兴趣的内容一旁，整合进网页的设计里。这样，用户既可以找到所需的内容，你也能提升广告的效益。</p>
<p><strong>14.在各种测试中，人们阅读文字广告最为专心。</strong></p>
<p>正如上面提到的，一般的互联网用户不会花费太多时间用于查看那些一眼就能看出是广告的内容。这就是文字广告表现出众的原因。他们并没有分散注意力，而是与网页的其它部分内容融为一体，这让他们减少了对读者的视觉刺激，也使这一广告形式获得成功的阅读率。</p>
<p><strong>15.越大的图像吸引越多的注意力</strong></p>
<p>如果要在网页中使用图片，那越大越好。人们更倾向于查看那些能够清楚地看到细节和获取信息的图像。要保证你所用的图片与文章内容相关，否则它更容易被忽视。大多数读者都拥有高速的连接速度，所以请放心在你的网站上使用那些较大体积的图片。</p>
<p><strong>16.干净、清晰的特写图片能吸引更多的视觉注意</strong></p>
<p>可能那些抽象的艺术图片会让你的网站看起来很有味道，但是他们并不会吸引多少读者的注意力。如果你需要使用到这些图片，请确保所用图片的清晰以及其表达内容的简单可读性。必须注意的是，那些与真实的&ldquo;人&rdquo;相关的图片比所谓的模特图片更为&ldquo;优秀&rdquo;。</p>
<p><strong>17.标题能吸引眼球</strong></p>
<p>浏览网页时，读者能发现的第一内容是标题。确保网页的所有相关链接畅通和有效，以让读者顺利的通过网站进一步搜索。</p>
<p><strong>18.用户花费大量时间察看按钮和菜单</strong></p>
<p>所以，你需要花费额外的时间维护你的精心设计。毕竟，他们不仅吸引了读者的眼球，更是网站设计的重要组成要素。</p>
<p><strong>19.表单格式可以延长读者的注意时间</strong></p>
<p>分解内容和段落，大量使用表单形式来表现你的文章，可以保证读者的浏览率。使用数字和其它标记符号来突出文章的重要内容，会让网站更容易浏览，用户更快的找到所需的信息。</p>
<p><strong>20.避免呈现大块的文本</strong></p>
<p>研究显示，一般的网络浏览者不会花费时间去阅读大块的文本，无论他们有多重要或写得多好。因此，必须把这些大文本分解为若干小段落。突出重要的地方，放置点击的按钮也可以提高用户的注意力。</p>
<p><strong>21.格式可以吸引注意力</strong></p>
<p>在文中使用粗体、大写、彩体、下划线可以帮助用户获取正文所表达的最主要的信息。使用时需要谨慎，因为过多的使用会使你的网页难以阅读，把读者吓跑。</p>
<p><strong>22.利用好空白</strong></p>
<p>尽管把网页的每寸空间都填满这个想法十分诱人，但事实上让网站留出部分剩余更为不错。网站的过量信息会把用户淹没，同时他们也会忘记所提供的大部分的内容。所以保持网页的简洁，给读者预留出一些视觉空间来供读者休息。</p>
<p><strong>23.放置于网页顶部，导航工具的作用将更好的发挥</strong></p>
<p>理想情况下，你不会满足于当读者打开你的网站时仅浏览初始页，而是希望他们浏览翻阅，察看其它感兴趣的内容。将导航器置于网页顶部，就可以让用户通过使用这个工具轻松的找到所需的目标内容。</p>]]></description>
			<link>http://www.fantxi.com/blog/archives/637/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2008-03-19 23:23</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/622/</guid>
			<title>符合标准的带关闭的对联广告</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>这东西虽然自己不喜欢，可还是有用得着的时候。</p><br /><br /><a href="http://www.fantxi.com/blog/archives/622/" target="_blank">阅读全文</a><br /><br />]]></description>
			<link>http://www.fantxi.com/blog/archives/622/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2007-12-19 16:49</pubDate>
		</item>
		<item>
			<guid>http://www.fantxi.com/blog/archives/619/</guid>
			<title>常用正则</title>
			<author>kairyou</author>
			<description><![CDATA[Kairyou's Blog ( http://www.fantxi.com/blog/ ) : <p>匹配中文字符的正则表达式：<font color="#008080"> [\u4e00-\u9fa5]</font><br />
匹配双字节字符(包括汉字在内)：<font color="#008080"> [^\x00-\xff] </font><br />
应用：计算字符串的长度（一个双字节字符长度计2，ASCII字符计1）<br />
<font color="#008080">String.prototype.len=function(){return this.replace([^\x00-\xff]/g,&quot;aa&quot;).length;}</font><br />
匹配空行的正则表达式： <font color="#008080">\n[\s| ]*\r </font><br />
匹配HTML标记的正则表达式： <font color="#008080">/&lt;(.*)&gt;.*&lt;\/&gt;|&lt;(.*) \/&gt;/ </font><br />
匹配首尾空格的正则表达式：<font color="#008080"> (^\s*)|(\s*$) </font><br />
应用：javascript中没有像vbscript那样的trim函数，我们就可以利用这个表达式来实现，如下：<br />
<font color="#008080">String.prototype.trim = function() { <br />
return this.replace(/(^\s*)|(\s*$)/g, &quot;&quot;); <br />
}</font><br />
利用正则表达式分解和转换IP地址：<br />
下面是利用正则表达式匹配IP地址，并将IP地址转换成对应数值的javascript程序：<br />
<font color="#008080">function IP2V(ip) { <br />
re=/(\d )\.(\d )\.(\d )\.(\d )/g //匹配IP地址的正则表达式 <br />
if(re.test(ip)) { <br />
return RegExp.*Math.pow(255,3)) RegExp.*Math.pow(255,2)) RegExp.*255 RegExp.*1<br />
} <br />
else { <br />
throw new Error(&quot;Not a valid IP address!&quot;) <br />
}<br />
}</font><br />
不过上面的程序如果不用正则表达式，而直接用split函数来分解可能更简单，程序如下：<br />
<font color="#008080">var ip=&quot;10.100.20.168&quot; <br />
ip=ip.split(&quot;.&quot;) <br />
alert(&quot;IP值是：&quot; (ip[0]*255*255*255 ip[1]*255*255 ip[2]*255 ip[3]*1))</font><br />
匹配Email地址的正则表达式： <font color="#008080">\w ([- .]\w )*@\w ([-.]\w )*\.\w ([-.]\w )* </font><br />
匹配网址URL的正则表达式：<font color="#008080"> http://([\w-] \.) [\w-] (/[\w- ./?%&amp;=]*)?</font><br />
利用正则表达式去除字串中重复的字符的算法程序：<br />
<font color="#008080">var s=&quot;abacabefgeeii&quot;<br />
var s1=s.replace(/(.).*/g,&quot;&quot;) <br />
var re=new RegExp(&quot;[&quot; s1 &quot;]&quot;,&quot;g&quot;) <br />
var s2=s.replace(re,&quot;&quot;) <br />
alert(s1 s2) //结果为：abcefgi</font><br />
用正则表达式从URL地址中提取文件名的javascript程序，如下结果为page1<br />
<font color="#008080">s=&quot;http://www.9499.net/page1.htm&quot; <br />
s=s.replace(/(.*\/)([^\.] ).*/ig,&quot;&quot;) <br />
alert(s)</font><br />
利用正则表达式限制网页表单里的文本框输入内容：<br />
用正则表达式限制只能输入中文：<br />
<font color="#008080">onkeyup=&quot;value=value.replace(/[^\u4E00-\u9FA5]/g,'')&quot; onbeforepaste=&quot;clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))&quot;</font><br />
用正则表达式限制只能输入全角字符：<br />
<font color="#008080">onkeyup=&quot;value=value.replace(/[^\uFF00-\uFFFF]/g,'')&quot; onbeforepaste=&quot;clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))&quot;</font><br />
用正则表达式限制只能输入数字：<br />
<font color="#008080">onkeyup=&quot;value=value.replace(/[^\d]/g,'') &quot;onbeforepaste=&quot;clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))&quot;</font><br />
用正则表达式限制只能输入数字和英文：<br />
<font color="#008080">onkeyup=&quot;value=value.replace(/[\W]/g,'') &quot;onbeforepaste=&quot;clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))&quot;</font></p>]]></description>
			<link>http://www.fantxi.com/blog/archives/619/</link>
			<category domain="http://www.fantxi.com/blog/category/1/">WebDev</category>
			<pubDate>2007-12-16 18:13</pubDate>
		</item>
	</channel>
</rss>
