-1

我在这里有这个简单的 html 代码。我不明白为什么第二个 DIV 中的填充没有显示?如果我删除单元格填充和间距,我会看到大约 10 像素的填充,但不是我想要的 20 像素。

为什么?

<div style="position: relative; margin: 0 auto; padding: 0 auto; max-width: 860px;">
        <div style="border:1px solid #999; padding 20px; margin: 40px 10px; background: red;">
            <table cellpadding="0" cellspacing="0" border="0" width="100%">
                <tr>
                    <td width="55"> xxx </td>
                    <td style="font-size: 14px;">xxx </td>
                </tr>
            </table>
        </div>
    </div>
4

4 回答 4

1

绝对没有理由。

你只是忘记了一个:之后padding

<div style="position: relative; margin: 0 auto; padding: 0 auto; max-width: 860px;">
    <div style="border:1px solid #999; padding: 20px; margin: 40px 10px; background: red;">
        <table cellpadding="0" cellspacing="0" border="0" width="100%">
            <tr>
                <td width="55">xxx</td>
                <td style="font-size: 14px;">xxx</td>
            </tr>
        </table>
    </div>
</div>

见 jsfiddle

于 2013-11-01T01:38:29.887 回答
0

外部 div 的填充正在减少内部 div 的完整填充。外部 div 的 padding 是 0px auto 意味着它被填充到 center 。尝试对外部 div 使用 2px 的填充来查看效果。希望这对您有所帮助。

于 2013-11-01T01:33:07.073 回答
0

您的外部 DIV 是问题所在。它最小化了内部 DIV 中的设置填充。但是,为什么不将 cellpadding 设置为 10px?

于 2013-11-01T01:34:14.503 回答
0

你的宽度table100%它的父级,它有填充。

于 2013-11-01T01:37:48.833 回答