欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

这段代码在IE6下不正常,是IE6的bug么?_html/css_WEB-ITnose

程序员文章站 2024-01-12 08:56:22
...
ie6
test

以上代码,在IE8 IE9 Firefox Chrome均成正常显示,显示成:
111 中文
333 444

但在IE6下,显示成了:
111 中文
   333
444

即在“中文”后面空了一个位置。如果把中文改成 222 ,则又显示正常。

这是怎么回事,如何改?

回复讨论(解决方案)

加个height好像就可以了

ul li {
float:left;
width:40%;
margin:5px;
background-color:#cccccc;
height:20px;
}

LZ 的代码有中文,但是没有设置中文的 字体,给它设置个 字体就行了。
另外在 IE6 下有个经典的 BUG,浮动产生的双倍边距,所以 LI 需要加上 display:inline;

LZ 的代码有中文,但是没有设置中文的字体,给它设置个字体就行了。
另外在 IE6 下有个经典的 BUG,浮动产生的双倍边距,所以 LI 需要加上 display:inline;

设了宋体之后确实好了。为什么啊,中文必须设置字体吗?

具体原因我也不清楚,不过一般性都会默认设置字体吧。

加个height好像就可以了

ul li {
float:left;
width:40%;
margin:5px;
background-color:#cccccc;
height:20px;
} 加了之后确实好了,就是不知什么原因,只有IE6如此。

LZ 的代码有中文,但是没有设置中文的字体,给它设置个字体就行了。
另外在 IE6 下有个经典的 BUG,浮动产生的双倍边距,所以 LI 需要加上 display:inline;

就像div,display:inline;设置 排列在一行

引用 2 楼 athrunzero 的回复:LZ 的代码有中文,但是没有设置中文的字体,给它设置个字体就行了。
另外在 IE6 下有个经典的 BUG,浮动产生的双倍边距,所以 LI 需要加上 display:inline;

就像div,display:inline;设置 排列在一行 我这个问题和display设置好像没有关系。