当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 网页制作教程:在IE7中的网页文本重影问题

CSS样式表
CSS中的text-shadow属性
利用CSS3特性和浏览器中的工具进行网页设计
使用CSS3将你的网站设计推向未来
网页设计师福音:CSS网格布局生成器
CSS教程:汇总让IE6崩溃的几种方法
CSS教程:快速提升设计可读性和维护性
HTML5和CSS3给网站设计带来出色效果
CSS选择器大全
TypeSelect实现网页嵌入字体
CSS样式表尽量放到网页头部
CSS3的优势以及网页设计师如何使用CSS3技术
CSS样式表中引用图片地址在各浏览器中的差异
5种给CSS样式表瘦身减肥的方法
英文教程:50个网页制作中应用的CSS技巧
用CSS3将你的设计带入下个高度
CSS教程:新的图像替换方法
创造100%功能自适应css布局的行之有效的方法
轻松搞定IE的CSS制作网页技巧3则
网页设计应该熟知的CSS 3.0技术
制作网页常用的50种CSS工具

CSS样式表 中的 网页制作教程:在IE7中的网页文本重影问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-03   浏览: 60 ::
收藏到网摘: n/a

在做项目开发时遇到了一个怪异现象“整段内容被重影”的问题,一般来说这类问题在IE6中表现的比较多,但这次出人意料的是IE7也殃及在内。在早前互联网上就有分享过使用HTML注释会引起类似的文字倒影问题,但此时的页面却是没有任何注释~,持续地测试分析问题变得越来越有趣了…

测试结果为当不适当地使用float:left/right; width:100%; display:none;CSS属性值及相应的HTML结构做组合,会引发在IE中的七种怪异问题,此问题在中文及英文字体均会出现。详细如下例:

阅读约定:
cont1是指:<p class=”cont1″>ABCDEFG</p>
cont2是指:<p class=”cont2″>1234567</p>

一、相等长度的文本消失

在IE6中,cont1与cont2字符长度相同时,文本会消失,且容易引起浏览器IE6崩溃。

但改变浏览器窗口尺寸时内容会再次显示。

注意:测试了IE Collection的:6.0.2900.5512.xpsp_sp2_qfe.090206-1239IC版本出现此问题

DEMO:http://blog.gulu77.com/demo/200908/float/a1.html

相等长度的文本消失

二、当浏览器宽度少于内容宽度文本会消失

在IE6中,当浏览器宽度少于内容宽度文本会消失,且容易引起浏览器崩溃。
但改变浏览器窗口尺寸时内容会再次显示。

注意:测试了IE Collection的:6.0.2900.5512.xpsp_sp2_qfe.090206-1239IC版本出现此问题

DEMO:http://blog.gulu77.com/demo/200908/float/a2.html



三、相等长度文本重影

在IE6中,cont2比cont1多出一个字符时,内容会被重映为相等长度的文本,且容易引起浏览器IE6崩溃。

DEMO:http://blog.gulu77.com/demo/200908/float/b1.html

相等长度文本重影

四、当浏览器宽度少于内容宽度文本会重影

在IE6中,cont2比cont1多出一个字符时,且浏览器宽度拉伸至小于内容宽度文本会完全重影。

此问题与第三个对比在于一个不需要拉伸,一个需要拉伸。

DEMO:http://blog.gulu77.com/demo/200908/float/b2.html

当浏览器宽度少于内容宽度文本会重影

五、文本的倒序重影

在IE6中,cont2比cont1多出两个字符或以上时文本会被倒序重影,且容易引起浏览器IE6崩溃。

规律为:重影字符数 = cont1的字符数 + 1个字符数

DEMO:http://blog.gulu77.com/demo/200908/float/c1.html

文本的倒序重影

六、内联元素引起的文本重影

在IE6中,浮动元素之间有不含内容的内联元素的标签(指内联标签或CSS模拟的内联标签)后会引起文本重影。

规律为:重影字符数 = 内联元素数量 * 2字符数 – 1个字符数

DEMO:http://blog.gulu77.com/demo/200908/float/d1.html

内联元素引起的文本重影

七、内联元素引起的IE6/7文本重影与消失

与第六的《内联元素引起的文本重影》类似,但在cont2后面添加了一个内联元素后会导致IE7也出现重影BUG。
而内联元素相加超出cont2字符数时,IE7表现正常,IE6则表现为消失。

规律为:重影字符数 = <span>数量 * 2字符数 – 1个字符数

DEMO:http://blog.gulu77.com/demo/200908/float/e1.html

内联元素引起的IE6/7文本重影与消失

而内联元素相加超出cont2字符数时,IE7表现正常,IE6则表现为消失。

注意:测试了IE Collection的:6.0.2900.5512.xpsp_sp2_qfe.090206-1239IC版本出现此问题

规律为:重影字符数 = <span>数量 * 2字符数 – 1个字符数

DEMO:http://blog.gulu77.com/demo/200908/float/e2.html

内联元素引起的IE6/7文本重影与消失

感激Mr.Q 提供的解决方法,很不错~ 给有问题的元素加上position:relative能一一对应解决问题。