表IE7

2012-03-22 6 views
1

上の絶対このフィドルをご覧ください:表IE7

http://jsfiddle.net/dyv88/16/

をIE7で、私は幅を置く場合:100%テーブルの上に、位置とdivの内側:絶対値と幅が指定されていない場合、テーブルは画面全体を引き継ぎます。

最近のすべてのブラウザでは、そうではありません。

説明できますか?

これを修正するにはどうすればよいですか?絶対配置されたすべての要素に幅を指定するだけですか?または、何らかのラッパー要素でより良い修正がありますか?

+0

本のDUPである場合があります。http://stackoverflow.com/questions/2458731/css-why-an-input-width100-doesnt-expand-in-an-absolute-box – wrschneider

答えて

0

あなたは絶対位置にしたい場合は、それが配置されている最初の親に相対的でなければなりません。それはあなたが1つを指定しなかったので、IE7はどの親であるかを知らないようです。 この問題を解決するには、親の1人にposition: relativeを実行してください。または、テーブルの相対位置を設定します。

絶対配置要素の幅をページの通常の下限から取り除くので、絶対配置要素の幅を指定することは常に良いことだと思います。

jsFiddle Demo

+0

同じ絶対divの親も配置されている場合はwidthを返します。 – wrschneider

+0

また、子の 'div'幅を100%に指定する必要があります。これはあなたが達成したいと思っていますか? http://jsfiddle.net/39bnW/1/ –

+0

コメントのために回答を受け入れています。「絶対配置要素の幅は常に良いものです」 - これは問題のようです。 – wrschneider