6

繰り返しになりますが、Internet Explorer は私にとって簡単ではありません。同じ行に 2 つのセルがあるテーブルがあります。左に揃えたテキスト (最初のセル) と、右に揃えた別のテキスト (2 番目のセル) を表示したいと考えています。これは Chrome と Firefox で完全に機能しますが、IE ではすべてのテキストが左揃えで表示されます。

<table width="660px">
<tr>
    <td align="left" width="160px">Text 1</td>
    <td align="right" width="160px">Text 2</td>
</tr>

</p>

いくつかの調査の後、CSS に配置する必要があるかどうか疑問に思ったので、次のように変更しました。

HTML:

<table class="anchors" width="660px">
<tr>
    <td class="left" width="160px">Text 1</td>
    <td class="right" width="160px">Text 2</td>
</tr>

CSS:

table.anchors td.left
{
    text-align: left;
}

table.anchors td.right
{
      text-align: right;
}

IE (少なくともバージョン 9) ではまだ動作しません。誰もこれについてのヒントを持っていますか? 何か他のもの (div など) を使用する必要がありますか?

4

3 に答える 3

3

このコードは構文的に不正です (width属性は数値またはパーセンテージ値をとり、px単位は使用しません) が、これはブラウザによって許されています。さらに深刻なことに、競合する要件を設定しています。テーブルは幅 660 ピクセルである必要がありますが、幅 160 ピクセルの 2 つのセルで構成されています。ブラウザーの動作に一貫性がないことは驚くべきことではありません。

ただし、IE 8 および IE 9 は、「標準モード」の場合、他のブラウザーと同じように動作します。そうしないと、Quirks Modeで何かが起こる可能性があり、ドキュメントが準拠していないため、バグとは言えません。したがって、適切な doctype 宣言を追加してください。

さらに、相反する要件を避けることが最善です。テーブルの合計幅をピクセル単位で設定する必要がある場合は、そうしてください。次に、それらが合計されるように列幅を設定するか、より簡単に、たとえば幅を 50% に設定します (2 列のテーブルのバランスを取る必要があります)。

于 2012-08-01T17:04:58.993 に答える
1

http://jsfiddle.net/6jvnQ/

Can you change the width of the table so that it is as wide as the two cells? I suspect you get differing results because the weird widths.

于 2012-08-01T15:57:45.710 に答える
0

これを使って:

padding-left:22% または 22px または任意の長さ

于 2013-02-27T11:18:47.863 に答える