2

テーブルヘッドとボディを備えた HTML5 でテーブルを作成しています。Sublime Text 3 W3C Validator を使用して検証すると、「要素 th によって確立された範囲 3...4 のテーブル列には、それらで始まるセルがありません」というエラーが表示されます。これはバグでしょうか、それともテーブルのコーディングが間違っていますか? 以下のテーブルコードを見つけてください。

<table>
    <thead>
        <tr>
        <th colspan="5"><a id="button01" href="#" title="Learn More">Learn More</a></th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td colspan="1">A</td>
            <td colspan="3">Item A</td>
            <td colspan="1"><span class="bullet">*</span></td>
        </tr>
        <tr>
            <td colspan="1">B</td>
            <td colspan="3">Item B</td>
            <td colspan="1"><span class="bullet">*</span></td>
        </tr>
        <tr>
            <td colspan="1">M</td>
            <td colspan="3">Traditional (DIN-compliant flange)</td>
            <td colspan="1"><span class="bullet">*</span></td>
        </tr>
    </tbody>
</table>
4

1 に答える 1

1

このエラーを解決するために、 colspan="3"の代わりにcolspan ="1"を使用し、テーブル ヘッドcolspan="5"colspan="3"に変更しました。これにより、W3C HTML5 Validator エラーが解消されました。また、自分のニーズに合わせてスタイルを設定するために使用した css も含めました。

コードについては以下を参照してください。

<table>
  <thead>
    <tr>
      <th colspan="3"><a id="button01" href="#" title="Learn More">Learn More</a>
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td colspan="1">A</td>
      <td colspan="1">Item A</td>
      <td colspan="1"><span class="bullet">*</span>
      </td>
    </tr>
    <tr>
      <td colspan="1">B</td>
      <td colspan="1">Item B</td>
      <td colspan="1"><span class="bullet">*</span>
      </td>
    </tr>
    <tr>
      <td colspan="1">M</td>
      <td colspan="1">Traditional (DIN-compliant flange)</td>
      <td colspan="1"><span class="bullet">*</span>
      </td>
    </tr>
  </tbody>
</table>

/*
 * Table Components
 */

table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
  line-height: 20px;
}
thead {
  background: #EEE;
  font-weight: bold;
}
td {
  border: 1px solid #222;
  padding: .35em;
  vertical-align: middle;
}
td:first-child {
  width: 10%;
}
td:last-child {
  width: 5%;
}

于 2014-12-04T14:29:46.683 に答える