flashの上にdivを置く時の注意
Posted on | 4月 28, 2009 | 2 Comments
先日やろうとしたこと。
flashを背景にしいて、上で何やかんややろうと思ってた。
方法論としては、まずflashを作る。
んで、下記を追加する。
<param name=”wmode” value=”transparent” />
<embed wmode=”transparent”>
これでflashの上に要素を置いても、flashがちゃんと下にくるようになった。
というわけで、今度は上におきたいdiv要素を作り、配置する。
置き方は、marginをマイナスにしようが、position:absoluteしようがどっちでもいい。
僕はmarginマイナスにしてみた。positionの挙動が、あまり好きじゃないんです。
absoluteとrelativeを使いこなさなくちゃいけないのが面倒で…。
さて、これで基本的にはオッケーです。
divんなかにすきなの詰めて遊べばいいと思います。
ところがどっこい、僕はそのdiv要素に、背景画像をしこうと思ってた。
これがうまくいかないんですよねー。
cssでbackgroud:url(img.jpg);とかやっても出てこない。
唯一、IE6だけ出てくる。Firefox、Webkit、IE7とかのモダンブラウザは全死亡。さすがIE6は格が違った。
どうしようかしばらく試行錯誤してみたんですが、どうも、これは仕様のよう。
backgroundプロパティで示されるものは、どうやら一番奥にいってしまうみたい。
仕方ないから、僕はflashの中でその背景を表示させることで回避しました。
flashに無駄なデータとレイヤーが出来るんで邪魔なんですが、仕方ない…。
あんまりいないと思いますけど、flashの上にdivを重ねようって時にはご注意を。
divの背景は、flashの上にはのりません。一番下にいきます。
Comments
2 Responses to “flashの上にdivを置く時の注意”
Leave a Reply




4月 28th, 2009 @ 5:25 PM
こんなんあります
http://www.gran-suite.com/company.php
IE6はほんと格が違くて頭が上がりません。
4月 28th, 2009 @ 11:20 PM
コメントありがとうございます。
なるほどー。拝見すると確かに背景にswfなのに、png背景が生きてる様子ですなぁ。
なぞ!ちょっとそのサイトのCSSの解析をしたいと思います!
z-indexとかも試したつもりだったんだけどなぁ。ブロックの順番とかか…?