IE8中的虚线边框渲染错误

时间:2010-08-12 12:47:59

标签: html internet-explorer rendering border hyphen

我在IE8中遇到了另一个问题 - 当滚动页面时,虚线边框会乱码并中断。

下面是两个展示行为的w3有效页面:HTML4过渡和XHTML1过渡。

在第一个例子中,我通过添加< input>发现了一个非常奇怪的问题修复方法。元件。只要它在那里,边框保持一个整体(见编辑)。

HTML4 Transitional:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>VALID HTML4 TR</TITLE>
<STYLE type="text/css">
#box {
 float: left;
 width: 200px;
 height: 2000px;
 border-right: dashed 1px black;
}
</STYLE>

</HEAD>
<BODY>

<DIV id="box"></DIV>

<INPUT><!-- REMOVE TO BREAK THE DASHED LINE ON SCROLL -->

</BODY>
</HTML>

XHTML1 Transitional:

这里&lt; input /&gt;魔法没有施放。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>VALID XHTML1 TR</title>
<style type="text/css">
#box {
 float: left;
 width: 200px;
 height: 2000px;
 border-right: dashed 1px black;
}
</style>

</head>
<body>

<div id="box"></div>

</body>
</html>

因此,

我需要的是第二个例子,与第一个相同的工作而不改变DTD。 欢迎任何想法。

由于


修改

&lt; input&gt; HTML4示例的魔力并不适合所有人,即使使用相同的IE8构建。

虚线样式的问题相同。

边框宽度&gt;边框不会中断1px的。

1 个答案:

答案 0 :(得分:1)

我认为您不应该使用黑客来弥补糟糕的浏览器行为。 最好接受浏览器中的内容和样式不同,并且不值得尝试在每个浏览器中查看完全相同的内容。

虽然实线有效吗?你可以为IE制作一个CSS文件,只使用略有不同的样式。