ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

CSSテクニックコミュのIE7のzoom機能?背景が大変!

  • mixiチェック
  • このエントリーをはてなブックマークに追加
皆さん、いつもコミュ勉強させて頂いております。

さて、一つ困った点に相成りまして、
ご相談させてください。

■IE7でズームを125/150とした場合に、背景が置いてけぼり。

タイトル通り、operaでは、問題ないのですが
IE7のみ、ズームした時に、

bodyに設置した背景がズームされずに
そのまま残っている現象に悩んでおります。

基本ハックは使わずに、全てのブラウザで同期表示
しておりましたが、これは、やはりハックの登場なのでしょうか?

解決法等、ご指南頂ければ、嬉しいです。
他のCSSやxhtmlに関しては、問題ないです。
IE7のズーム機能だけです。

一応ネットを徘徊し色々試行錯誤しましたが、対処できずに困っております。
宜しくお願いします。

コメント(7)

ぼくも以前ハマッたんですが・・・
http://msdn2.microsoft.com/en-us/library/ms533776.aspx
上記によるとhasLayoutというIE独自のプロパティをTRUEにしてやれば良いらしいのですが、
何をやろうとbodyに設定した背景だけはどうにもならなかったのであきらめました。
ハック以前にIE7の機能としてbodyの背景の拡大縮小が出来ないんじゃないかと思ったり。

しょうがないのでbody直後にラッパーdivを追加し、
divに対して背景を設定して乗り切りました。
html{
background-color:#ffffff;
height:100%;
width:100%;
}
body{
background-color:#ffffff;
background-image: url(FILEPATH);
margin:0;
padding:0;
height:100%;
width:100%;
}

と指定してやるとbodyの背景がズームされました。
この間色々CSS弄くってたら発見しました。
念のため、カラーはbodyと同じにしておくことをオススメします。

ただ、IE6-7でbodyのbackground-attachment:fixedがscrollになります。
background-attachmentを使わなければ問題ないですが。
あ、あとbodyの1pxズレは相変わらずです。

もうひとつの方法として、互換モードにしてやるとズームされます。
互換モードにしたらしたで、色々問題ありますけどね;
tonさん>>

私も同じように、調べて色々していくうちに、
こりゃだめだ・・・なんて、思ってまして、
最終div突っ込むしか・・・っと思ってたところです。

私的に、あまり多様なdivタグは、好きくないので
ん〜って思ってました。
ほんと、バグだけは、困ったもんですよね。


石畳の黒き冥王さん>>

ありがとうございます。
一発解決です。
html { background: #FFFFFF;}

を指定しただけで直りました。
これで、今までの背景画像指定したサイトは
修正かけられるので、ほんとありがとうございました。

ただ、なぜ、htmlにbackを指定しただけで、
修正が掛かったのかが、不明です。。。

理論が解りません。
ちょっと考えて見ます。

他にもIE7には、ある条件化のfloatした
ボックスが言うことを聞いてくれなかったり・・・と

困ったりしましたが、今後良くなっていくことを
願って頑張ります。

皆さん、本当にありがとうございます。
>ダイさん
backgroundの指定だけですと、bodyの内容がウィンドウの長さより短かった場合、bodyの内容分しか表示されません。
なので念のため高さ100%の指定はあった方がいいです。
bodyに高さを指定しただけでは、有効にならないので、htmlにも高さ指定が必要になります。
よって>2に書き込みました内容になります。

何故そのbackground指定だけで有効になるのかは謎です。発見すら偶然でしたし。
ちなみにhtmlにbackground-imageを指定してみると、htmlの背景はズームしません。
一番大外の背景画像はズームしないという仕様と言う名のバグかもしれません。
石畳の黒き冥王さん>>

ってか、よく見つけましたね。解消法。
実際私も1日暇あれば、色々やってたんですが
途方にくれてましたんで。

100%指定しました。
ご指導のほど、有難うございます。

実際、IE7って機能は、色々着きましたが、
使いやすいだろうか・・・っとユーザー側からは、
思います。

IE6の方が、まだ可愛かったw
>>石畳の黒き冥王さん
おお・・・すばらしい発見ですよ!
IE7にはホント泣かされます。
あ、すいません。
>2に
html>body{
height:auto;
}
を追加してください。
>2だけだとfirefiox等で途切れてしまいます;
理由としては、divを縦いっぱいに伸ばしたい時と同じですね(どこかでそんな内容のトピを見かけたんですが、失念しましたすいません。)
細かい内容については↓がわかりやすかったです。
http://gyauza.egoism.jp/clip/archives/2007/05/070509-background-clip/

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

CSSテクニック 更新情報

CSSテクニックのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング