网站设计 webdesign
当前位置:首页 > 网站建设专题 > 网站设计
网页设计最全的CSS Hack
发布日期:2011-05-21 阅读次数:1157 字体大小:

CSS Hack 是用来解决目前各类浏览器无法标准解析CSS样式,导致网页在各浏览器下出现显示效果不一致的兼容问题。目前我们无法指望各类浏览器能实现统一的解析标准,所以只能用CSS Hack来单独纠正各大浏览器的兼容问题。

在网上随便可以搜索到大堆的CSS Hack但是却很难找到最齐全的CSS Hack,而且网上流传的CSS Hack基本上都需要按顺序来写,对于新手来说的话就会显得比较麻烦了。所以我们必须需要一份最完全的CSS Hack,他必须单独针对某个浏览器,而不需要繁琐的去排序。 最全的CSS Hack请往下面看吧!

/* 针对IE 6的专属CSS Hack */

#id{
_display: block;
}

IE6浏览器下只要在CSS属性前加上一个小下划线就行了。

/* IE 7 */
#id{
*display: block;
}

IE7浏览器下只要在CSS属性前加上一个星号就行了。

/* IE 8*/
#id{
margin-top: 10px \9; /*IE8*/
}

IE8浏览器下只要在CSS属性后面,分号前面打上一个空格然后反斜线加一个数字9就行了。

/* Firefox */
@-moz-document url-prefix()
{
#id{ display: block; }
}

火狐浏览器下,只要将CSS代码写入到 @-moz-document url-prefix(){ } 里面就行了。

/* Safari */
@media screen and (-webkit-min-device-pixel-ratio:0)
{
#id { display: block; }
}

苹果的Safair和火狐差不多,写到 @media screen and (-webkit-min-device-pixel-ratio:0){ } 这里面。

/* Opera */
@media all and (-webkit-min-device-pixel-ratio:10000), not all and (-webkit-min-device-pixel-ratio:0)
{
head~body #id { display: block; }
}

Oprea也是照葫芦画瓢。

PS:上面的CSS样式中的“#id” 就是需要渲染的元素。也可以是class。CSS Hack虽然可以解决浏览器的兼容性问题,但是却通不过W3C的验证,不说话又说回来浏览器都不标准还管得着W3C标准吗。

感谢 王强 的投稿