在HTML5中,关于表,什么替换了cellpadding,cellspacing,valign和align?

Cod*_*ick 308 html css visual-studio css-tables

Visual Studio中,我看到这些警告:

  • 验证(HTML 5):属性"cellpadding"不是元素"table"的有效属性.
  • 验证(HTML 5):属性'cellspacing'不是元素'table'的有效属性.
  • 验证(HTML 5):属性'valign'不是元素'td'的有效属性.
  • 验证(HTML 5):属性'align'不是元素'td'的有效属性.

如果它们不是HTML5中的有效属性,那么在CSS中替换它们的是什么?

dru*_*dge 478

/* cellpadding */
th, td { padding: 5px; }

/* cellspacing */
table { border-collapse: separate; border-spacing: 5px; } /* cellspacing="5" */
table { border-collapse: collapse; border-spacing: 0; }   /* cellspacing="0" */

/* valign */
th, td { vertical-align: top; }

/* align (center) */
table { margin: 0 auto; }
Run Code Online (Sandbox Code Playgroud)

  • 值得注意的是,边框间距似乎只在桌面上使用此属性时才起作用"border-collapse:separate;" (6认同)
  • @Samir - 似乎是一个`float:right;`就可以了.http://jsfiddle.net/HGFH7/ (3认同)

Col*_*son 70

这应该可以解决您的问题:

td {
    /* <http://www.w3.org/wiki/CSS/Properties/text-align>
     * left, right, center, justify, inherit
     */
    text-align: center;
    /* <http://www.w3.org/wiki/CSS/Properties/vertical-align>
     * baseline, sub, super, top, text-top, middle,
     * bottom, text-bottom, length, or a value in percentage
     */
    vertical-align: top;
}
Run Code Online (Sandbox Code Playgroud)


Xti*_*n11 13

在特定的桌子上

<table style="border-collapse: separate; border-spacing: 10px;" >
    <tr>
      <td>Hi</td>
      <td>Hello</td>
    <tr/>
    <tr>
      <td>Hola</td>
      <td>Oi!</td>
    <tr/>
</table>
Run Code Online (Sandbox Code Playgroud)