0

IE 9.0 は次の HTML を正しくレンダリングせず、アイデアがありません......助けてください。 「< !DOCTYPE html >」は変更できません。何か案は ? ありがとう。

<!DOCTYPE html>
<html lang="en">
<body>
<table style="table-layout:fixed;" width="100%" border="1">
    <colgroup span="120">
    </colgroup>
    <tbody>
        <tr>
            <td colspan="120">AAAAAAAAAAAAAAAAAAAAAA</td>
        </tr>
        <tr>
            <td colspan="15">aa</td>
            <td colspan="15">ss</td>
            <td colspan="90">dd</td>
        </tr>
        <tr>
            <td colspan="120">zzzzzzzz</td>
        </tr>
    </tbody>
</table>

4

2 に答える 2

0

Colspan = 1 つのセルに結合する列の数。列の幅を設定するために使用することを恐れています。そして、それは間違っています。列の幅を設定するには、CSS width プロパティを使用します。

<td width="120" colspan="3">

(それはプレーンな HTML でした)または CSS を使用

<td style="width:120px" colspan="3">

于 2012-11-23T01:49:22.267 に答える
0

W3C Markup Validatorが示すように、マークアップは HTML テーブル モードに違反しています。このcolspan属性は、セルがまたがる表の列の数を指定します。列が 3 つしかない場合、120 列にまたがることはできません。

あなたが本当に望んでいるのは、関係が 15 : 15 : 90 になるように列間の利用可能な幅を分割することだと私には思えます。

<table style="table-layout:fixed;" width="100%" border="1">
     <col width="12.5%">
     <col width="12.5%">
     <col width="75%">
    <tbody>
        <tr>
            <td colspan="3">AAAAAAAAAAAAAAAAAAAAAA</td>
        </tr>
        <tr>
            <td>aa</td>
            <td>ss</td>
            <td>dd</td>
        </tr>
        <tr>
            <td colspan="3">zzzzzzzz</td>
        </tr>
    </tbody>
</table>

固定レイアウトを使用すると、最初の行が処理されるときに列の幅が決定されます。colしたがって、幅は要素で設定する必要があります。そうしないと、ブラウザは最初の行を処理するときに幅の要件を持たないため、仕様に従って、合計スペースを列間で均等に分割します。

于 2012-11-23T06:59:12.443 に答える