<?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>Moondy’s Zone &#187; hack</title>
	<atom:link href="http://www.moondyzone.com/tag/hack/feed" rel="self" type="application/rss+xml" />
	<link>http://www.moondyzone.com</link>
	<description>一位IT民工的点点滴滴……  WEB前端、网页重构、AS3</description>
	<lastBuildDate>Mon, 18 Apr 2011 10:06:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		
<!-- Start Of Script Generated By WP-PostViews Plus -->
<script type='text/javascript' src='http://www.moondyzone.com/wp-includes/js/jquery/jquery.js?ver=1.3.2'></script>
<script type="text/javascript">
/* <![CDATA[ */
/* ]]> */
</script>
<!-- End Of Script Generated By WP-PostViews Plus -->
	<item>
		<title>CSS兼容浏览器的一些常用hack</title>
		<link>http://www.moondyzone.com/css/130.html</link>
		<comments>http://www.moondyzone.com/css/130.html#comments</comments>
		<pubDate>Sat, 10 Jan 2009 09:43:37 +0000</pubDate>
		<dc:creator>Moondy</dc:creator>
				<category><![CDATA[Xhtml/Css]]></category>
		<category><![CDATA[hack]]></category>

		<guid isPermaLink="false">http://www.moondyzone.com/?p=130</guid>
		<description><![CDATA[首先，本民工要声明的是，本人并不喜欢hack，只是在某些不得已的情况下需要用到而已。hack并不是标准，如果过于依懒hack来调整页面的话，只会让我们离标准越来越远。在很多大公司会把DIV+CSS的工作称之为“页面重构”或者“网页架构”，是有原因的，一个好的网页架构本身就可以避免大多数需要用到hack的情况。
当然，不管标不标准，至少现在不是IE一统天下的时代，为了兼容浏览器，这些常用的hack手法还是必备的。
 屏蔽IE浏览器
*:lang(zh) select {font:12px !important;} /*FF,OP可见*/
class:empty {font:12px !important;} /*safari可见*/
这里class是选择符，根据情况更换。第二句是MAC上safari浏览器独有的。
仅IE7识别
*+html {…}
当面临需要只针对IE7做样式的时候就可以采用这个HACK。
IE6及IE6以下识别
* html {…}
这个地方要特别注意很多地方都写了是IE6的HACK其实IE5.x同样可以识别这个hack。其它浏览器不识别。
仅IE6不识别
class{ display /*IE6不识别*/:none;}
这里主要是通过CSS注释分开一个属性与值，流释在冒号前。
仅IE6与IE5不识别
class/**/ { display /*IE6,IE5不识别*/:none;}
这里与上面一句不同的是在选择符与花括号之间多了一个CSS注释。
仅IE5不识别
select/*IE5不识别*/ { display:none;}
这一句是在上一句中去掉了属性区的注释。只有IE5不识别。现在已经很少去考虑IE5了。
盒模型解决方法
class{width:IE5.x宽度; voice-family :”\”}\”&#8221;; voice-family:inherit; width:正确宽度;}
盒模型的清除方法不是通过!important来处理的。这点要明确。这也是IE5中才出现的，也是N久都不用了。
只有Opera识别
@media all and (min-width: 0px){ class{……} }
针对Opera浏览器做单独的设定。
清除浮动
class:after {content:”.”; display:block; height:0; clear:both; visibility:hidden;}
关于清除浮动，在这里要详细说下，因为个是经常会碰到的。很多网站上都把上面那个方法称之为万能清除浮动之方法。其实用起来也并不那么好用。下面这句比较简单，效果也是一样：
class{overflow:hidden; height:1%;}
虽然这两种方法在页面输出的时候是没有问题的，但是用dreamweaver打开的时候有可能就是一团糟。本民工可是一个追求完美之人，所以推荐用下面这种方法：
.clearfloat { /* 此类应当放在 div 或 break 元素上，而且该元素应当是完全包含浮动的容器关闭之前的最后一个元素 */ clear:both;height:0;font-size: 1px;line-height: 0px;}
这个是dreamweaver模版自带的清除浮动方法，很好用的。
相关文章CSS3测试之——QQ企鹅斜角导航及滑动门的延伸a:hover在IE6中的BUG对CSS渲染效率的一些研究解决IE8的兼容问题，X-UA-Compatible meta标签一道看似简单的面试题]]></description>
		<wfw:commentRss>http://www.moondyzone.com/css/130.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

