无法将IE9转换为div中的中心表

时间:2013-09-13 01:46:01

标签: html css

似乎无法让IE9在div中居中(table =“needToCenter”)。它在FF中工作正常。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<BODY>
    <FORM id=viewDevicesForm method=post name=viewDevicesForm action=/viewDevices.jsf>
        <DIV style="border: 1px grey solid; MARGIN-TOP: 20px; WIDTH: 100%;">
            <TABLE id="needToCenter" style="MARGIN: auto" border=0 cellSpacing=0 cellPadding=0>
                <TBODY>
                    <TR>
                        <TD><A style="HEIGHT: 22px; FONT-WEIGHT: 900" id=viewDevicesForm:_idJsp146 href="http://localhost:9082/viewDevices.jsf?Flow=view#" name=viewDevicesForm:_idJsp146>MASS EDIT</A>
                        </TD>
                    </TR>
                </TBODY>
            </TABLE>
        </DIV>
    </FORM>
</BODY>
</HTML>    

4 个答案:

答案 0 :(得分:2)

请尝试html5 doctype,而不是使用html4 doctype。这将迫使ie9使用标准渲染并可能解决问题。

<!DOCTYPE html>

哦,另外,你应该使用CSS。

答案 1 :(得分:1)

您可以使用<center>标记包装表格。它在HTML 4.01上已弃用,在HTML 5上不受支持。但由于您使用的是HTML 4.0,我认为它会起作用。

答案 2 :(得分:0)

只需添加text-align:center

<DIV style="text-align:center;border: 1px grey solid; MARGIN-TOP: 20px; WIDTH: 100%;">

答案 3 :(得分:0)

margin: auto仅适用于明确大小的元素。如果您希望它在自己的容器中居中,请为您的表添加宽度。

示例:http://jsfiddle.net/mqqu9/

<div style="border: 1px grey solid; margin-top: 20px; width: 100%;">
    <table id="needToCenter" style="margin: 2em auto; width: 80%; border: solid 1px #c00;">
        <tbody>
            <tr>
                <td>
            <a style="height: 22px; font-weight: 900" id="viewDevicesForm:_idJsp146" href="http://localhost:9082/viewDevices.jsf?Flow=view#" name="viewDevicesForm:_idJsp146">MASS EDIT</a>
                </td>
            </tr>
        </tbody>
    </table>
</div>

我添加了边框和顶部&amp;表格的下边距使表格显示如何呈现。