【转】IE浏览器CSS BUG集锦
Internet Explorer CSS Bugs
Overview
Internet Explorer is famous for not supporting many of CSS properties as well as contaning numerous bugs in the ones it supports.
This page lists problems in Internet Explorer, samples demontrating them as well as solutions where such are known.
Even though I've tried to classify the bugs based on their nature, many bugs can be classified under several sections in which case the bug will appear only under General Bugs section.
Stats
Currently the site contains 46 "General Bugs" tutorials, 5 "hasLayout Bugs" tutorials, 6 "No Support Workarounds"tutorials and 1 "Crash Bugs" tutorials; all that totals to 58 tutorials and 70 solutions.
Latest tutorial was published on: Wed Aug 19 15:38:47 2009.
The site contains 44 IE6 bugs, 28 IE7 bugs and 19 IE8 bugs.
Note on Versions
In tutorials you'll see phrases such as "Affected: IE8 and all below" or "Fixes: all versions". By "all" I mean IE6, IE7 and IE8.IE5 and IE5.5 are history and this site does not consider those versions in the tutorials and solutions.
General Bugs
This section contains IE bugs that don't quite fit into other section or can be classified into two or more sections at the same time.
| Bug Name | Affected Versions | Description |
|---|---|---|
| Image Label Focus Bug | IE8, IE7, IE6 | <img> elements that are inside <label> elements, when clicked, do not cause the focus to be transfered to corresponding form control. |
| No Auto-Margin Center on Buttons Inconsistency | IE8 | Button-like elements do not get centered when { display: block; margin-left: auto; margin-right: auto; } applied on them and `width` is not explicitly set |
| Incorrect Float Shrink-Wrap Bug | IE7, IE6 | Floated elements that follow other floated elements and have `clear` set do not shrink-wrap correctly |
| Document Scrollbars Overflow Inconsistency | IE7, IE6 | Unconventional default value for `overflow` on <html> element that may appear as a bug with regard to `overflow` on <body>. |
| Float Squeeze Weird Gap Bug | IE7, IE6 | A gap appears between last and second last floated elements that are stacked vertically. |
| Float Squeeze Duplicate Last Character Bug | IE7, IE6 | Last character of a floated element is duplicated. |
| Empty Element Height Bug | IE7, IE6 | Empty elements that have "layout" obtain height |
| Form Control Double Margin Bug | IE7, IE6 | horizontal margins on <input> and <textarea> elements are "inherited" from the ascendant with a margin and "layout" |
| IE7 1px Dotted Border Appears As Dashed Bug | IE7 | 1 pixel dotted border appears as dashed when at least one of the border sides is styled of a width larger than 1px |
| Relative Overflow Failure Bug | IE7, IE6 | Elements with `overflow` set to either `hidden` or `auto` behave as if overflow was set to `visible` when descendants that are causing overflow have position: relative set on them |
| IE7 "Broken" :hover Absolute Bug | IE7 | :hover that changes left/top offsets of an absolutely positioned descendant does not appear to "work" if the element is hidden out of the view; if it's visible, the left/top offsets do not change on :hover |
| Button Background Shift On :active Bug | IE8 | Background shifts up and to the left on :active state when applied to <button> or <input type="submit"> |
| Ignored :focus Bug | IE8 | A ruleset, selector of which contains :focus that is followed by another simple selector, is ignored |
| Invisible Hover Border Bug | IE8 | Bottom border on :hover state either does not appear completely or is 1 pixel short (or cancels out outline) when outline is set |
| Percentage Padding Margin Bug | IE8 | Vertical margins appear to collapse upon a specific combination of vertical padding set in percentages as well as border or padding set on the parent's parent |
| Image Float Bullet Chaos Bug | IE8 | Incorrect position or no rendering at all of list markers (bullets) when list items have floated images |
| Non-Inherited TH Text-Align Bug | IE8 | text-align value of ascendant isn’t inherited by the TH element |
| 32 Styles Limitation | IE8, IE7, IE6 | Styles are ignored when they are set in the 32nd (or later) style method (i.e. <style>, <link> or @import) |
| Hover White Background Ignore Bug | IE7 | background does not change on :hover |
| IE7 Child Selector Comment Bug | IE7 | A selector containing child selector that is followed by a comment is ignored |
| Star HTML Bug | IE6 | * html selector is not ignored in IE6 (due to unversal selector being ignored when it's the first part of the selector) |
| IE6 !important Ignore Bug | IE6 | !important keyword is being ignored when the same rule is set again later in the same ruleset |
| PNG Image and Background Color Mismatch | IE8, IE7, IE6 | Colors specified in CSS differ from the ones used in PNG images despite having the same color code |
| No Auto Margin Center Pseudo-Bug | IE8, IE7, IE6 | side margins set to value `auto` do not center a block-level element |
| :first-line !important Rule Ignore Bug | IE8 | rules inside :first-line pseudo-class are completely ignored when !important modifier is used |
| :first-letter Ignore Bug | IE6 | The entire :first-letter ruleset is ignored |
| :first-letter !important Rule Ignore Bug | IE8 | rules inside :first-letter pseudo-class are completely ignored when !important modifier is used |
| Partial Click Bug v2 | IE7, IE6 | only text is clickable/reactant to :hover on links [(optional) until the mouse cursor rolls over the actual text] |
| Staircase Bug | IE7, IE6 | Floated elements stack up like a staircase |
| Disappearing List Background Bug | IE6 | Background on <li>, <dt>, <dd> disappears |
| noscript Ghost Bug | IE8, IE7, IE6 | <noscript> elements shows up when scripting is enabled; only borders/background is showing from it |
| No Transparency Click Bug | IE8, IE7, IE6 | transparent areas of background image on links is not clickable when `filter` is used to fix PNG transparency |
| List Drop Shift Bug | IE8 | Stuff in <li>s drops down below the bullet |
| No Increase on <ol> Numbers Bug | IE7, IE6 | The numbers on <ol> elements do not increase on subsequent <li>s |
| No Bullets on <ul> and <ol> Bug | IE7, IE6 | Bullets/numbers disappear from <ul> and <ol> elements |
| No line-height Vertical Center on Images Bug | IE7, IE6 | Images are not vertically centered using line-height method |
| No Background Image Bug | IE8, IE7, IE6 | No background appears in IE when background image is used (using `background` shorthand property) |
| Custom Cursor Bug | IE8, IE7, IE6 | custom cursors do not appear in IE |
| Leaking Background Bug | IE6 | Background leaks out from the element onto other elements that are next in the flow. |
| Expanding Height Bug | IE6 | Element is longer than the specified height (mostly applies to small heights). |
| Expanding Width Bug | IE6 | Element is wider than the specified width. |
| Double Margin Bug | IE6 | Left and right margins are doubled on floated elements. |
| Negative Margin Bug | IE7, IE6 | Part of the element that is outside the container disappears when negative margins are used |
| Italics Float Bug | IE6 | Element drops below floated element with italized text. |
| 3px Gap Bug aka Text Jog Bug | IE6 | Elements next to a floated one either have a three pixel gap or drop below or keep shifting when several elements are floated. |
| Text-Align Bug | IE7, IE6 | text-align property affects block-level elements |
hasLayout Bugs
IE bugs that are caused by elements having or not having "layout"
| Bug Name | Affected Versions | Description |
|---|---|---|
| Scared of Floats Bug | IE7, IE6 | elements with layout clear floats instead of going around floated elements |
| Border Chaos Bug | IE6 | borders displayed chaotically; e.g. drawn where not should be or missing |
| Sub-Hover Bug | IE6 | Rules with selectors such as a:hover foo{} do not "work" |
| Partial Click Bug | IE6 | Only text is clickable on links (<a>) that are styled with display: block and thus have extra clickable area in standard compliant browsers |
| Disappearing Content Bug | IE6 | Some content disappears and reappears on scrolling or window transformation as well as minimizing and maximazing of the window. |
No Support Workarounds
Various workarounds producing effect of properties and property values which are not implemented in IE.
| Workaround Name | Affected Versions | Description |
|---|---|---|
| No Child Selector Support Workaround | IE6 | Child selector is ignored |
| Max-Height Workaround | IE6 | max-height is not supported |
| Max-Width Workaround | IE6 | max-width is not supported |
| Opacity | IE8, IE7, IE6 | opacity property is not supported |
| Min-Width Workaround | IE6 | min-width property is not supported |
| Min-Height Workaround | IE6 | min-height property is ignored |
【转】IE浏览器CSS BUG集锦的更多相关文章
- 认识hasLayout——IE浏览器css bug的一大罪恶根源 (转)
认识hasLayout--IE浏览器css bug的一大罪恶根源 转 什么是hasLayout?hasLayout是IE特有的一个属性.很多的ie下的css bug都与其息息相关.在ie中,一个元素要 ...
- 认识hasLayout——IE浏览器css bug的一大罪恶根源
原文地址:http://neverned.blog.163.com/blog/static/1265524200933021130561/ 什么是hasLayout?hasLayout是IE特有 ...
- 浏览器css bug及bug解决方法
Bugs及解决方案列表(以下实例默认运行环境都为Standard mode): 如何在IE6及更早浏览器中定义小高度的容器? 方法: #test{overflow:hidden;height:1px; ...
- 【转载】IE浏览器常见的9个css Bug以及解决办法
IE浏览器常见的9个css Bug以及解决办法 我们在浏览网页的时候经常看见这样的现象:某个网页在IE6浏览器中打开很正常,但是在IE8里面打开可能完全变形了.或者也有可能出现完全相反的现象.这让We ...
- ie6,ie7,ie8 css bug兼容解决方法
IE浏览器以不支持大量的css 属性出名,同时也因其支持的css属性中存在大量bug. 这里收集了好多的bug以及其解决的办法,都在这个文章里面记录下来了!希望以后解决类似问题的时候能够快速解决,也希 ...
- ie6,ie7,ie8 css bug兼容解决记录
ie6,ie7,ie8 css bug兼容解决记录 转载自:ie6,ie7,ie8 css bug兼容解决记录 - 前端开发 断断续续的在开发过程中收集了好多的bug以及其解决的办法,都在这个文章里面 ...
- 彻底解决Google浏览器CSS居中问题
div做的界面时,又出现CSS hack(CSS兼容浏览器问题)在IE内核浏览器或者firefox浏览器中都能居中,没有居中的可以用其特殊标签来设定居中,如下划线 _ IE6优先识别,!importa ...
- 关于IE6的一些常见的CSS BUG处理
CSS BUG:样式在各浏览器中解析不一致的情况,或者说CSS样式在浏览器中不能正确显示的问题称为CSS BUG: CSS Hack:css hack是指一种兼容css 在不同浏览器中正确显示的技巧方 ...
- Normalize.css源码注释翻译&浏览器css兼容问题的理解
版本v5.0.0源码地址: https://necolas.github.io/normalize.css/5.0.0/normalize.css 翻译版: /*! normalize.css v5. ...
随机推荐
- BIO,NIO,AIO(NIO2)的理解
写在前面,这里所说的IO主要是强调的网络IO 1.BIO(同步并阻塞) 客户端一个请求对应一个线程.客户端上来一个请求(最开始的连接以及后续的IO请求),服务端新建一个线程去处理这个请求,由于线程总数 ...
- Java设计模式(8)——策略模式
一.策略模式定义 Strategy模式也叫策略模式是行为模式之一,它对一系列的算法加以封装,为所有算法定义一个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实现,具体的算法选择交由客户 ...
- Java学习总结1
1. 断点调试 a:定位(设置断点) b:启动调试 c:单步执行 观察变量(F5单步执行 F6单步跳过)d:修改2 static 静态 静态成员,为类的所有对象共享 在静态方法中,只能 ...
- optimizer_switch引起的诡异问题
参数描述 MySQL中不同的版本优化器会有很多新特性,比如MRR.BKA等,optimizer_switch这个参数就是控制查询优化器怎样使用这些特性.很多情况下我们会根据自身的需求去设置optimi ...
- Python遇到ModuleNotFoundError: No module named 'email.mime'; 'email' is not a package问题的处理办法
写Python的时候我们会遇到如下的错误: Traceback (most recent call last): File "F:/exploitation/codes/python/Jet ...
- springboot+cfx实现webservice功能
一.开发服务端 1.新建工程 cfx-webservice ,最终的完整工程如下: pom.xml如下: <?xml version="1.0" encoding=" ...
- 微信小程序踩坑集合
1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=1476434678461 2:简易教程:https://mp.weixin.qq.com/debu ...
- HDMI之HPD
HDMI(19Pin)/DVI(16 pin)的功能是热插拔检测(Hot Plug Detect,HPD),这个信号将作为主机系统是否对HDMI/DVI是否发送TMDS信号的依据.HPD是从显示器输出 ...
- 基于udp协议的套接字,socketserver模块,多道技术,进程理论
进程指的是一个正在进行/运行的程序,进程是用来描述程序执行过程的虚拟概念 进程vs程序 程序:一堆的代码 进程:程序执行的过程 进程的概念起源于操作系统,进程是操作系统最核心的概念,操作系统的其他所有 ...
- Monkey and Banana (hdu 1069)
http://acm.hdu.edu.cn/showproblem.php?pid=1069 题目描述: 给你n个箱子, 给你箱子的长宽高,箱子是可以无限使用的,问这些箱子摞起来最多能多高? 这些 ...