6

HTML 列幅を指定するより良い方法は何ですか? 幅属性またはスタイル属性? IE 6 を使用していると仮定します。IE は幅属性をスタイルよりも適切にレンダリングしますか?

幅属性別

<table width="900">
    <tr>
        <td width="450">A</td>
        <td colspan="2" width="450">B&C</td>
    </tr>
    ....
</table>

またはスタイル属性による

<table style="width:900px;">
    <tr>
        <td style="width: 450px;">A</td>
        <td colspan="2" style="width: 450px;">B&C</td>
    </tr>
    ....
</table>
4

2 に答える 2

15

まず、質問に答える前に、テーブルがどのようにレンダリングされるかを知っておく必要があります。テーブル要素のテーブルレイアウト固定スタイルを試してください。

ブラウザーが最初のテーブル行の列の幅を事前に認識している場合 (テーブルにテーブル レイアウトの固定スタイルを指定した場合)、結果の行の幅を計算する前であっても、ブラウザーはテーブルの上部のレンダリングを開始できます。これはどういう意味ですか?固定レイアウトの Ajax 呼び出しによって設定されたテーブルは、完全な ajax 呼び出しが終了する前に、結果をユーザーに表示し始めることができます。これを考える最良の方法は、プログレッシブ jpg のようなものです。最終的に、ページの読み込みが速くなるように見えます。

table
{
table-layout:fixed;
}

今あなたの質問に答えます。

実際、あなたが提供した例はどちらも正しくありません。通常、2 つ以上のセルにまたがるセルには幅を設定しません。どのテーブルでも、すべてのセルを含む少なくとも 1 つの行を作成することをお勧めします。これは、TH または (空白の tr.

例えば...

<table>
<tr>
<td width="450"></td>
<td width="225"></td>
<td width="225"></td>
</tr>
<tr>
<td>content here</td>
<td colspan="2">content here</td>
</tr>
</table>

スタイルを使用するか、標準の html 幅を使用するかは自由ですが、最終的には、最初の行 (テーブル レイアウトが固定されている場合) または任意の行 (テーブル レイアウトが固定されていない場合) に、個々のセルごとの幅の定義。これは、正しい外観のテーブルを計画するのにも役立ちます。これが役立つことを願っています.

10,000 行のような巨大なテーブルを作成して固定されたテーブル レイアウトをテストし、固定されていないテーブル レイアウトと比較してレンダリング速度をテストします。

HTML 4 と XHTML 、スタイルと属性に関する議論全体は、実際には保守性の問題だと思います。スタイルを使用して幅を設定したり、HTML 4トランジショナルでプレーンな幅を設定したりすることに問題はないと思います。どちらも同じことを行います。両方できる理由は、HTML が少し進化したためです。幸運を

于 2009-10-06T07:34:48.473 に答える
3

<div>内側にタグを追加する<td><th>、内側に幅を定義するだけ<div>です。これはあなたを助けるでしょう。他に何も機能しません。

例えば。

<td><div style="width: 50px" >...............</div></td>
于 2012-05-06T22:32:38.180 に答える