屏蔽IE浏览器(也就是IE下不显示)
*:lang(zh) select
{font:12px
!important;} /*FF,OP
可见,特别提醒:由于Opera最近的升级,目前此句只为FF所识别*/
select
:empty {font:12px
!important;} /*safari可见*/
这里select是选择符,根据情况更换。第二句是MAC上safari浏览器独有的。
仅IE7与IE5.0可以识别
*+html select
{…
}
当面临需要只针对IE7与IE5.0做样式的时候就可以采用这个HACK。
仅IE7可以识别
*+html select
{…!important;
}
当面临需要只针对IE7做样式的时候就可以采用这个HACK。
IE6及IE6以下识别
* html select
{…
}
这个地方要特别注意很多博客都写成了是IE6的HACK其实IE5.x同样可以识别这个HACK。其它浏览器不识别。
html/**/ >body select
{…
}
这句与上一句的作用相同。
仅IE6不识别,屏蔽IE6
select
{ display
/*屏蔽IE6*/:none
;}
这里主要是通过CSS注释分开一个属性与值,注释在冒号前。
仅IE6与IE5不识别,屏蔽IE6与IE5
select
/**/ { display
/*IE6,IE5不识别*/:none
;}
这里与上面一句不同的是在选择符与花括号之间多了一个CSS注释。不屏蔽IE5.5
仅IE5不识别,屏蔽IE5
select
/*IE5不识别*/ {…
}
这一句是在上一句中去掉了属性区的注释。只有IE5不识别,IE5.5可以识别。
盒模型解决方法
selct
{width:IE5.x宽度;
voice-family :"\"}\""; voice-family:inherit; width:正确宽度;
}
盒模型的清除方法不是通过!important来处理的。这点要明确。
清除浮动
select
:after {content:"."; display:block; height:0; clear:both; visibility:hidden;}
在Firefox中,当子级都为浮动时,那么父级的高度就无法完全的包住整个子级,那么这时用这个清除浮动的HACK来对父级做一次定义,那么就可以解决这个问题。
截字省略号
select
{ -o-text-overflow:ellipsis; text-overflow:ellipsis; white-space:nowrap; overflow:hidden; }
这个是在越出长度后会自行的截掉多出部分的文字,并以省略号结尾,很好的一个技术。只是目前Firefox并不支持。
只有Opera识别
@media all and (min-width: 0px){ select {……}
}
针对Opera浏览器做单独的设定。
以上都是写CSS中的一些HACK,这些都是用来解决局部的兼容性问题,如果希望把兼容性的内容也分离出来,不妨试一下下面的几种过滤器。这些过滤器有的是写在CSS中通过过滤器导入特别的样式,也有的是写在HTML中的通过条件来链接或是导入需要的补丁样式。
IE5.x的过滤器,只有IE5.x可见
@media tty {
i{content:"\";/*" "*/}} @import 'ie5win.css
'; /*";}
}/* */
IE5/MAC的过滤器,一般用不着
/*\*//*/
@import "ie5mac.css
";
/**/
IE的if条件Hack
<!--[if IE]> Only IE
<![endif]-->
所有的IE可识别
<!--[if IE 5.0]> Only IE 5.0
<![endif]-->
只有IE5.0可以识别
<!--[if gt IE 5.0]> Only IE 5.0+
<![endif]-->
IE5.0包换IE5.5都可以识别
<!--[if lt IE 6]> Only IE 6-
<![endif]-->
仅IE6可识别
<!--[if gte IE 6]> Only IE 6/+
<![endif]-->
IE6以及IE6以下的IE5.x都可识别
<!--[if lte IE 7]> Only IE 7/-
<![endif]-->
仅IE7可识别
以上内容可能并不全面,欢迎大家能和我一起把这些技巧都汇总起来,为以后工作的查询提供一个方便,同时在这里感谢那些研究出这些HACK的作者们。
分享到:
相关推荐
### CSS Hack 汇总快查 在网页开发过程中,由于不同浏览器对于CSS的支持程度存在差异,因此在实现页面布局时经常会遇到浏览器兼容性问题。为了解决这一问题,开发者们发明了各种CSS Hack技巧来确保网站能在不同的...
### CSS Hack 技术详解及应用 #### 一、引言 随着互联网技术的发展,Web前端开发变得越来越重要。然而,在实际开发过程中,一个不容忽视的问题便是**跨浏览器兼容性**。由于不同浏览器(包括同一浏览器的不同版本...
【CSS Hack技巧大全】 在网页开发中,CSS(层叠样式表)的兼容性问题一直是一个挑战,尤其是在处理不同浏览器间的表现差异时。CSS Hack是一种技术,用来解决这些差异,确保样式在各种浏览器中都能正确呈现。本文将...
### CSS Hack 汇总:解决 IE6,IE7,IE8 及 Firefox 的兼容性问题 在网页设计与开发领域,确保不同浏览器间的代码兼容性是一项挑战性的任务,尤其是在处理像 Internet Explorer 6(IE6)、IE7、IE8 和 Firefox 这些...
CSSHack解决兼容
"css hack, escape from css hack"的主题旨在探讨如何避免使用CSS hack,遵循更标准和可持续的实践。以下是一些关键知识点: 1. **使用CSS预处理器**:如Sass、Less或Stylus,它们提供了变量、嵌套规则和混合等功能...
史上最全的CSS hack方式一览.mhtml史上最全的CSS hack方式一览.mhtml史上最全的CSS hack方式一览.mhtml史上最全的CSS hack方式一览.mhtml史上最全的CSS hack方式一览.mhtml史上最全的CSS hack方式一览.mhtml史上最全...
各浏览器CSS hack兼容表各浏览器CSS hack兼容表
CSS Hack是一种针对不同浏览器之间解析CSS规则差异的技术,目的是确保CSS样式在各个浏览器中的一致性。在网页设计中,由于各个浏览器(尤其是Internet Explorer的早期版本)对CSS的实现存在差异,导致开发者需要采取...
**CSS Hack 概述** CSS Hack 是一种针对不同浏览器之间的CSS样式解析差异而采取的解决策略,目的是确保网站在各种浏览器上展现一致。由于不同浏览器对CSS规范的实现不尽相同,有时会出现某些样式在某个浏览器中生效...
css hack ie6 ie7 ie8 firefox等浏览器兼容性
CSS,Hack速查
这份名为“CSS HACK 兼容列表 Firefox,IE5,IE5.5,IE6,IE7,IE8.rar”的压缩包,提供了针对这些浏览器的CSS Hack解决方案,以确保在不同环境下页面的正常显示。 CSS Hack通常指的是利用浏览器解析CSS的bug或者特性,...
为了解决这些问题,开发者们发展出了一种技术,即“CSS Hack”,以确保样式在各种浏览器中表现一致。本篇文章将深入探讨CSS Hack以及其在解决浏览器兼容性问题中的应用。 首先,CSS Hack的核心在于利用浏览器解析...
CSS Hack 样式解析 CSS Hack 是一种解决不同浏览器中 CSS 解析差异的技术。由于不同的浏览器对 CSS 的解析认识不同,会导致生成的页面效果不同。因此,我们需要针对不同的浏览器写不同的 CSS,让它能够同时兼容不同...
值得注意的是,随着浏览器更新和CSS规范的统一,许多旧的CSS hack已经不再必要,开发者应尽量使用最新的CSS特性并遵循标准,以减少对hack的依赖。同时,持续关注浏览器的更新和新功能,可以帮助我们更好地应对未来的...
### 区别不同浏览器CSS Hack知识点详解 #### CSS Hack简介 在Web开发过程中,由于不同浏览器对CSS的支持程度不一,导致同一段CSS代码在不同的浏览器中可能呈现出不同的效果。为了确保网页能在各种浏览器中正常显示...
CSS Hack是一种针对不同浏览器之间的CSS解析差异而采取的技术策略,目的是确保网页在各种浏览器中都能得到预期的渲染效果。在Web开发中,由于Internet Explorer(尤其是IE6和IE7)与其他标准兼容的浏览器(如Firefox...