文字未在IE中错位

时间:2011-02-07 22:48:20

标签: asp.net html

我有一个ASP.net网页,我正在使用,我没有自己创建,使用以下HTML代码:

<DIV style="POSITION: absolute; TEXT-ALIGN: center; WIDTH: 1400px; TOP: 60px; LEFT: 125px">
<SPAN style="TEXT-ALIGN: center; FONT-SIZE: xx-large" id=labelInstructions>Some Text: <BR><BR></SPAN>
<TABLE style="WIDTH: 1200px" border=1 align=center>
    <TBODY>
        <TR>
            <TD><LABEL style="FONT-SIZE: x-large" for=FileUpload1>ENTER Path: </LABEL><INPUT id=FileUpload1 size=70 type=file name=FileUpload1></TD>
        </TR>
        <TR>
            <TD><SPAN style="COLOR: red; FONT-SIZE: medium" id=fileUploadError><BR><BR></SPAN></TD>
        </TR>
        <TR>
            <TD>
                <TABLE style="WIDTH: 1200px" border=1>
                    <TBODY>
                        <TR>
                            <TD style="WIDTH: 400px; FONT-SIZE: x-large" vAlign=top align=right>FILE CONTENT INSTRUCTIONS:</TD>
                            <TD style="WIDTH: 850px; FONT-SIZE: x-large" vAlign=top align=left>INSTRUCTION 1<BR>INSTRUCTION 2<BR></TD></TR>
                        <TR><TD></TD></TR>
                        <TR>
                            <TD style="WIDTH: 400px; FONT-SIZE: x-large" vAlign=top align=right>FILE CONTENT EXAMPLE:</TD>
                            <TD style="WIDTH: 850px; FONT-SIZE: x-large" vAlign=top align=left>EXAMPLE 1<BR>EXAMPLE 2<BR><BR></TD>
                        </TR>
                    </TBODY>
                </TABLE>
            </TD>
        </TR>
    </TBODY>
</TABLE>
</DIV>

当这个html在IE中显示时,我注意到内表中单元格中的文本对齐,即外表的第三个单元格中的表格在放大和缩小时会失真。我有一个固定的表设置,以像素而不是百分比,所以我不明白为什么这是一个问题。我希望单元格中的文本保持不变 缩放时的位置。必须从后面的代码中操作代码,因此我无法创建单独的CSS文件。任何帮助表示赞赏。

这里有两个例子来说明我在说什么:

正常缩放100%:

enter image description here

放大75%:

enter image description here

请注意,在第二张图片中,底部的两个表格单元格略微偏向左侧。

更新:

是的,我明白,我们将在不久的将来实施一个新系统。显然这是旧的,非常不标准,当我开始使用它时,它在我的膝盖上掉了下来。我们正在制定一个新系统来替换它的计划,与此同时,这是我必须要处理的。

1 个答案:

答案 0 :(得分:1)

(1)您的嵌套表存在问题......

                    <TBODY>
                        <TR>
                            <TD style="WIDTH: 400px; FONT-SIZE: x-large" vAlign=top align=right>FILE CONTENT INSTRUCTIONS:</TD>
                            <TD style="WIDTH: 850px; FONT-SIZE: x-large" vAlign=top align=left>INSTRUCTION 1<BR>INSTRUCTION 2<BR></TD></TR>
                        <TR><TD></TD></TR>
                        <TR>
                            <TD style="WIDTH: 400px; FONT-SIZE: x-large" vAlign=top align=right>FILE CONTENT EXAMPLE:</TD>
                            <TD style="WIDTH: 850px; FONT-SIZE: x-large" vAlign=top align=left>EXAMPLE 1<BR>EXAMPLE 2<BR><BR></TD>
                        </TR>
                    </TBODY>

此内表的格式为:

Row 1: Two cells.
Row 2: One cell.
Row 3: Two cells.

您需要在第2行中添加额外的td。 (我会说使用colspan,但我不确定IE是否也能正确执行。)

(2)我不知道如何解决这个问题,但我的猜测是需要javascript或禁用缩放功能(最后我听说,后者是不可能的。但我可能错了。)我没有阅读整篇文章,但this MSDN article似乎是一个很好的起点。看起来您可以检测到浏览器的缩放系数。如果它不等于1.0,你可以试着让javascript调整大小以使td到达预定的位置。

(3)不建议您使用表格进行内容对齐。 (我想这是一个很好的理由。)