`
yhjhoo
  • 浏览: 154353 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

css hack 收集 2

阅读更多

前言

每次要找个东西都得慢慢去翻自己收集的一些东西,每次都是那么花时间,再加上有时存放时间久远就忘了当时是存在哪了,为了方便查询及阅读,决定把一些CssHack 收集起来...

1.区别不同浏览器,CSS hack写法:

区别IE6FF:
background:orange;*background:blue;
区别IE6IE7:
background:green!important;background:blue;
区别IE7FF:
background:orange;*background:green;
区别FFIE7IE6:
background:orange;*background:green!important;*background:blue;
注:IE都能识别*;标准浏览器(如FF)不能识别*;
IE6能识别*,但不能识别 !important,
IE7能识别*,也能识别!important;
FF不能识别*,但能识别!important;
IE6 IE7 FF
* ×
!important ×
另外再补充一个,下划线"_",IE6支持下划线,IE7FF均不支持下划线。 于是大家还可以这样来区分IE6IE7FF: background:orange;*background:green;_background:blue; 注:不管是什么方法,书写的顺序都是FF的写在前面,IE7的写在中间,IE6的写在最后面。

2.!important

随着IE7对!important的支持, !important 方法现在只针对IE6的HACK.(注意写法.记得该声明位置需要提前.)
<style>
#wrapper
{
width: 100px!important; /* IE7+FF */
width: 80px; /* IE6 */
}
</style>

3.IE6/IE7对FF

1.*+html 与 *html 是IE特有的标签, firefox 暂不支持. 而*+html 又为 IE7特有标签.

<style> #wrapper { #wrapper { width: 120px; } /* FireFox */ *html #wrapper { width: 80px;} /* ie6 fixed */ *+html #wrapper { width: 60px;} /* ie7 fixed, 注意顺序 */ } </style>

2.表达方式:+property:value

测试环境:IE5,IE6 ,IE7,FF1.5,FF2.0,Opera 9,Safari 2 测试结果: IE5,IE6 ,IE7浏览器识别; FF2.0,Opera 9,Safari 2浏览器不识别。 结论:我们可以用"+"来实现只有IE识别的CSS Hack。 比如我们要实现在IE中500px的宽度,而在其他浏览器480px的宽度,就可以通过"+" Hack来完成,如下: #hack { width:500px; +width:480px; /*only IE*/ }

3.用于内联css

##wrapper { height:20px; /*For Firefox*/ *height:25px; /*For IE7 & IE6*/ _height:20px; /*For IE6*/ }

5.IE7的hack

>body html* *+html这三种写法,其中前两种都是不合法的 CSS 写法,在标准兼容浏览器中被被忽略,但是 IE7 却不这么认为。 对于 >body ,它会将缺失的选择符用全局选择符 * 代替,也就是将其处理成了 *>body,而且不光对于 > 选择符,+,~ 选择符中这个现象也存在。对于 html* ,由于 html 和 * 之间没有空格,所以也是一种 CSS 语法错误,但 IE7 不会忽略,而是错误地认为这里有一个空格。对于第三种 *+html,IE7 认为 html 前面的 DTD 声明也是一个元素,所以 html 会被选中,这三种方法中只有这一种方法是合法的 CSS 写法,也就是说可以通过校验器的验证,因此也是作者推荐的 hack 用法。

6.IE6 不能识别

html/* */ >body #box { color: red; }IE6 字体不会变成红色

7.屏蔽IE浏览器(也就是IE下不显示)

*:lang(zh) select {font:12px !important;}/*FF,OP可见,特别提醒:由于Opera最近的升级,目前此句只为FF所识别*/select:empty {font:12px !important;}/*safari可见*/ 这里select是选择符,根据情况更换。第二句是MAC上safari浏览器独有的。

8.仅IE7与IE5.0可以识别

*+html select {…}当面临需要只针对IE7与IE5.0做样式的时候就可以采用这个HACK。

9.仅IE7可以识别

*+html select {…!important;}当面临需要只针对IE7做样式的时候就可以采用这个HACK。

10.IE6及IE6以下识别

* html select {…}这个地方要特别注意很多博客都写成了是IE6的HACK其实IE5.x同样可以识别这个HACK。其它浏览器不识别。html/**/ >body select {…}这句与上一句的作用相同。

11.仅IE6不识别,屏蔽IE6

select { display /*屏蔽IE6*/:none;}这里主要是通过CSS注释分开一个属性与值,注释在冒号前。

12.仅IE6与IE5不识别,屏蔽IE6与IE5

select/**/ { display /*IE6,IE5不识别*/:none;}这里与上面一句不同的是在选择符与花括号之间多了一个CSS注释。不屏蔽IE5.5

13.仅IE5不识别,屏蔽IE5

select/*IE5不识别*/ {…}这一句是在上一句中去掉了属性区的注释。只有IE5不识别,IE5.5可以识别。

14.盒模型解决方法

select {width:IE5.x宽度; voice-family :"\"}\""; voice-family:inherit; width:正确宽度;}盒模型的清除方法不是通过!important来处理的。这点要明确。

15.盒模型解决方法

select:after {content:"."; display:block; height:0; clear:both; visibility:hidden;}在Firefox中,当子级都为浮动时,那么父级的高度就无法完全的包住整个子级,那么这时用这个清除浮动的HACK来对父级做一次定义,那么就可以解决这个问题。

16.只有Opera识别

@media all and (min-width: 0px){ select {……} }针对Opera浏览器做单独的设定。

17.IE5.x的过滤器,只有IE5.x可见

@media tty { i{content:"\";/*" "*/}} @import 'ie5win.css'; /*";} }/* */

18.IE5/MAC的过滤器,一般用不着

@media all and (min-width: 0px){ select {……} }针对Opera浏览器做单独的设定
分享到:
评论

相关推荐

    CSS Hack Table

    CSS Hack Table CSS Hack栏目收集常见CSS bug漏洞兼容问题,并提供DIV CSS hack的解决方法。简单地讲,css hack指各版本及各品牌浏览

    ie6,ie7,ie8和FF下CSS解决兼容性大全(CSS HACK)

    搜集整理的CSS HACK,也即是在多种浏览器(主要是ie6 ie7 ie8 ff)下样式统一的解决办法。 内容还是较全的,前台开发中常见的兼容性问题都可以找到解决方法,值得研究。 包括各浏览器CSS hack,技巧。有实例。

    css hack div 布局

    css 浏览器兼容性div 布局 收集了大量css浏览器兼容性代码

    css hack 文档集合

    写了有不少网页了,css的兼容性代码也写了不少,将收集的一些常用的hack方法打包上传共享下~ 下面是最常用的三种hack方式 第一种: .div { background:orange;/*ff*/ *background:green !important;/*ie7*/ ...

    css和js hack手册

    浏览器渲染页面的方式各不相同,甚至同一浏览器的不同版本(“杰出代表”是 IE)也有差异。...这篇文章就向大家分享 Browserhacks 帮我们从网络上收集的各个浏览器特定的 CSS & JavaScript Hack,记得推荐和分享啊!

    CSS Hack收集汇总

    收集了一些CSS Hack方便解决令人头疼的兼容性问题的时候查询

    CSS HACK收集:关于IE6/FF/google等浏览器hack的方法详细

    一、IE6 下 a标签嵌套img标签IE下会有边框,那是超链接默认的样式,解决办法:img{border:0 none;} 1、终极方法:条件注释 &lt;!–[if lte IE 6]&gt; 这段文字仅显示在 IE6及IE6以下...–在 IE6及IE6以下版本中加载css–

    比较全的CSS浏览器兼容问题整理总结

    CSS对浏览器的兼容性有时让人很头疼,或许当你了解当中的技巧跟原理,就会觉得也不是难事,从网上收集了IE7,6与Fireofx的兼容性处理方法并 整理了一下.对于web2.0的过度,请尽量用xhtml格式写代码,而且DOCTYPE 影响 CSS ...

    webfex:网络 fex 研究

    对Web标准的理解、浏览器内核差异、兼容性、hack、CSS基本功:布局、盒子模型、选择器优先级及使用、HTML5、CSS3、移动端适应。 其他 HTTP、安全、正则、优化、重构、响应式、移动端、团队协作、可维护

    ajax验证码异步刷新源码新手java-front-end-face-questions:史上最全前端开发面试问题及答案整理

    对Web标准的理解、浏览器内核差异、兼容性、hack、CSS基本功:布局、盒子模型、选择器优先级及使用、HTML5、CSS3、移动端适应。 JavaScript: 数据类型、面向对象、继承、闭包、插件、作用域、跨域、原型链、模块化...

    程序员面试刷题的书哪个好-Interview-questions:分享自己整理的前端面试题及答案

    对Web标准的理解、浏览器内核差异、兼容性、hack、CSS基本功:布局、盒子模型、选择器优先级及使用、HTML5、CSS3、移动端适应。 JavaScript: 数据类型、面向对象、继承、闭包、插件、作用域、跨域、原型链、模块化...

    311-data:赋予邻里协会以311个数据来改进其举措的分析

    赋予洛杉矶居委会以从城市311系统收集的数据来分析计划的能力。 项目技术 前端 Javascript(React式) Redux 布尔玛 HTML / CSS 有关311数据客户端技术的更多信息,。 服务器/ API FastAPI:异步Python REST API...

    Storm-Breaker:使用Ngrok的工具社交工程[访问网络摄像头和麦克风以及Os密码收集器和位置查找器]

    具有吸引力的工具特征: 未经许可获取设备信息访问位置[智能手机] Os Password Grabber [WIN-10] 访问网络摄像头存取麦克风经过测试的操作系统卡利Linux 2020在Kali Linux上安装$ git clone ...

Global site tag (gtag.js) - Google Analytics