1

いくつかの文字列があります (すべてアルファベットとまれな改行のみで、空白やその他の区切り記号はありません) セルの幅まで (ウィンドウのサイズによって異なります50%。例)。テーブルのセル幅に達したときにブラウザーが文字列をほとんど折り返さないようにするだけでなく、文字列内の改行文字も歓迎します。テーブル セルのコンテンツには、指定された固定の最小幅 (200px以下の例) が必要です。これにより、ウィンドウのサイズがさらに変更された場合に垂直スクロールが表示されます。ウィンドウが小さくなりすぎたこの瞬間を、このスクリーンショットに示します。

ここに画像の説明を入力

max-widthfor td( playground )を使用して FF10 で必要な動作を実現しましたが、IE で同じことを行うことはできませんmax-widthmax-widthさらに、がオンに設定されている場合、非常に奇妙な動作をpreします。レンダラーは、コンテンツの実際の幅を無視し、preラップされていないと考えます (プレイグラウンド– FF と比較してください。同様の問題があちこちで報告されてます)。最悪の場合は内容を厳密に固定してもOKです( IE200pxなら適用すべきですが、適用しても効果はありません)。この修正を IE のみに適用するために、次の CSS を試しました。pretd

pre {
    white-space: pre-wrap;
    word-wrap: break-word;
    width: expression("200px");
}

td.wrap {
    color: red;
    max-width: 200px;
}

残念ながら、IE8 では動作しません。

対象ブラウザ:FF9(ans上位)、IE7、IE8、Chrome(最新)。

この問題が重複している場合は申し訳ありません:前のタグでテキストをラップするにはどうすればよいですか? を確認しました。このリスト項目をワードラップするにはどうすればよいですか? max width を実行できませんMax-Width が IE7 および他の多くのテーブルで機能しません: IE には明確な解決策が見つかりません。

4

1 に答える 1

1

私は別の側面から問題にアプローチしようとしました:) divでテーブルをラップするmin-width: 400pxと、IEはうまくいきます。これがフィドルです: http://jsfiddle.net/6Agbw/3/。これがあなたが必要とするものであることを願っています。

于 2012-05-13T12:20:04.213 に答える