5

CSSのdisplayプロパティを使用してレイアウトを変更しているテーブルがあります。フルサイズのブラウザには「ブロック」を使用し、小さいブラウザには「テーブルセル」を使用します。Firefox、Safari、Chromeでうまく機能しますが、もちろんIE9はそれを台無しにしているようです... Firebugなどを使用してページをデバッグすると、IEを除くすべてのブラウザがdisplay:table-cellを表示に変更することは明らかです:ブロック。しかし、CSSファイルがテーブルセルであるべきだと明確に述べているにもかかわらず、IEはdisplay:blockで立ち往生しています。

IE9の「テーブルセル」に関する既知の問題または既知の回避策はありますか?

編集:問題はテーブルセルではなく、テーブルセルのDisplay:blockにあります。

私が抱えている問題はここで見つけることができます:http ://css-tricks.com/examples/ResponsiveTables/response.php Chrome / Firefoxで開き、ブラウザウィンドウのサイズを変更します-テーブルはレスポンシブで、狭いデザインに変更されます。IE9で開き、サイズを変更します。テーブルは静的であり、変更されません。

EDIT2:前の例では、レスポンシブ部分はIEに対してコメント化されています。これは、作成者がそれが乱雑になることを知っていたためです。それでも、IEでも機能するこの種のデザインを作成できるようにしたいので、それを機能させるために何らかの回避策を講じる必要があります。

これは、レスポンシブ部分が含まれている場合にIE9がレスポンシブテーブルを台無しにする方法を示すJSFiddleです:http://jsfiddle.net/2Mt37/

4

2 に答える 2

8

@thirtydotが書いた古いスレッドから答えを見つけました

私はfloatを適用しました:ものに残しました。それはちょっとうまくいきます。

IEの<td>で「display:block」を機能させるにはどうすればよいですか?

彼が言ったように、それはちょっとうまくいきます... IE9はすべてを狂ったようにレンダリングするのをやめますが、見栄えを良くするためにやるべきことはまだあります。しかし、その答えは十分です、私は残りを自分で修正することができます...

于 2012-08-27T10:49:32.840 に答える
6

X-UA-Compatibleメタタグを使用すると、Webページの作成者は、ページをレンダリングするInternetExplorerのバージョンを選択できます。

これらはあなたのオプションです:

"IE=5"
"IE=EmulateIE7"
"IE=7"
"IE=EmulateIE8"
"IE=8"
"IE=EmulateIE9
"IE=9"
"IE=edge" which tells Internet Explorer to use the highest mode available to that version of IE.

But I recommend you to use this one:

    <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">

chrome = 1は、オープンソースのブラウザプラグインであるGoogleのChromeフレーム用です。プラグインをインストールしているユーザーは、ブラウザでページを開くときに、GoogleChromeのオープンウェブテクノロジーと高速なJavaScriptエンジンにアクセスできます。Internet Explorerでのブラウジング体験を向上させ、最新のHTML5機能とGoogleChromeのパフォーマンスおよびセキュリティ機能にアクセスできるようにします。

于 2012-08-24T10:01:39.487 に答える