<?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>CSSASS &#187; 一己之见</title>
	<atom:link href="http://www.cssass.com/blog/index.php/category/viewpoint/feed" rel="self" type="application/rss+xml" />
	<link>http://www.cssass.com/blog</link>
	<description>三人行必有我师焉，择其善者而从之，其不善者而改之</description>
	<lastBuildDate>Wed, 01 Feb 2012 03:48:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>通灵谬言，未满25岁者必看。教训啊</title>
		<link>http://www.cssass.com/blog/index.php/2010/591.html</link>
		<comments>http://www.cssass.com/blog/index.php/2010/591.html#comments</comments>
		<pubDate>Fri, 08 Jan 2010 06:25:30 +0000</pubDate>
		<dc:creator>ONEBOYS</dc:creator>
				<category><![CDATA[一己之见]]></category>
		<category><![CDATA[joke]]></category>
		<category><![CDATA[历史]]></category>

		<guid isPermaLink="false">http://www.cssass.com/blog/?p=591</guid>
		<description><![CDATA[    余年已二十有五，逾月即将本命之年。所叹者红颜未得，知己难求，东隅已逝，宏图空有。
   近日得闻“《资治通鉴.梁纪》（第二十卷）有记——‘凤历五年，时洛隐者为帝卜之，曰逾二十五年未房者通灵’”。初想以身试法，一探通灵之境。然查阅《资治通鉴》，竟现谬误有三：
   一谬于《资治通鉴》卷二十实为《汉纪》，卷一四五至卷一六零乃为《梁纪》，而凤历年只记于《后梁纪》卷二六八，前后梁全无干系。以谬加谬，盖为始作俑者故意为之。
   二谬于凤历始于癸酉年（913年）正月甲子，废于当年二月庚寅。废立之间不足两月，“凤历五年”何从谈起？
   三谬于郢王朱友圭杀父篡位之辈，荒淫无能之徒，根基不固，乾坤难控，篡居帝位未有一年即告覆灭，身死名废，被贬庶人。因而后史记之皆呼“郢王”，而不称之为“帝”。“为帝卜之”实乃大谬。
   其实伪作史料者，应深知后梁历史，比如凤历之年，梁国都确在洛阳，“洛隐者为帝卜之”并不违地域常理。其他谬言，当其故意为之，一来令甄别者扑朔难查，二来盖其不敢篡改历史，故设之以馄饨虚空之年代人物，然后编造以事件。
  网络之内信息庞杂，真假共存。吾人当自有判断，绝不可轻信谬论，倘若贻误终身，悔之晚矣。

尽管我觉得吧，通灵王魔法使之类的东西肯定是假的，但网球王子里海棠熏的snake回球，修炼的好的话，绝对是能打出来的。


No related posts. From:


No related posts. From:<a href=\]]></description>
			<content:encoded><![CDATA[<p>    余年已二十有五，逾月即将本命之年。所叹者红颜未得，知己难求，东隅已逝，宏图空有。</p>
<p>   近日得闻“《资治通鉴.梁纪》（第二十卷）有记——‘凤历五年，时洛隐者为帝卜之，曰逾二十五年未房者通灵’”。初想以身试法，一探通灵之境。然查阅《资治通鉴》，竟现谬误有三：</p>
<p>   一谬于《资治通鉴》卷二十实为《汉纪》，卷一四五至卷一六零乃为《梁纪》，而凤历年只记于《后梁纪》卷二六八，前后梁全无干系。以谬加谬，盖为始作俑者故意为之。</p>
<p>   二谬于凤历始于癸酉年（913年）正月甲子，废于当年二月庚寅。废立之间不足两月，“凤历五年”何从谈起？</p>
<p>   三谬于郢王朱友圭杀父篡位之辈，荒淫无能之徒，根基不固，乾坤难控，篡居帝位未有一年即告覆灭，身死名废，被贬庶人。因而后史记之皆呼“郢王”，而不称之为“帝”。“为帝卜之”实乃大谬。</p>
<p>   其实伪作史料者，应深知后梁历史，比如凤历之年，梁国都确在洛阳，“洛隐者为帝卜之”并不违地域常理。其他谬言，当其故意为之，一来令甄别者扑朔难查，二来盖其不敢篡改历史，故设之以馄饨虚空之年代人物，然后编造以事件。</p>
<p>  网络之内信息庞杂，真假共存。吾人当自有判断，绝不可轻信谬论，倘若贻误终身，悔之晚矣。</p>
<p><img src="http://www.b6t6.com/Article/upload/200803/080313082034151.jpg" /><br />
尽管我觉得吧，通灵王魔法使之类的东西肯定是假的，但网球王子里海棠熏的snake回球，修炼的好的话，绝对是能打出来的。</p>


<p>No related posts. From:<a href=\]]></content:encoded>
			<wfw:commentRss>http://www.cssass.com/blog/index.php/2010/591.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>搭建pligg的注意事项和几个程序修改</title>
		<link>http://www.cssass.com/blog/index.php/2009/274.html</link>
		<comments>http://www.cssass.com/blog/index.php/2009/274.html#comments</comments>
		<pubDate>Tue, 28 Apr 2009 04:32:24 +0000</pubDate>
		<dc:creator>ONEBOYS</dc:creator>
				<category><![CDATA[一己之见]]></category>
		<category><![CDATA[digg]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[正则]]></category>

		<guid isPermaLink="false">http://www.cssass.com/blog/?p=274</guid>
		<description><![CDATA[ &#160;  &#160;  &#160;  新弄了一个digg类站：cssass的分享
 &#160;  &#160;  &#160; digg类程序以前有玩过国产的wodig，那是在其第三季的时候，那时bug很多，自己还给官方贡献过几个bug修改方法呢。弄了一段时间后，就被遗弃了。
 &#160;  &#160;  &#160; 事隔一年有余，又想起digg类程序的好处来：聚合，分享，内容为王，民主推荐。
   这回则找了几个国外程序来玩。首先是找了PHPDug，这个在一年前是和wodig做过对比选择的，当时还是0.7版，这个程序功能很简单，就是这个原因当时就选择了wodig，同样因为这个原因现在我拿他做首选。可惜，安装在服务器上却无法工作。（所谓的服务器，只虚拟主机耳。相信是主机系统之过也。）
 &#160;  &#160;  &#160; 首选遭毙，第二选乃是据说有“digg类中的wordpress”之称的pligg。
 &#160;  &#160;  &#160;不过，也是问题重重，特别是对于我们中文环境下。

 &#160;  &#160;  &#160; 凭着不断摸索，总结了一些安装搭建的注意事项，希望对后来者有用。
   1，我安装在服务器上之后（本人服务器之过，应属个别问题），_modules表中无法写入数据，即后台无法启用modules（类似wordpress中的plugins)。其他的modules也就算了，其中却有一个Rss Importer。可以导入RSS数据，我觉得是必不可少的。
 &#160;  &#160;  &#160;既然，无法通过后台PHP程序插入数据库，那在MYSQL中直接使用SQL语句插入总没问题吧。果然,可以启用。
 &#160;  &#160;  &#160; SQL语句，以启用Rss [...]


No related posts. From:<a href=\]]></description>
			<content:encoded><![CDATA[<p> &nbsp;  &nbsp;  &nbsp;  新弄了一个digg类站：<a href="http://www.cssass.com/digg" target="_blank">cssass的分享</a><br />
 &nbsp;  &nbsp;  &nbsp; digg类程序以前有玩过国产的wodig，那是在其第三季的时候，那时bug很多，自己还给官方贡献过几个bug修改方法呢。弄了一段时间后，就被遗弃了。<br />
 &nbsp;  &nbsp;  &nbsp; 事隔一年有余，又想起digg类程序的好处来：聚合，分享，内容为王，民主推荐。<br />
   这回则找了几个国外程序来玩。首先是找了PHPDug，这个在一年前是和wodig做过对比选择的，当时还是0.7版，这个程序功能很简单，就是这个原因当时就选择了wodig，同样因为这个原因现在我拿他做首选。可惜，安装在服务器上却无法工作。（所谓的服务器，只虚拟主机耳。相信是主机系统之过也。）<br />
 &nbsp;  &nbsp;  &nbsp; 首选遭毙，第二选乃是据说有“digg类中的wordpress”之称的pligg。<br />
 &nbsp;  &nbsp;  &nbsp;不过，也是问题重重，特别是对于我们中文环境下。<br />
<span id="more-274"></span><br />
 &nbsp;  &nbsp;  &nbsp; 凭着不断摸索，总结了一些安装搭建的注意事项，希望对后来者有用。<br />
   1，我安装在服务器上之后（本人服务器之过，应属个别问题），_modules表中无法写入数据，即后台无法启用modules（类似wordpress中的plugins)。其他的modules也就算了，其中却有一个Rss Importer。可以导入RSS数据，我觉得是必不可少的。<br />
 &nbsp;  &nbsp;  &nbsp;既然，无法通过后台PHP程序插入数据库，那在MYSQL中直接使用SQL语句插入总没问题吧。果然,可以启用。<br />
 &nbsp;  &nbsp;  &nbsp; SQL语句，以启用Rss Importer为例：</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #9c3;">INSERT</span><span style="color: Gray;"> </span><span style="color: #9c3;">INTO</span><span style="color: Gray;"> </span><span style="color: #8b0000;">`</span><span style="color: #39c;">pligg_modules</span><span style="color: #8b0000;">`</span><span style="color: Gray;"> </span><span style="color: Olive;">(</span><span style="color: #8b0000;">`</span><span style="color: #39c;">id</span><span style="color: #8b0000;">`</span><span style="color: Gray;">, </span><span style="color: #8b0000;">`</span><span style="color: #39c;">name</span><span style="color: #8b0000;">`</span><span style="color: Gray;">, </span><span style="color: #8b0000;">`</span><span style="color: #39c;">version</span><span style="color: #8b0000;">`</span><span style="color: Gray;">, </span><span style="color: #8b0000;">`</span><span style="color: #39c;">latest_version</span><span style="color: #8b0000;">`</span><span style="color: Gray;">, </span><span style="color: #8b0000;">`</span><span style="color: #39c;">folder</span><span style="color: #8b0000;">`</span><span style="color: Gray;">, </span><span style="color: #8b0000;">`</span><span style="color: #39c;">enabled</span><span style="color: #8b0000;">`</span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: #9c3;">VALUES</span><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Olive;">(</span><span style="color: Maroon;">2</span><span style="color: Gray;">, </span><span style="color: #8b0000;">'</span><span style="color: #E33100;">RSS Importer</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: Maroon;">0.9</span><span style="color: Gray;">, </span><span style="color: Maroon;">0</span><span style="color: Gray;">, </span><span style="color: #8b0000;">'</span><span style="color: #E33100;">rss_import</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: Maroon;">1</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li></ol></div>
<p>   2， 我在本地安装的时候，发现中文数据是乱码（有众多???号）。在服务器上安装没问题。其实这是因为我本地创建数据库的时候选择的charset等有问题，我选择的是默认default（我本地的SQL工具为SQLyog）。<br />
 &nbsp;  &nbsp;  &nbsp;  &nbsp; 正确的设置是charset:utf8;collation:utf8_general_ci;<br />
  3，RSS Importer的用法。虽然启用了这个module。但用的时候，刚开始却没摸到门路。其实我很质疑rss importer的界面设计。rss importer参数设置有三步。<br />
第一步：填Feed Name和URL。<br />
第二步：点edit进入，按需要修改一些参数。<br />
第三步：（我所忽略的就是这一点）点Add a new field link 。对应XML数据标记和pligg的变量，可以点击Examine this feed 做参考。一般是title——link_title;link——link_url;description——link_content</p>
<p>4，如何将本地和主机上的数据互搬。本来也只需把导出的SQL，搜索替换一下域名就可以了。但如果本地或主机上有一个安装目录，就需要多做一步了。</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #39c;">Location</span><span style="color: Gray;"> </span><span style="color: #39c;">Installed</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">, </span><span style="color: #8b0000;">'</span><span style="color: Gray;">$</span><span style="color: #39c;">my_pligg_base</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">, </span><span style="color: #8b0000;">'</span><span style="color: Gray;">/</span><span style="color: #39c;">digg</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">, </span><span style="color: #8b0000;">''</span><span style="color: #E33100;">, </span><span style="color: #8b0000;">'</span><span style="color: Gray;">/</span><span style="color: Olive;">(</span><span style="color: #39c;">folder</span><span style="color: Gray;"> </span><span style="color: #00008b;">name</span><span style="color: Olive;">)</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">, </span><span style="color: #8b0000;">'</span><span style="color: #39c;">Pligg</span><span style="color: Gray;"> </span><span style="color: #39c;">Base</span><span style="color: Gray;"> </span><span style="color: #39c;">Folder</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">,</span></li></ol></div>
<p>其中的digg就是安装目录了。如果是根目录，则留空。<br />
这个设置的在settings.php中$my_pligg_base = &#8221;;但如果修改这里，却是无效的，反而会被SQl数据所重置。<br />
另外补充一个,数据库连接的设置在/libs/dbconnect.php中。<br />
如果，要将本地或空间的文件覆盖对方,这个文件是不能拿去覆盖的。settings.php也不要拿去覆盖。</p>
<p>一个仍无头绪，但绕道解决的问题——汉化问题。<br />
 &nbsp;  &nbsp;  &nbsp; 本来这个汉化，只需修改language.conf文件就可以的，但我修改后，中文却是显示乱码。而在后台language选项下修改也不行。修改后中文显示的是Hex码。。。<br />
最后，我无奈直接在tpl文件中修改，工作量大了很多。</p>
<p> &nbsp;  &nbsp;  &nbsp; 几个程序上的修改。<br />
1，于中文信息的输入，往往出现link_title_url too long的问题。<br />
我们找到link.php中。</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #00008b;">$link_title</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$db</span><span style="color: Gray;">-&gt;</span><span style="color: #39c;">escape</span><span style="color: Olive;">(</span><span style="color: #00008b;">$this</span><span style="color: Gray;">-&gt;</span><span style="color: #39c;">title</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$link_title_url</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$db</span><span style="color: Gray;">-&gt;</span><span style="color: #39c;">escape</span><span style="color: Olive;">(</span><span style="color: #00008b;">$this</span><span style="color: Gray;">-&gt;</span><span style="color: #39c;">title_url</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: #9c3;">if</span><span style="color: Olive;">(</span><span style="color: #00008b;">$link_title_url</span><span style="color: Gray;"> == </span><span style="color: #8b0000;">&quot;&quot;</span><span style="color: Olive;">){</span><span style="color: #00008b;">$link_title_url</span><span style="color: Gray;"> = </span><span style="color: #39c;">makeUrlFriendly</span><span style="color: Olive;">(</span><span style="color: #00008b;">$this</span><span style="color: Gray;">-&gt;</span><span style="color: #39c;">title</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span><span style="color: Olive;">}</span></li>
</ol></div>
<p>再搜索makeUrlFriendly这个函数，找到utils.php。<br />
在makeUrlFriendly这个函数下第二行，</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #00008b;">$output</span><span style="color: Gray;"> = </span><span style="color: #39c;">utf8_substr</span><span style="color: Olive;">(</span><span style="color: #00008b;">$input</span><span style="color: Gray;">, </span><span style="color: Maroon;">0</span><span style="color: Gray;">, </span><span style="color: Maroon;">240</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
</ol></div>
<p>这个数值改大一点就可以了。<br />
然后可能还需修改sql数据库的结构，将_inks表下link_url_title数据项的Len值留空或改大。</p>
<p>2，虽然可以在后台设置文章允许的html tags。但通过rss importer导入的文章显示的缩略文却是屏蔽标签的。所以如果要让首页显示的缩略文也支持html tags。可以在modules/rss_import/templates/import_fields_center.tpl中去除strip_tags函数。</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #00008b;">$linkres</span><span style="color: Gray;">-&gt;</span><span style="color: #39c;">link_summary</span><span style="color: Gray;"> = </span><span style="color: #39c;">close_tags</span><span style="color: Olive;">(</span><span style="color: #39c;">utf8_substr</span><span style="color: Olive;">(</span><span style="color: #39c;">strip_tags</span><span style="color: Olive;">(</span><span style="color: #00008b;">$linkres</span><span style="color: Gray;">-&gt;</span><span style="color: #39c;">content</span><span style="color: Olive;">)</span><span style="color: Gray;">, </span><span style="color: Maroon;">0</span><span style="color: Gray;">, </span><span style="color: #39c;">StorySummary_ContentTruncate</span><span style="color: Gray;"> - </span><span style="color: Maroon;">1</span><span style="color: Olive;">))</span><span style="color: Gray;">;</span></li>
</ol></div>
<p>去除后：</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #00008b;">$linkres</span><span style="color: Gray;">-&gt;</span><span style="color: #39c;">link_summary</span><span style="color: Gray;"> = </span><span style="color: #39c;">close_tags</span><span style="color: Olive;">(</span><span style="color: #39c;">utf8_substr</span><span style="color: Olive;">(</span><span style="color: #00008b;">$linkres</span><span style="color: Gray;">-&gt;</span><span style="color: #39c;">content</span><span style="color: Gray;">, </span><span style="color: Maroon;">0</span><span style="color: Gray;">, </span><span style="color: #39c;">StorySummary_ContentTruncate</span><span style="color: Gray;"> - </span><span style="color: Maroon;">1</span><span style="color: Olive;">))</span><span style="color: Gray;">;</span></li>
</ol></div>
<p>3，缩略文允许html tags之后，就有了一个问题：缩略文是截取原文中前400个字符的（默认），假如截取的末尾是<br />
<blockquote>&lt;a href=&#8221;abcde</p></blockquote>
<p>这半个”号就会引发html闭合问题。<br />
解决方法就是搜索文中的&#8221;和&#8217;号，替换为空。我们将这个代码加在close_tags的函数定义中。<br />
找到html1.php 中的close_tags函数。<br />
在第一行，加上
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #00008b;">$html</span><span style="color: Gray;">=</span><span style="color: #39c;">preg_replace</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #8b0000;">&quot;</span><span style="color: #E33100;">/</span><span style="color: Navy;">\'</span><span style="color: #E33100;">|</span><span style="color: Navy;">\&quot;</span><span style="color: #E33100;">/</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">,</span><span style="color: #8b0000;">&quot;&quot;</span><span style="color: Gray;">, </span><span style="color: #00008b;">$html</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
</ol></div>
<p>除此之外，colse_tags函数虽然可以闭合有开始没结束的标签（事后发现，对于复杂的html结构，这个闭合并不能生效，函数需要大改进&#8230;）。对于</p>
<blockquote><p>&lt;p class=&#8221;begin&#8221;</p></blockquote>
<p>这样的半个开始标签，函数却没有解决闭合问题。<br />
修改： </p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #9c3;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #39c;">preg_match_all</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">/&lt;([a-z]+)(?: .*)?(?&lt;![\/|\/ ])&gt;/iU</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: #00008b;">$html</span><span style="color: Gray;">, </span><span style="color: #00008b;">$m</span><span style="color: Olive;">))</span></li>
<li><span style="color: Gray;">&nbsp;</span><span style="color: #00008b;">$opened_tags</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$m</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
</ol></div>
<p>改为：</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #9c3;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #39c;">preg_match_all</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">/&lt;([a-z]+)(?: .*)?(?&lt;![\/|\/ ])&gt;/iU</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: #00008b;">$html</span><span style="color: Gray;">, </span><span style="color: #00008b;">$m</span><span style="color: Olive;">))</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$opened_tags</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$m</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: #39c;">preg_match_all</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">/&lt;([a-z]+)(?: .*)?(?&lt;![\/|\/ ])&gt;/iU</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: #00008b;">$html</span><span style="color: Gray;">, </span><span style="color: #00008b;">$m</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: #00008b;">$opened_tags2</span><span style="color: Gray;">=</span><span style="color: #00008b;">$m</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: #9c3;">if</span><span style="color: Olive;">(</span><span style="color: #39c;">count</span><span style="color: Olive;">(</span><span style="color: #00008b;">$opened_tags2</span><span style="color: Olive;">)</span><span style="color: Gray;">!=</span><span style="color: #39c;">count</span><span style="color: Olive;">(</span><span style="color: #00008b;">$opened_tags</span><span style="color: Olive;">))</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$html</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">'</span><span style="color: #E33100;">&gt;</span><span style="color: #8b0000;">'</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: Olive;">}</span></li>
</ol></div>
<p>整个函数变为：</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #9c3;">function</span><span style="color: Gray;">&nbsp;</span><span style="color: #39c;">close_tags</span><span style="color: Olive;">(</span><span style="color: #00008b;">$html</span><span style="color: Olive;">)</span></li>
<li><span style="color: Olive;">{</span><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: #00008b;">$html</span><span style="color: Gray;">=</span><span style="color: #39c;">preg_replace</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #8b0000;">&quot;</span><span style="color: #E33100;">/</span><span style="color: Navy;">\'</span><span style="color: #E33100;">|</span><span style="color: Navy;">\&quot;</span><span style="color: #E33100;">/</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">,</span><span style="color: #8b0000;">&quot;&quot;</span><span style="color: Gray;">, </span><span style="color: #00008b;">$html</span><span style="color: Olive;">)</span><span style="color: Gray;">;&nbsp; </span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: #00008b;">$single_tags</span><span style="color: Gray;"> = </span><span style="color: #9c3;">array</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">meta</span><span style="color: #8b0000;">'</span><span style="color: Gray;">,</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">img</span><span style="color: #8b0000;">'</span><span style="color: Gray;">,</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">br</span><span style="color: #8b0000;">'</span><span style="color: Gray;">,</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">link</span><span style="color: #8b0000;">'</span><span style="color: Gray;">,</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">area</span><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: #9c3;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #39c;">preg_match_all</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">/&lt;([a-z]+)(?: .*)?(?&lt;![\/|\/ ])&gt;/iU</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: #00008b;">$html</span><span style="color: Gray;">, </span><span style="color: #00008b;">$m</span><span style="color: Olive;">))</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$opened_tags</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$m</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: #39c;">preg_match_all</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">/&lt;([a-z]+)(?: .*)?(?&lt;![\/|\/ ])&gt;/iU</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: #00008b;">$html</span><span style="color: Gray;">, </span><span style="color: #00008b;">$m</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: #00008b;">$opened_tags2</span><span style="color: Gray;">=</span><span style="color: #00008b;">$m</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: #9c3;">if</span><span style="color: Olive;">(</span><span style="color: #39c;">count</span><span style="color: Olive;">(</span><span style="color: #00008b;">$opened_tags2</span><span style="color: Olive;">)</span><span style="color: Gray;">!=</span><span style="color: #39c;">count</span><span style="color: Olive;">(</span><span style="color: #00008b;">$opened_tags</span><span style="color: Olive;">))</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$html</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">'</span><span style="color: #E33100;">&gt;</span><span style="color: #8b0000;">'</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: #9c3;">else</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #9c3;">return</span><span style="color: Gray;">&nbsp;</span><span style="color: #00008b;">$html</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: #9c3;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #39c;">preg_match_all</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">/&lt;\/([a-z]+)&gt;/iU</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: #00008b;">$html</span><span style="color: Gray;">, </span><span style="color: #00008b;">$m</span><span style="color: Olive;">))</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: #00008b;">$closed_tags</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$m</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: #9c3;">else</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$closed_tags</span><span style="color: Gray;"> = </span><span style="color: #9c3;">array</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: #9c3;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #39c;">count</span><span style="color: Olive;">(</span><span style="color: #00008b;">$closed_tags</span><span style="color: Olive;">)</span><span style="color: Gray;"> == </span><span style="color: #39c;">count</span><span style="color: Olive;">(</span><span style="color: #00008b;">$opened_tags</span><span style="color: Olive;">))</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #9c3;">return</span><span style="color: Gray;">&nbsp;</span><span style="color: #00008b;">$html</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: #9c3;">for</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #00008b;">$i</span><span style="color: Gray;">=</span><span style="color: #39c;">count</span><span style="color: Olive;">(</span><span style="color: #00008b;">$opened_tags</span><span style="color: Olive;">)</span><span style="color: Gray;">-</span><span style="color: Maroon;">1</span><span style="color: Gray;">; </span><span style="color: #00008b;">$i</span><span style="color: Gray;">&gt;=</span><span style="color: Maroon;">0</span><span style="color: Gray;">; </span><span style="color: #00008b;">$i</span><span style="color: Gray;">--</span><span style="color: Olive;">)</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: #9c3;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Gray;">!</span><span style="color: #39c;">in_array</span><span style="color: Olive;">(</span><span style="color: #00008b;">$opened_tags</span><span style="color: Olive;">[</span><span style="color: #00008b;">$i</span><span style="color: Olive;">]</span><span style="color: Gray;">,</span><span style="color: #00008b;">$single_tags</span><span style="color: Olive;">))</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: #9c3;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Gray;">!</span><span style="color: #39c;">in_array</span><span style="color: Olive;">(</span><span style="color: #00008b;">$opened_tags</span><span style="color: Olive;">[</span><span style="color: #00008b;">$i</span><span style="color: Olive;">]</span><span style="color: Gray;">, </span><span style="color: #00008b;">$closed_tags</span><span style="color: Olive;">))</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$html</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">'</span><span style="color: #E33100;">&lt;/</span><span style="color: #8b0000;">'</span><span style="color: Gray;">.</span><span style="color: #00008b;">$opened_tags</span><span style="color: Olive;">[</span><span style="color: #00008b;">$i</span><span style="color: Olive;">]</span><span style="color: Gray;">.</span><span style="color: #8b0000;">'</span><span style="color: #E33100;">&gt;</span><span style="color: #8b0000;">'</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp;&nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp;&nbsp; </span><span style="color: #9c3;">return</span><span style="color: Gray;">&nbsp;</span><span style="color: #00008b;">$html</span><span style="color: Gray;">;</span></li>
<li><span style="color: Olive;">}</span></li>
</ol></div>
<p>整个函数对于
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #00008b;">$html</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">&quot;</span><span style="color: #E33100;"> &lt;p&gt;&lt;b&gt;bold text&lt;/b&gt;sdasd&lt;a href='howdy.html</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
</ol></div>
<p>可以完好闭合，<br />
但复杂点的，如
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: #00008b;">$html</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">&quot;</span><span style="color: #E33100;">&lt;p&gt;s&lt;a href='as' &gt;asd&lt;/a&gt;adasd&lt;/p&gt;&lt;p&gt;&lt;b&gt;bold text&lt;/b&gt;sdasd&lt;a href='howdy.html</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
</ol></div>
<p>就不能完好闭合了。</p>
<p>待续改进。</p>


<p>No related posts. From:<a href=\]]></content:encoded>
			<wfw:commentRss>http://www.cssass.com/blog/index.php/2009/274.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>关于margin-top/bottom在non-Replaced inline元素上不起作用的解释</title>
		<link>http://www.cssass.com/blog/index.php/2009/121.html</link>
		<comments>http://www.cssass.com/blog/index.php/2009/121.html#comments</comments>
		<pubDate>Thu, 26 Feb 2009 23:07:51 +0000</pubDate>
		<dc:creator>ONEBOYS</dc:creator>
				<category><![CDATA[CSS2]]></category>
		<category><![CDATA[一己之见]]></category>
		<category><![CDATA[浏览器与兼容]]></category>
		<category><![CDATA[inline]]></category>
		<category><![CDATA[margin]]></category>
		<category><![CDATA[Replaced]]></category>

		<guid isPermaLink="false">http://oneboys.host004.dns2004.cn/?p=121</guid>
		<description><![CDATA[margin-top/bottom have no effect on non-replaced inline elements。（参见css2.1规范）
但是为什么就不支持呢？
本人觉得可以这样解释：
像这样一个结构
&#60;span class=&#8221;a&#8221;&#62;xxxxxxxxxxxxxxxx&#60;/span&#62;&#60;span class=&#8221;b&#8221;&#62;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#60;/span&#62;
效果大概如下
xxxxxxxxxxxxxxx&#8212;&#8212;&#8212;&#8212;-
假如inline元素支持margin-top，而margin-top的参照基准是前一个元素（当然，考虑复杂情况的话，这么说是不正确的,比如前一元素是脱离文档流的元素，或者根本没有前一元素而只有上级元素，等等）。那么给b相对a的设置一个margin-top值，这个效果会是怎么呢？
这样？
xxxxxxxxxxxxxxx
&#8212;&#8212;&#8212;&#8212;-
还是这样？
xxxxxxxxxxxxxxx
                                     &#8212;&#8212;&#8212;&#8212;-
但不管是怎样，这都和inline元素的定义相悖。inline元素，从字面上就可以理解，他是在(in)一行(line)上的！
这就是为什么inline元素当初设计的时候不让它支持margin-top/bottom。
同样他（非可置换inline元素）也不支持height（和width）。取而代之的是line-height，意思就是行高。因为inline元素是一行行的，定一个height的话，那这到底是整段inline元素的高呢？还是inline元素一行的高呢？都说不过去啊！所以统一都给每行定一个高，这就是line-height了。
虽然no-replaced inline元素都不支持margin属性。
但margin对于可置换inline元素还是有效的.(Replaced element )
例如下，下面的margin-top/bottom就生效了吧.


&#60;!DOCTYPE html&#62;
&#60;html&#62;
&#60;head&#62;
&#60;meta charset=&#34;utf-8&#34; /&#62;
&#60;title&#62;可置换inline元素的margin效果&#60;/title&#62;
&#60;style type=&#34;text/css&#34;&#62;
*{margin:0; padding:0; }
.inputButton{margin-top:100px;}
&#60;/style&#62;
&#60;/head&#62;
&#60;body&#62;
&#60;div style=&#34;border:1px solid red;&#34;&#62;
	&#60;input type=&#34;text&#34; class=&#34;inputText&#34; /&#62;&#60;input type=&#34;button&#34; value=&#34;提交&#34; class=&#34;inputButton&#34; /&#62;
&#60;/div&#62;
&#60;/body&#62;
&#60;/html&#62;

 

不过，等下，为什么在这里对inputButton设置margin-top后inputText也跟着有了上边距了呢？
其实，对于可置换inline元素的margin作用基线和block元素又不一样，他并非是任意的前面那个元素，而是离他最近的前一个block元素。
而且，对于元素有一个默认的vertical-align值。
ie下有可能是：vertical-align:auto; （但标准css规范中并无auto这个值）
而FF等浏览器下是vertical-align:baseline;（规范中所定义）
我们给input这个可置换inline元素设置个vertical-align:top;看看，前面的inputText是不是就看不出有“上边距”了。


&#60;!DOCTYPE html&#62;
&#60;html&#62;
&#60;head&#62;
&#60;meta charset=&#34;utf-8&#34; /&#62;
&#60;title&#62;可置换inline元素的margin效果&#60;/title&#62;
&#60;style type=&#34;text/css&#34;&#62;
*{margin:0; padding:0; }
input{vertical-align:top;}
.inputButton{margin-top:100px;}
&#60;/style&#62;
&#60;/head&#62;
&#60;body&#62;
&#60;div style=&#34;border:1px solid red;&#34;&#62;
	&#60;input type=&#34;text&#34; class=&#34;inputText&#34; [...]


Related posts:<ol><li><a href='http://www.cssass.com/blog/index.php/2009/350.html' rel='bookmark' title='Permanent Link: 斯芬克斯之谜续——IE下失效的margin-left/right'>斯芬克斯之谜续——IE下失效的margin-left/right</a></li></ol>]]></description>
			<content:encoded><![CDATA[<p>margin-top/bottom have no effect on non-replaced inline elements。（参见css2.1规范）<br />
但是为什么就不支持呢？<br />
本人觉得可以这样解释：</p>
<p>像这样一个结构<br />
&lt;span class=&#8221;a&#8221;&gt;xxxxxxxxxxxxxxxx&lt;/span&gt;&lt;span class=&#8221;b&#8221;&gt;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&lt;/span&gt;</p>
<p>效果大概如下<br />
xxxxxxxxxxxxxxx&#8212;&#8212;&#8212;&#8212;-</p>
<p>假如inline元素支持margin-top，而margin-top的参照基准是前一个元素（当然，考虑复杂情况的话，这么说是不正确的,比如前一元素是脱离文档流的元素，或者根本没有前一元素而只有上级元素，等等）。那么给b相对a的设置一个margin-top值，这个效果会是怎么呢？</p>
<p>这样？<br />
xxxxxxxxxxxxxxx<br />
&#8212;&#8212;&#8212;&#8212;-</p>
<p>还是这样？<br />
xxxxxxxxxxxxxxx<br />
                                     &#8212;&#8212;&#8212;&#8212;-</p>
<p>但不管是怎样，这都和inline元素的定义相悖。inline元素，从字面上就可以理解，他是在(in)一行(line)上的！<br />
这就是为什么inline元素当初设计的时候不让它支持margin-top/bottom。</p>
<p>同样他（非可置换inline元素）也不支持height（和width）。取而代之的是line-height，意思就是行高。因为inline元素是一行行的，定一个height的话，那这到底是整段inline元素的高呢？还是inline元素一行的高呢？都说不过去啊！所以统一都给每行定一个高，这就是line-height了。</p>
<p>虽然no-replaced inline元素都不支持margin属性。<br />
但margin对于可置换inline元素还是有效的.(<a href="http://www.w3.org/TR/CSS21/conform.html" target="_blank" >Replaced element</a> )</p>
<p>例如下，下面的margin-top/bottom就生效了吧.</p>
<div class="runcode">
<div><span class='areaBox' onmousedown="runcode.resize(this,event);"><textarea name="runcode" class="runcode_text" id="runcode_CUuo8V" onmousedown="(document.all)?(event.cancelBubble = true) : (event.stopPropagation())">
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
&lt;meta charset=&quot;utf-8&quot; /&gt;
&lt;title&gt;可置换inline元素的margin效果&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
*{margin:0; padding:0; }
.inputButton{margin-top:100px;}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div style=&quot;border:1px solid red;&quot;&gt;
	&lt;input type=&quot;text&quot; class=&quot;inputText&quot; /&gt;&lt;input type=&quot;button&quot; value=&quot;提交&quot; class=&quot;inputButton&quot; /&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</textarea></span></div>
<div><input type="button" value="Run" class="runcode_button" onclick="runcode.open_new('runcode_CUuo8V');"/> </div>
</div>
<p>不过，等下，为什么在这里对inputButton设置margin-top后inputText也跟着有了上边距了呢？<br />
其实，对于可置换inline元素的margin作用基线和block元素又不一样，他并非是任意的前面那个元素，而是离他最近的前一个block元素。<br />
而且，对于元素有一个默认的vertical-align值。<br />
ie下有可能是：vertical-align:auto; （但标准css规范中并无auto这个值）<br />
而FF等浏览器下是vertical-align:baseline;（规范中所定义）</p>
<p>我们给input这个可置换inline元素设置个vertical-align:top;看看，前面的inputText是不是就看不出有“上边距”了。</p>
<div class="runcode">
<div><span class='areaBox' onmousedown="runcode.resize(this,event);"><textarea name="runcode" class="runcode_text" id="runcode_yNQWxd" onmousedown="(document.all)?(event.cancelBubble = true) : (event.stopPropagation())">
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
&lt;meta charset=&quot;utf-8&quot; /&gt;
&lt;title&gt;可置换inline元素的margin效果&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
*{margin:0; padding:0; }
input{vertical-align:top;}
.inputButton{margin-top:100px;}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div style=&quot;border:1px solid red;&quot;&gt;
	&lt;input type=&quot;text&quot; class=&quot;inputText&quot; /&gt;&lt;input type=&quot;button&quot; value=&quot;提交&quot; class=&quot;inputButton&quot; /&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</textarea></span></div>
<div><input type="button" value="Run" class="runcode_button" onclick="runcode.open_new('runcode_yNQWxd');"/> </div>
</div>
<p>有时候，margin的值在不同浏览器下会产生不同的结果。<br />
比如这个：</p>
<div class="runcode">
<div><span class='areaBox' onmousedown="runcode.resize(this,event);"><textarea name="runcode" class="runcode_text" id="runcode_N4OvzI" onmousedown="(document.all)?(event.cancelBubble = true) : (event.stopPropagation())">
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
&lt;meta charset=&quot;utf8&quot; /&gt;
&lt;title&gt;可置换inline元素的margin效果&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
*{margin:0; padding:0; }
.inputButton{margin-top:-100px;}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;
&lt;div style=&quot;border:1px solid red;&quot;&gt;
	&lt;input type=&quot;text&quot; class=&quot;inputText&quot; /&gt;&lt;input type=&quot;button&quot; value=&quot;提交&quot; class=&quot;inputButton&quot; /&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</textarea></span></div>
<div><input type="button" value="Run" class="runcode_button" onclick="runcode.open_new('runcode_N4OvzI');"/> </div>
</div>
<p>对比下ie和FF的差别，我们会发现在，ＦＦ下这个margin负值似乎没起作用啊。<br />
其实是vertical-align值（有默认值）在不同浏览器下解释有差别的缘故。<br />
你可以修改input的vertical-align值做下测试。</p>


<p>Related posts:<ol><li><a href='http://www.cssass.com/blog/index.php/2009/350.html' rel='bookmark' title='Permanent Link: 斯芬克斯之谜续——IE下失效的margin-left/right'>斯芬克斯之谜续——IE下失效的margin-left/right</a></li></ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.cssass.com/blog/index.php/2009/121.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>关于padding增加width的解释</title>
		<link>http://www.cssass.com/blog/index.php/2009/119.html</link>
		<comments>http://www.cssass.com/blog/index.php/2009/119.html#comments</comments>
		<pubDate>Thu, 26 Feb 2009 23:00:41 +0000</pubDate>
		<dc:creator>ONEBOYS</dc:creator>
				<category><![CDATA[DOM]]></category>
		<category><![CDATA[一己之见]]></category>

		<guid isPermaLink="false">http://oneboys.host004.dns2004.cn/?p=119</guid>
		<description><![CDATA[在一个block元素上使用padding后元素实际的宽度会增加，这是一个常识。
这本来是一个很浅显的道理，但许多初学者考虑的时候却觉得很怪异。
我这里按自己的解释来说明一番。
给个假设情况：一个width：10px的元素，padding：10px；
那么实际宽度就是width+padding-left+padding-right=30px;
假如说padding对宽度无影响，那么width是10px；但是padding在横向的宽度是20px；这样内边距padding&#62;总宽width。
一个元素的内边距却大于这个元素的总宽，显然这是个悖论。
所以说作为内边距的padding是一定要加在宽度之上的。


No related posts. From:


No related posts. From:<a href=\]]></description>
			<content:encoded><![CDATA[<p>在一个block元素上使用padding后元素实际的宽度会增加，这是一个常识。</p>
<p>这本来是一个很浅显的道理，但许多初学者考虑的时候却觉得很怪异。</p>
<p>我这里按自己的解释来说明一番。</p>
<p>给个假设情况：一个width：10px的元素，padding：10px；</p>
<p>那么实际宽度就是width+padding-left+padding-right=30px;</p>
<p>假如说padding对宽度无影响，那么width是10px；但是padding在横向的宽度是20px；这样内边距padding&gt;总宽width。</p>
<p>一个元素的内边距却大于这个元素的总宽，显然这是个悖论。</p>
<p>所以说作为内边距的padding是一定要加在宽度之上的。</p>


<p>No related posts. From:<a href=\]]></content:encoded>
			<wfw:commentRss>http://www.cssass.com/blog/index.php/2009/119.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>第一次真正设计的网站页面，可惜夭折了</title>
		<link>http://www.cssass.com/blog/index.php/2009/68.html</link>
		<comments>http://www.cssass.com/blog/index.php/2009/68.html#comments</comments>
		<pubDate>Sun, 11 Jan 2009 14:52:55 +0000</pubDate>
		<dc:creator>ONEBOYS</dc:creator>
				<category><![CDATA[一己之见]]></category>

		<guid isPermaLink="false">http://oneboys.host004.dns2004.cn/?p=68</guid>
		<description><![CDATA[

本来设计对我来说就是半吊子。
这个页面是给同学公司做的，不过人家不喜欢，嫌东西少。
的确，细节上没怎么设计好，总的来说是单调了。
保存留念。


No related posts. From:


No related posts. From:<a href=\]]></description>
			<content:encoded><![CDATA[<p><embed width="475" height="500" menu="false" wmode="transparent" quality="high" src="http://f.yupoo.com/v.swf?id=oneboys-ff8080811ec5c586011ec6291c050a02-m" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" ></embed></p>
<p><embed width="489" height="500" menu="false" wmode="transparent" quality="high" src="http://f.yupoo.com/v.swf?id=oneboys-ff8080811ebe0f80011ec62924b405c2-m" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" ></embed></p>
<p>本来设计对我来说就是半吊子。<br />
这个页面是给同学公司做的，不过人家不喜欢，嫌东西少。<br />
的确，细节上没怎么设计好，总的来说是单调了。<br />
保存留念。</p>


<p>No related posts. From:<a href=\]]></content:encoded>
			<wfw:commentRss>http://www.cssass.com/blog/index.php/2009/68.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>用户体验之我见</title>
		<link>http://www.cssass.com/blog/index.php/2008/57.html</link>
		<comments>http://www.cssass.com/blog/index.php/2008/57.html#comments</comments>
		<pubDate>Tue, 09 Dec 2008 06:58:50 +0000</pubDate>
		<dc:creator>ONEBOYS</dc:creator>
				<category><![CDATA[一己之见]]></category>
		<category><![CDATA[UE]]></category>

		<guid isPermaLink="false">http://www.cssass.com/?p=57</guid>
		<description><![CDATA[谈不上什么见解吧，只是在表达一下自己在UE方面的感受。也就只是粗粗的几条，以后慢慢更新吧。
我认为，UE的第一层境界就是：“和谐”，“协调”。让人第一眼看到页面的感受就是舒服。
1.  突出显示是应该的，但扎人眼球的话，效果就适得其反了。
2.  帮助提示这个初衷很好，但小心不要“无微不至”，不要“如影随形”，不但可能会破坏页面协调，还可能无意中侮辱了用户的智商。最后，因为你的繁琐而走了用户。


No related posts. From:


No related posts. From:<a href=\]]></description>
			<content:encoded><![CDATA[<p>谈不上什么见解吧，只是在表达一下自己在UE方面的感受。也就只是粗粗的几条，以后慢慢更新吧。<br />
我认为，UE的第一层境界就是：“和谐”，“协调”。让人第一眼看到页面的感受就是舒服。<br />
1.  突出显示是应该的，但扎人眼球的话，效果就适得其反了。<br />
2.  帮助提示这个初衷很好，但小心不要“无微不至”，不要“如影随形”，不但可能会破坏页面协调，还可能无意中侮辱了用户的智商。最后，因为你的繁琐而走了用户。</p>


<p>No related posts. From:<a href=\]]></content:encoded>
			<wfw:commentRss>http://www.cssass.com/blog/index.php/2008/57.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>“睡觉”与“获胜”</title>
		<link>http://www.cssass.com/blog/index.php/2008/53.html</link>
		<comments>http://www.cssass.com/blog/index.php/2008/53.html#comments</comments>
		<pubDate>Thu, 20 Nov 2008 15:26:42 +0000</pubDate>
		<dc:creator>ONEBOYS</dc:creator>
				<category><![CDATA[一己之见]]></category>

		<guid isPermaLink="false">http://www.cssass.com/?p=53</guid>
		<description><![CDATA[
有时候，我们认为的往往不是那么回事。

你真的理解“我去睡觉”和“我去睡一觉”的意思吗？
从源意上来讲，&#8221;睡&#8221;和&#8221;觉&#8221;是两个（状态）动词，并且是两个意义相反的（状态）动词。
“睡”大家可以很容易理解，而&#8221;觉&#8221;呢，我们可以跟“觉察”，“觉醒”参照一下，是否“觉”的意义就是“醒着的”，“醒过来”的意思呢。
所以说&#8221;我去睡觉&#8221;其实是从“睡”到“觉”的这么一个周期。如果说你想长睡不起，你说“去睡觉”这是不对的。
而“睡一觉”这个从字面上理解起来就比较难了，隐隐中有病句的嫌疑。不过由于是习惯用语，是当不得病句的。
现在一般单纯的把“睡觉”只当成“睡”来理解，是不是是个大错呢。
呵呵，其实，一切不对的东西如果存在都是有借口的，“睡觉”变成“睡”的借口就是，我们把他归为了偏义复词，偏“睡”义。其实偏义复词还是蛮常见的，比如：&#8221;国家&#8221;偏“国”义, &#8220;妻子&#8221;偏“妻”义。

除了偏意复词，我们还会遇到更多的一类词：同意复词。
比如：采撷，拍打，开始，放弃，侵犯，不胜枚举。
由于两个字意义一致，无法确定到底意义是偏向谁，但又不能说这是“重复病句”，所以就有了“同意复词”。（其实“意义”不也是一组同义复词呢，只是这两个字貌似都很有各自的内涵罢了）。
为什么说到这个“同意复词”呢，其实是这样的：
前几天看《三国演义》的时候，看到“全获大胜”这个词，当时以为是盗版错误的问题，但仔细想想，好像也说的通，但就是有些别扭，为什么？因为我当时将“获”字按“获得”来理解了。如果是“获得”的意思，“大获全胜”意义很明显，而&#8221;全获大胜&#8221;难道是“全部获得了胜利”吗？显然说不过去啊。
然后，看看“全”和“大”在某层次上有同义的倾向，我顿然大悟啊。莫非就是同意复词:“大获”-“全胜”，“获”-“胜”。
当你以为你得到的时候，是否真的已经得到了，还是自以为得到了呢。
所谓“兼听则明”，为了不至于掉入自以为是的陷阱内不能自拔，我们还是多参考下资料为好。
查找词典可以发现：获有这么一层意思。
打猎得到的禽兽：猎～。（查单字）
获：擒获俘虏，夺取敌方辎重. (查大获全胜)
看来，“获”的确不该当“获得”解啊。从解释上来分析“大获 全胜”应该是一个并列结构的词组了，而不是动宾词组。只是，“获”同“胜”的意义相去稍微远了点，无法结成“同意复词”了。
不过，如果没人反对，我把现今使用的“获胜”一词列为偏意复词，偏&#8221;胜&#8221;义。（哈哈，又自以为是了。。。）


No related posts. From:


No related posts. From:<a href=\]]></description>
			<content:encoded><![CDATA[<p style="font-size:15px;">
<blockquote><p>有时候，我们认为的往往不是那么回事。</p></blockquote>
<p>
你真的理解“我去睡觉”和“我去睡一觉”的意思吗？<br />
从源意上来讲，&#8221;睡&#8221;和&#8221;觉&#8221;是两个（状态）动词，并且是两个意义相反的（状态）动词。<br />
“睡”大家可以很容易理解，而&#8221;觉&#8221;呢，我们可以跟“觉察”，“觉醒”参照一下，是否“觉”的意义就是“醒着的”，“醒过来”的意思呢。<br />
所以说&#8221;我去睡觉&#8221;其实是从“睡”到“觉”的这么一个周期。如果说你想长睡不起，你说“去睡觉”这是不对的。<br />
而“睡一觉”这个从字面上理解起来就比较难了，隐隐中有病句的嫌疑。不过由于是习惯用语，是当不得病句的。<br />
现在一般单纯的把“睡觉”只当成“睡”来理解，是不是是个大错呢。<br />
呵呵，其实，一切不对的东西如果存在都是有借口的，“睡觉”变成“睡”的借口就是，我们把他归为了偏义复词，偏“睡”义。其实偏义复词还是蛮常见的，比如：&#8221;国家&#8221;偏“国”义, &#8220;妻子&#8221;偏“妻”义。<br />
<br />
除了偏意复词，我们还会遇到更多的一类词：同意复词。<br />
比如：采撷，拍打，开始，放弃，侵犯，不胜枚举。<br />
由于两个字意义一致，无法确定到底意义是偏向谁，但又不能说这是“重复病句”，所以就有了“同意复词”。（其实“意义”不也是一组同义复词呢，只是这两个字貌似都很有各自的内涵罢了）。<br />
为什么说到这个“同意复词”呢，其实是这样的：<br />
前几天看《三国演义》的时候，看到“全获大胜”这个词，当时以为是盗版错误的问题，但仔细想想，好像也说的通，但就是有些别扭，为什么？因为我当时将“获”字按“获得”来理解了。如果是“获得”的意思，“大获全胜”意义很明显，而&#8221;全获大胜&#8221;难道是“全部获得了胜利”吗？显然说不过去啊。<br />
然后，看看“全”和“大”在某层次上有同义的倾向，我顿然大悟啊。莫非就是同意复词:“大获”-“全胜”，“获”-“胜”。</p>
<blockquote><p>当你以为你得到的时候，是否真的已经得到了，还是自以为得到了呢。</p></blockquote>
<p>所谓“兼听则明”，为了不至于掉入自以为是的陷阱内不能自拔，我们还是多参考下资料为好。<br />
查找词典可以发现：获有这么一层意思。</p>
<blockquote><p>打猎得到的禽兽：猎～。（查单字）<br />
获：擒获俘虏，夺取敌方辎重. (查大获全胜)</p></blockquote>
<p>看来，“获”的确不该当“获得”解啊。从解释上来分析“大获 全胜”应该是一个并列结构的词组了，而不是动宾词组。只是，“获”同“胜”的意义相去稍微远了点，无法结成“同意复词”了。<br />
不过，如果没人反对，我把现今使用的“获胜”一词列为偏意复词，偏&#8221;胜&#8221;义。（哈哈，又自以为是了。。。）</p>


<p>No related posts. From:<a href=\]]></content:encoded>
			<wfw:commentRss>http://www.cssass.com/blog/index.php/2008/53.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>“交通”释义</title>
		<link>http://www.cssass.com/blog/index.php/2008/32.html</link>
		<comments>http://www.cssass.com/blog/index.php/2008/32.html#comments</comments>
		<pubDate>Wed, 24 Sep 2008 12:24:01 +0000</pubDate>
		<dc:creator>ONEBOYS</dc:creator>
				<category><![CDATA[一己之见]]></category>
		<category><![CDATA[交通]]></category>

		<guid isPermaLink="false">http://www.cssass.com/?p=32</guid>
		<description><![CDATA[今日，苦等公交足有三刻，甚是不爽。然不爽又能奈谁何，遂思“交通”之意。
    吾记少时读《桃花源记》，有“阡陌交通，鸡犬相闻”之句。&#8221;阡陌&#8221;意田间小路，“东西为陌，南北为仟”，“阡陌交通”之意即为“田间小路，交汇互通”。“交汇互通”应为今日“交通”代名词之源意也。只叹今日之“交通”竟不如“田野阡陌”之“交通”通畅矣。
    古之“交通”还另有其他衍意，查百度知道得：
    1、交汇，通融。例：春三月，天地乾燥，水纠列之时也。山川涸落，天气下，地气上，万物交通。《管子.度地》
    2、天地万物生成的方式或过程。例：至阴肃肃，至阳赫赫，肃肃发乎天，赫赫发乎地，两者交通成而物生也。《庄子.田子方》 （性“交”之源意如此）
    3、交错纵横的意思。例：阡陌交通，鸡犬相闻。《桃花源记》


No related posts. From:


No related posts. From:<a href=\]]></description>
			<content:encoded><![CDATA[<p>今日，苦等公交足有三刻，甚是不爽。然不爽又能奈谁何，遂思“交通”之意。<br />
    吾记少时读《桃花源记》，有“阡陌交通，鸡犬相闻”之句。&#8221;阡陌&#8221;意田间小路，“东西为陌，南北为仟”，“阡陌交通”之意即为“田间小路，交汇互通”。“交汇互通”应为今日“交通”代名词之源意也。只叹今日之“交通”竟不如“田野阡陌”之“交通”通畅矣。<br />
    古之“交通”还另有其他衍意，查百度知道得：<br />
    1、交汇，通融。例：春三月，天地乾燥，水纠列之时也。山川涸落，天气下，地气上，万物交通。《管子.度地》<br />
    2、天地万物生成的方式或过程。例：至阴肃肃，至阳赫赫，肃肃发乎天，赫赫发乎地，两者交通成而物生也。《庄子.田子方》 （性“交”之源意如此）<br />
    3、交错纵横的意思。例：阡陌交通，鸡犬相闻。《桃花源记》</p>


<p>No related posts. From:<a href=\]]></content:encoded>
			<wfw:commentRss>http://www.cssass.com/blog/index.php/2008/32.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

