2012-07-22 54 views
0

我有一个HTML代码。有一张三行三列的桌子。每个单元格都有一些文字。一切都绝对定位。当我在不同的浏览器中看到这个HTML时,除IE之外,所有浏览器都能正确显示它。下面是有问题的HTML代码的一部分。如果您注意到,IE会将文本随后的每一行都移动。其余的浏览器没有这个问题。表格内部的绝对位置文本未正确对齐

<!DOCTYPE document PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<document xmlns="http://www.w3.org/1999/xhtml"> 
<meta name="Author" content="***"/> 
<meta name="DocumentName" content="Page"/> 
<meta name="Date" content="07/21/2012"/> 
<notice name="Page"> 
<html> 
<head> 
<style type="text/css"> 
div.Page61989 {} 
.f1 {font-family:Arial;font-size:10.00pt;font-style:normal;font-weight:normal;line-height:114%;} 
p.normal, table.normal, div.normal {text-align:left; text-indent:0; margin-top:0in; margin-right:0in; margin-bottom:0.0in; margin-left:0in; clear:left;} 
</style> 
</head> 
<body lang="EN-US" link="blue" vlink="purple"> 
<div class="Page61989" style="position:relative;height:1056px;width:816px;"> 
<table class="normal" style="width:578.00px;border-collapse:collapse;border:1.00px solid #FF9900;position:absolute;top:328.00px;left:120.00px;"> 
    <tr> 
     <td style="height:31.000px;width:192.000px;;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:0.00px;left:0.00px;" >This table has regular old</span><span class="f1" style=";position:absolute;top:16.00px;left:0.00px;" >square corners.</span></p> 
     </td> 
     <td style="height:31.000px;width:192.000px;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:0.00px;left:192.00px;" >Cell 2 Row 1</span></p> 
     </td> 
     <td style="height:31.000px;width:192.000px;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:0.00px;left:384.00px;" >Cell 3 Row 1</span></p> 
     </td> 
    </tr> 
    <tr> 
     <td style="height:31.000px;width:192.000px;border-top:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:31.00px;left:0.00px;" >Cell 1 Row 2</span></p> 
     </td> 
     <td style="height:31.000px;width:192.000px;border-top:1.00px solid #FF9900;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:31.00px;left:192.00px;" >Cell 2 Row 2</span></p> 
     </td> 
     <td style="height:31.000px;width:192.000px;border-top:1.00px solid #FF9900;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:31.00px;left:384.00px;" >Cell 2 Row 3 This table has a</span><span class="f1" style=";position:absolute;top:375.00px;left:384.00px;" >square corner defined.</span></p> 
     </td> 
    </tr> 
    <tr> 
     <td style="height:16.000px;width:192.000px;border-top:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:62.00px;left:0.00px;" >Added another row</span></p> 
     </td> 
     <td style="height:16.000px;width:192.000px;border-top:1.00px solid #FF9900;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:62.00px;left:192.00px;" >added another row</span></p> 
     </td> 
     <td style="height:16.000px;width:192.000px;border-top:1.00px solid #FF9900;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:62.00px;left:384.00px;" >added another row</span></p> 
     </td> 
    </tr> 
</table><br style="clear:left;"/> 
</div> 
</body> 
</html> 
</notice> 
</document> 

只是让你知道它的一个自动生成的代码,所以我没有选择,只能使用绝对定位。此外,某些部分可能无效或看起来令人惊讶,但请忽略它们。有任何想法吗 ?

+0

为什么.000px?你的整个标记是不正确的。 – 2012-07-22 07:54:55

+0

异形是对的。只需删除下面答案中显示的所有不正确的内嵌范围样式即可。例如。 ''将它改为''并且它应该没问题。 – Stano 2012-07-22 09:08:57

回答

1

如果有助于你可以试试这个:下面

<!DOCTYPE document PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<document xmlns="http://www.w3.org/1999/xhtml"> 
<meta name="Author" content="***"/> 
<meta name="DocumentName" content="Page"/> 
<meta name="Date" content="07/21/2012"/> 
<notice name="Page"> 
<html> 
<head> 
<style type="text/css"> 
div.Page61989 {} 
.f1 {font-family:Arial;font-size:10.00pt;font-style:normal;font-weight:normal;line-height:114%;} 
p.normal, table.normal, div.normal {text-align:left; text-indent:0; margin-top:0in; margin-right:0in; margin-bottom:0.0in; margin-left:0in; clear:left;} 

.tc{ 
    border:1px solid #FF9900 
    } 

</style> 
</head> 
<body lang="EN-US" link="blue" vlink="purple"> 
<div class="Page61989" style="position:relative;height:1056px;width:816px;"> 

<table cellspacing="0" class="normal" style="width:578px;position:absolute;top:328px;left:120px;"> <tr> 
    <td class="tc">One-One</td> 
    <td class="tc">One-One</td> 
    <td class="tc">One-One</td> 
    </tr> 
    <tr> 
    <td class="tc">One-One</td> 
    <td class="tc">One-One</td> 
    <td class="tc">One-One</td> 
    </tr> 
    <tr> 
    <td class="tc">One-One</td> 
    <td class="tc">One-One</td> 
    <td class="tc">One-One</td> 
    </tr> 
</table> 




</table><br style="clear:left;"/> 
</div> 
</body> 
</html> 
</notice> 
</document> 

是IE6的截图

enter image description here

请参见下面的修改后的代码按你的要求。

<!DOCTYPE document PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<document xmlns="http://www.w3.org/1999/xhtml"> 
<meta name="Author" content="***"/> 
<meta name="DocumentName" content="Page"/> 
<meta name="Date" content="07/21/2012"/> 
<notice name="Page"> 
<html> 
<head> 
<style type="text/css"> 
div.Page61989 {} 
.f1 {font-family:Arial;font-size:10.00pt;font-style:normal;font-weight:normal;line-height:114%;} 
p.normal, table.normal, div.normal {text-align:left; text-indent:0; margin-top:0in; margin-right:0in; margin-bottom:0.0in; margin-left:0in; clear:left;} 
</style> 
</head> 
<body lang="EN-US" link="blue" vlink="purple"> 
<div class="Page61989" style="position:relative;height:1056px;width:816px;"> 
<table class="normal" style="width:578.00px;border-collapse:collapse;border:1.00px solid #FF9900;position:absolute;top:328.00px;left:120.00px;"> 
    <tr> 
     <td style="height:31.000px;width:192.000px;;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:0.00px;left:0.00px;" >This table has regular old</span><span class="f1" style=";position:absolute;top:16.00px;left:0.00px;" >square corners.</span></p> 
     </td> 
     <td style="height:31.000px;width:192.000px;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:0.00px;left:192.00px;width:192.000px; ">Cell 2 Row 1</span></p> 
     </td> 
     <td style="height:31.000px;width:192.000px;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:0.00px;left:384.00px;width:192.000px;" >Cell 3 Row 1</span></p> 
     </td> 
    </tr> 
    <tr> 
     <td style="height:31.000px;width:192.000px;border-top:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:31.00px;left:0.00px;" >Cell 1 Row 2</span></p> 
     </td> 
     <td style="height:31.000px;width:192.000px;border-top:1.00px solid #FF9900;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:31.00px;left:192.00px;width:192.000px;" >Cell 2 Row 2</span></p> 
     </td> 
     <td style="height:31.000px;width:192.000px;border-top:1.00px solid #FF9900;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:31.00px;left:384.00px;width:192.000px;" >Cell 2 Row 3 This table has a</span><span class="f1" style=";position:absolute;top:46.00px;left:384.00px;width:192.000px;" >square corner defined.</span></p> 
     </td> 
    </tr> 
    <tr> 
     <td style="height:31.000px;width:192.000px;border-top:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:62.00px;left:0.00px;width:192.000px;" >Added another row</span></p> 
     </td> 
     <td style="height:31.000px;width:192.000px;border-top:1.00px solid #FF9900;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:62.00px;left:192.00px;width:192.000px;" >added another row</span></p> 
     </td> 
     <td style="height:31.000px;width:192.000px;border-top:1.00px solid #FF9900;border-left:1.00px solid #FF9900;" > 
      <p class="normal"><span class="f1" style=";position:absolute;top:62.00px;left:384.00px;width:192.000px;" >added another row</span></p> 
     </td> 
    </tr> 
</table><br style="clear:left;"/> 
</div> 
</body> 
</html> 
</notice> 
</document> 
+0

我已经给出了我上面的一些评论,说明为什么我不能完成你的建议。 – nav 2012-07-23 07:14:07

+0

在IE 7或更高版本中查看您的HTML文件 – 2012-07-23 07:25:56

+0

我在IE9中检查了它,并且它也显示不正确。不幸的是,我们大多数客户使用IE。 ;-) – nav 2012-07-23 07:27:31