常用CSS HACK

IE6 3像素bug和双边距bug一样的经典

现象:
IE6下浮动元素和不浮动元素之间会有3px间隙(3px bug,div.float-left + div.float-none)

解决
需设置 div.float-left{ margin-right:-3px;}


选择器hack * (只有IE6-能识别)

  • * html IE6认为最外层的元素不是html ,而是* 。 html是*的子元素
    .abc.aclassSelector{} (不存在样式成分忽略 IE6=)

  • *+html selector{} IE7

  • selector,{} (IE6/7 并列关系符不当 包容)

属性前缀hack

  • 前缀 * 只有 IE6/7能识别 *padding-left:50px;

  • 前缀_ _margin-right:-3px; IE6 only

属性值 hack

  • !important (只有IE6不起提升优先级的作用)
    padding-left:50 !important; IE 7/8/9/firefox遇到 !important将提升该样式属性的优先级,IE 6能识别 !important 但没有提升样式属性优先级的作用。

  • \9 (只有IE能识别)
    padding-left:50px \9; IEhack \9,所有IE浏览器都识别 \9

总结

IE 6 css hack : * html, _height, color:blue !important; color:red;

IE 6/7 css hack: *height:100px;

IE css hack: height:100px \9;

常用CSS HACK的更多相关文章

  1. CSS Hack汇总快查(CSS兼容代码演示)

    文章出处和来源网址:http://www.divcss5.com/css-hack/c284.shtml 以下是常用CSS HACK问题及解决代码-DIV+CSS网支持 1.屏蔽IE浏览器(也就是IE ...

  2. 兼容不同浏览器的 CSS Hack 写法

    所谓 CSS Hack,是指在 CSS 代码中嵌入诸如 *,*html  等代码,方便于独立控制某种浏览器的具体样式.比如有些 CSS Hack 只能被 IE6 或 IE7 识别,而 Firefox ...

  3. 用CSS hack技术解决浏览器兼容性问题

    什么是CSS Hack? 不同的浏览器对CSS的解析结果是不同的,因此会导致相同的CSS输出的页面效果不同,这就需要CSS Hack来解决浏览器局部的兼容性问题.而这个针对不同的浏览器写不同的CSS ...

  4. CSS Hack技术介绍及常用的Hack技巧集锦

    一.什么是CSS Hack? 不同的浏览器对CSS的解析结果是不同的,因此会导致相同的CSS输出的页面效果不同,这就需要CSS Hack来解决浏览器局部的兼容性问题.而这个针对不同的浏览器写不同的CS ...

  5. 常用的CSS Hack

    一.什么是CSS Hack? 不同的浏览器对CSS的解析结果是不同的,因此会导致相同的CSS输出的页面效果不同,这就需要CSS Hack来解决浏览器局部的兼容性问题.而这个针对不同的浏览器写不同的CS ...

  6. CSS Hack技术介绍及常用的Hack技巧

    一.什么是CSS Hack? 不同的浏览器对CSS的解析结果是不同的,因此会导致相同的CSS输出的页面效果不同,这就需要CSS Hack来解决浏览器局部的兼容性问题.而这个针对不同的浏览器写不同的CS ...

  7. 常用的CSS Hack技术集锦

    来源:http://www.ido321.com/938.html 一.什么是CSS Hack? 不同的浏览器对CSS的解析结果是不同的,因此会导致相同的CSS输出的页面效果不同,这就需要CSS Ha ...

  8. CSS hack常用方案(摘选)

    邮箱因为默认了line-height?:170%,导致采用table元素时继承问题,可以采用line-height:50% 很好解决. 常 在使用float时,后面的显示不正常,因为继承了float了 ...

  9. 【10】css hack原理及常用hack

    [10]css hack原理及常用hack 原理:利用不同浏览器对CSS的支持和解析结果不一样编写针对特定浏览器样式.常见的hack有1)属性hack.2)选择器hack.3)IE条件注释 IE条件注 ...

随机推荐

  1. 接收Dialog的值

    System.Windows.Forms.DialogResult result = MessageBoxEx.Show("保存成功", Language.String.Hint, ...

  2. 如何设置MySQL数据库名、表名大小写敏感

    在 MySQL 中,数据库和表其实就是数据目录下的目录和文. 因而,操作系统的敏感性决定数据库和表命名的大小写敏感.这就意味着数据库和表名在 Windows 中是大小写不敏感的,而在大多数类型的 Un ...

  3. 【servlet3.0新特性】Annotation注解配置

    servlet3.0新特性Servlet3.0引入的若干重要新特性,包括异步处理.新增的注解支持.可插性支持等等,为读者顺利向新版本过渡扫清障碍.Servlet3.0新特性概述Servlet3.0作为 ...

  4. 通过SocketLog快速分析php程序

    转载自http://www.thinkphp.cn/topic/10846.html 正在运行的API有bug,不能var_dump进行调试,因为会影响client的调用.这时候用SocketLog最 ...

  5. Python中文显示问题

    默认pyhon使用ASCII码来解释程序的,默认不支持中文,需要在程序的第一行或者第二行声明编码. 官方解决方案:https://www.python.org/dev/peps/pep-0263/ T ...

  6. 翻译 GITHUB上HOW TO BE A GOOD PROGRAMMER

    转载请注明出处: http://www.cnblogs.com/hellocwh/p/5184072.html 更多内容点击查看 https://ahangchen.gitbooks.io/windy ...

  7. SQL Server 向堆表中插入数据的过程

    堆表中  IAM 记录着的数据页,表的各个数据页之间没有联系.也就是说一个页面它不会知道自己的前一页是谁,也不知道自己的后一页是谁. 插入数据时先找到IAM页,再由pfs(page free spac ...

  8. android 栈方式退出

    介于list退出方式会使内存溢出,使用自己维护栈的方式. 参考: http://www.2cto.com/kf/201312/265523.html http://www.cnblogs.com/ma ...

  9. 接口返回json

    use Mojolicious::Lite; use JSON qw/encode_json decode_json/; # /foo?user=sri get '/api' => sub { ...

  10. 柯南君:看大数据时代下的IT架构(5)消息队列之RabbitMQ--案例(Work Queues起航)

    二.Work Queues(using the Java Client) 走起   在第上一个教程中我们写程序从一个命名队列发送和接收消息.在这一次我们将创建一个工作队列,将用于分发耗时的任务在多个工 ...