近期遇到的CSS问题汇总

  1. 在中英文混排的情况下,对于IE6的行高bug,推荐还是先统一为中文字体(宋体或者雅黑),再使用 vertical-align: middle; 可以减少时间上的浪费。

  2. IE6一个已知的BUG:当某position:relative元素被带有overflow:auto/scroll 属性的块级元素包含时,会表现出postion:absolute 的行为。 解决方法: 1.为包含块元素添加属性 position:relative 。2.把该元素的position:relative属性去掉,使用默认的 static 定位,并通过 margin 等属性实现类似的效果。

  3. IE6的z-index bug,可在需要浮在上方的元素中添加 iframe 且设置为同等宽高 z-index 位于其下,则可借助IE6“将iframe浮于所有元素之上”解决:这是个贱方法,没事儿千万别用。

  4. IE6重复内容bug:一个元素包含2两个具有 float 样式的子元素;第二个子元素的宽度大于父元素的宽度,或者父元素宽度减去第二个子元素宽度的值小于3px;第二个子元素前存在注释。如果满足以上条件,第二个子元素中的内容会部分重复出现。

  5. IE6中,DOCTYPE 之前有任何非空字符都会触发怪异模式;在IE7下,DOCTYPE 之前有XML文档声明不触发,但在 DOCTYPE 和XML文档声明之间有任何非空字符仍然会触发怪异模式。

  6. 对于IE6把 height 当作 min-height 的状况,overflow: hidden 有时真是一剂救命良方。

  7. 对于块级元素与行内级元素,除了盒模型在纵向上的差异,布局上的影响也值得留意——行内级元素在拥有positionfloat属性之后会表现出部分块级元素的属性。

  8. 在写完 float + margin 的配合之后,顺手在IE6样式中带一句display: inline;可以省却很多日后不必要的麻烦

29th November 2009 1 Comment Permalink

1 Comment

  1. 看不懂,嘻嘻