<tr>是否必须在<tbody>中

sup*_*led 8 html accessibility html-validation

表行(<tr>)是否必须在表体(<tbody>)中,如果表具有表体,还是它可以存在于表体外?

<table>
    <tr>
      <td colspan='2'>...</td>
    </tr>

    <tbody>
      <tr>
        <td>...</td>
        <td>...</td>
      </tr>
    </tbody>

    <tr>
      <td colspan='2'>...</td>
    </tr>

    <tbody>
      <tr>
        <td>...</td>
        <td>...</td>
      </tr>
    </tbody>

</table>
Run Code Online (Sandbox Code Playgroud)

Bro*_*ias 6

不,<tr>可以在<thead>,<tbody>,<tfoot>或者它没有以任何人.

  • 虽然它*可以是'thead`,`tbody`或`tfoot`元素中的任何一个,如果直接在`table`中找到`tr`,浏览器将*添加*一个`tbody`来包含`tr`秒.所以,它有点*做*. (7认同)

zie*_*lot 6

相反的是特里尔汤姆森说,与表<tr>外标签<thead>,<tfoot>并且<tbody>标签,但里面<table>的标签将验证对W3C验证服务.

此文档已成功检查为HTML 4.01 Transitional:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
  <head>
  </head>
  <body>
    <table>
      <thead>
        <th colspan="2">head1</th>
        <th>head2</th>
      </thead>
      <tfoot>
        <th colspan="2">foot1</th>
        <th>foot2</th>
      </tfoot>

      <tr><td colspan="3">this row is outside of thead and tfoot</td></tr>

      <tbody>
        <tr>
          <td>1-1</td>
          <td>1-2</td>
          <td>1-3</td>
        </tr>
        <tr>
          <td>2-1</td>
          <td>2-2</td>
          <td>3-3</td>
        </tr>
        <tr>
          <td>3-1</td>
          <td>3-2</td>
          <td>3-3</td>
        </tr>
      </tbody>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)