0

私はレストランのメニューを作成していますが、テーブルを使用する必要があるかどうか、特にネストされたテーブルを使用する必要があるかどうかがわかりません。これは有効ですか?レストランのメニューは表形式のデータと見なすことができると思います。

ネストされたテーブルを使用して構造を作成することは、どのブラウザーでも非常に便利で安定していますが、これが適切な方法であるかどうかはわかりません。これがどのように見えるかです:

http://jsbin.com/ejoqad/1/edit

  <table>
    <tr>
      <td>
        <table>
          <tr>
            <td>PIZZA</td>
          </tr>
          <tr>
            <td>onions,cheese</td>
          </tr>
        </table>
      </td>
      <td>3.5 $</td>

    </tr>
  </table>

また、この構造は、さまざまなデバイス用に設計を最適化しようとすると、将来的に問題を引き起こす可能性がありますか?

4

4 に答える 4

2

それは確かに有効ですが<br />、行を壊すためだけにテーブル全体ではなく、おそらく使用する必要があります。

于 2012-12-30T17:48:49.660 に答える
0

HTML 5仕様によれば、rowspan属性を使用すると、より少ないマークアップで同じ効果を実現できます。

基本的な考え方は、属性を整数値に設定することにより、<td>要素が複数の行または列にまたがることができるということです(rowspan行と列に使用)。colspanしたがって、<td rowspan="2">はテーブルの2行にまたがるセルです。

これらの属性はHTML3.2に存在していたため、互換性は非常に良好です(IE8に問題なくテストし直しました)。

参考のために更新されたjsbinは次のとおりです:http://jsbin.com/ejoqad/5/edit

于 2013-01-04T13:59:09.967 に答える
0

メニューはデータのテーブルのように見えるので、レイアウトに関係なく、HTMLテーブルの使用は意味的に正しいです。よくできました。ただし、ネストされた2つのテーブルを使用する必要がある理由はわかりません。

于 2013-01-04T14:21:23.427 に答える
0

HTMLテーブルは、マトリックスのように表形式のデータを格納するためのものです。

おそらくあなたのメニューはリストでしょうか?その場合、ulsを使用できます。これは、テーブルよりもレイアウトのスタイルを柔軟に設定できます。

あなたの意図が純粋に表形式のデータを提示することであり、それがレイアウトに意味がない場合は、それを実行して後でレイアウトしてみてください:p

レイアウトコンテナとして使用するつもりなら、あなたは間違っていると考えています。レイアウトにテーブルを使用することを検討する状況は、高さが異なる列のようにCSSで行うのが面倒な場合、またはJSなしで静的な幅/高さの領域と柔軟性のある中間の領域を使用したい場合です。

于 2013-01-08T20:27:36.073 に答える