Firefoxでフルスクリーンのサイトがずれる問題

このQ&Aのポイント
  • フルウィンドウのFlashがFirefoxで上半分にずれる問題について
  • フルウィンドウのFlashを作成中の際に、Firefoxで表示がずれる現象が発生しました。
  • スクリプトの追加が必要なのかどうか確認したいです。
回答を見る
  • ベストアンサー

フルウィンドウのFlash Firefoxなどでずれる

http://creator.job-stage.jp/guide/fla_sample/flash_0001.html のサイトを参考にしてフルスクリーンのサイトを作っています。 Firefoxなどで確認したところ、 中央部に表示されず上半分にずれてしまいます。 Firefox用などのスクリプトが必要ですか? //1. ステージ クラスを宣言。 flStage.align = "LT"; Stage.scaleMode = "noScale"; //2. レイアウトの関数を宣言。 function LayOut() { _root.MC_Logo._x = 50; _root.MC_Logo._y = 50; _root.MC_CopyRight._x= Stage.width - _root.MC_CopyRight._width-20; _root.MC_CopyRight._y= Stage.height - 20; _root.MC_main._x = (Stage.width - _root.MC_main._width)/2; _root.MC_main._y = (Stage.height- _root.MC_main._height)/2; } //3. ブラウザーをリサイズした時の設定。 myListener = new Object(); myListener.onResize =function() { LayOut(); break; }; Stage.addListener(myListener); LayOut();

  • Flash
  • 回答数2
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

思うのですが, 元からイケてないそのサイトのサンプルのHTMLまで真似していませんか? もしそうであれば, 元がイケてないのですから,作った物もイケないのが当然ですよ。 書かれていらっしゃるページの デカい FullScreen と書いてある JPEG をクリックしたときに出てくるページ, つまりここ↓。 http://creator.job-stage.jp/guide/fla_sample/0001/ このページのヘッダー部分にあるドキュメントタイプの指定が間違っているようです。 最初の2行 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> を消すと Firefox などでもフルスクリーンで表示されます。 ------- または, Flash のパブリッシュ設定で HTML タブを選択し, サイズを パーセント にして  [100% ] × [100% ] パーセント に設定した HTML をパブリッシュして その HTML を使っても良いかもしれません。 何にしろそのサイトのサンプルはイケてません。  サンプルのHTML自体がダメ。  ダウンロードできる FLA ファイルもHTML設定がダメ。  さらにバージョンも不明。 イケていないところだらけです。 ------- ブラウザによって違う動作や表示をする場合は, まずHTMLを疑ってください。 次に使用されているブラウザの Flash Player のバージョンです。

その他の回答 (1)

  • atse
  • ベストアンサー率83% (36/43)
回答No.2

#1の方が仰るように http://creator.job-stage.jp/guide/fla_sample/0001/ のHTMLソースを元にしていると仮定して話します。 > このページのヘッダー部分にあるドキュメントタイプの指定が間違っているようです。 間違っていません。 最初の2行がある場合とない場合の違いは、ブラウザにおける互換モードと標準モードの差です。 Firefoxで起きた現象は、 「flashの高さを100%にされても、親(HTML)自体の高さが決まっていなくて、何に対して100%なのかわからないからこう表示しちゃおう」 といった感じです。 前途URL先の場合、標準モードとなりますが、このまま使う場合の解決方法は、HTMLのCSSに html,body{height:100%;} を追加して下さい。 ソースで言うと <style type="text/css"> <!-- //↑から↓までの間に追加です --> </style>

関連するQ&A

  • acttionscript2.0から3.0へ。。。(-.-)

    acttionscript2.0から3.0へ。。。(-.-) どなたか、AS2.0で記述されたスクリプトをAS3.0に書き換えていただけないでしょうか? 下記サイトにAS2.0で記述されていました。 http://creator.job-stage.jp/guide/fla_sample/flash_0001.html そして上記サイトよりダウンロードしたflaに記述されていたスクリプトが下記です。 さらにその下には上記サイト内に記述されていてものも載せています。 Stage.align = "LT"; Stage.scaleMode = "noScale"; //----------------------------------------------------- //ここから、【関数】レイアウトの設定。 //各ムービークリップの座標を設定します。 //----------------------------------------------------- function LayOut() { //ムービークリップ「MC_Logo」の座標を設定 _root.MC_Logo._x = 50; _root.MC_Logo._y = 50; //ムービークリップ「MC_CopyRight」の座標を設定 _root.MC_CopyRight._x = Stage.width - _root.MC_CopyRight._width- 20; _root.MC_CopyRight._y = Stage.height - 20; //ムービークリップ「MC_main」の座標を設定 _root.MC_main._x = (Stage.width - _root.MC_main._width)/2;// x 座標を中央にスクリプトで計算。 _root.MC_main._y = (Stage.height - _root.MC_main._height )/2;// y 座標を中央にスクリプトで計算。 } //----------------------------------------------------- //ここから、リサイズ時の設定を行います。 //----------------------------------------------------- myListener = new Object(); myListener.onResize = function() { LayOut(); break; }; Stage.addListener(myListener); LayOut();//最後に、ロード完了時に一度、レイアウト用、関数「UpDate」を実行させる。 stop(); ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲ ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ ここからがサイト内に記述されていたスクリプトです。 //1. ステージ クラスを宣言。 flStage.align = "LT"; Stage.scaleMode = "noScale"; //2. レイアウトの関数を宣言。 function LayOut() { _root.MC_Logo._x = 50; _root.MC_Logo._y = 50; _root.MC_CopyRight._x= Stage.width - _root.MC_CopyRight._width-20; _root.MC_CopyRight._y= Stage.height - 20; _root.MC_main._x = (Stage.width - _root.MC_main._width)/2; _root.MC_main._y = (Stage.height- _root.MC_main._height)/2; } //3. ブラウザーをリサイズした時の設定。 myListener = new Object(); myListener.onResize =function() { LayOut(); break; }; Stage.addListener(myListener); LayOut();

    • ベストアンサー
    • Flash
  • acttionscript2.0から3.0へ。。。(-.-)

    acttionscript2.0から3.0へ。。。(-.-) どなたか、AS2.0で記述されたスクリプトをAS3.0に書き換えていただけないでしょうか? ユーザーのモニター解像度・大きさに合わせてブラウザー内で100%・ フルスクリーンで表示させたい場合、 どういったActionScriptを書けばいいのかと考えて 2.0でのスクリプトは手に入ったのですが。。 すいません、どなたかよろしくお願いいたします。 Stage.align = "LT"; Stage.scaleMode = "noScale"; function LayOut() { _root.MC_Logo._x = 50; _root.MC_Logo._y = 50; _root.MC_CopyRight._x = Stage.width - _root.MC_CopyRight._width- 20; _root.MC_CopyRight._y = Stage.height - 20; _root.MC_main._x = (Stage.width - _root.MC_main._width)/2;// x 座標を中央にスクリプトで計算。 _root.MC_main._y = (Stage.height - _root.MC_main._height )/2;// y 座標を中央にスクリプトで計算。 } myListener = new Object(); myListener.onResize = function() { LayOut(); break; }; Stage.addListener(myListener); LayOut(); stop();

    • ベストアンサー
    • Flash
  • FLASH アクションスクリプト

    画面のサイズを拡大縮小しても 常にセンターに表示させる アクションスクリプトで質問がございます。 back_mcが【背景】 main_mcが【オブジェクト】 _root.main_mc._x = ( Stage.width - _root.main_mc._width ) /2; _root.main_mc._y = ( Stage.height - _root.main_mc._height) /2; このアクションスクリプトで【オブジェクト】が最初から常にセンター表示になる事は分かるのですが、例えば座標x600 y500で始まるようにするのはどうしたら良いのでしょうか。 下記のアクションスクリプトでは、【オブジェクト】がx600 y500の位置に最初はあるのですが画面のサイズを拡大縮小してもピクリとも動きません。 Stage.align = "TL"; Stage.scaleMode = "noScale"; Stage.addListener(this); this.onResize = function() { _root.main_mc._x = 600;( Stage.width - _root.main_mc._width ) /2; _root.main_mc._y = 500;( Stage.height - _root.main_mc._height) /2; _root.back_mc._width = Stage.width; _root.back_mc._height = Stage.height; } this.onResize(); いまいち分かりにくい質問ですが伝わりますでしょうか。 分かる方、宜しくお願い致します。

    • ベストアンサー
    • Flash
  • flashの画面全体で表示

    はじめまして。 質問させてください。 flashで背景画像のみを画面いっぱいに表示して 他のムービクリップはブラウザの大きさに左右されずサイズと場所を固定したくて 下記のように記述しました。 ---------------------------------------------- bg_h = _root.bg._height/_root.bg._width; Stage.scaleMode = "noScale"; Stage.align = "TL"; function setPosition() { _root.bg._width = Stage.width; _root.bg._height = bg_h*_root.bg._width; _root.rogo._x = 10; _root.rogo._y = 10; } ls = new Object(); ls.onResize = setPosition; Stage.addListener(ls); ---------------------------------------------- 上記だとブラウザのサイズが縦長になってしまうと下に大きく白い余白が空いてしまいます。 "noBorder"の使った時のように比率の差が大きい方のサイズに合わせたいのですが どうすれば良いのかわかります。 ご存知の方がいらしたら教えて頂ければと思います。 よろしくお願い致します。

  • スクリーン中央を中心にズームするには?

    _width、_heightを変えてムービークリップのサイズを変更した際に、そのムービークリップをスクリーン中央(Stage.width/2、 Stage.height/2)を中心にズームした様に、_x、_yも変更したいです。 onClipEvent (enterFrame){   _width = _root.size;   _height = _root.size;   // _x はどう書いたらよい?   // _y はどう書いたらよい? } _root.sizeはテキスト入力などで変えるとします。  

    • ベストアンサー
    • Flash
  • ._widthと.widthの違い

    AS2.0で次のように空のムービークリップを作成して、そのサイズをフレームごとに変えたいと思っています。 _root.createEmptyMovieClip("mc", 1); _root.mc.width = 50; _root.mc.height = 50; _root.onEnterFrame = function(){ _root.mc._width += 10; _root.mc._height += 10; }; しかしこのようにすると、._widthと.widthを両方使ってしまいます。 そもそも、この二つの違いは何なのでしょうか?

    • ベストアンサー
    • Flash
  • ASで降らせた雪のマスクの掛け方について。

    下記のサイトのASを使用させていただき、雪の降るFlashを作成したのですが、 参照サイト : http://www.webdesignlibrary.jp/2006/06/flash_snow.php このスクリプトで降らせた雪を、例えば星型の図形をマスクにして、 その範囲内で雪が降るようにしたいと思い、 色々と丸一日掛けて調べたのですが、全く上手く行きません。 とりあえず、色々と調べてみた結果、 【 xxx.setMask 】 を使えば良いのだろうか・・?、、、と言う所までは 行き着いたのですが、スクリプトを、どう改造?してみても、全く思う結果が得られません。 【 _root.setMask 】 で、ステージ全体を、目的の図形MCでマスクする事で、 思う結果に近しいカタチは出来たのですが、_root.setMask でステージをマスクしてしまうと、 例えば、マスク外に何か画像処理を施したくても、マスク外の画像は全て消えてしまいますし、 その画像の大きさ込みでマスクを作成すると、その画像の上にも雪が降ってしまうので、 完全に行き詰ってしまっています。 ASで降らせた雪だけをマスクする方法はありますでしょうか? どなたか、ご存知の方がいらっしゃいましたらば、 是非にご教示願えますと、大変ありがたいです。  何卒よろしくお願い申し上げますm(_ _)m 以下、使用AS ------------------------------------------------ width = 550; height = 400; total = 200; for (var t = 0; t != total; t++) { var mc = _root.attachMovie("snowflake", "snowflake"+t, _root.getNextHighestDepth()); mc._x = (Math.random()*(width+20))-10; mc._y = (Math.random()*(height+20))-10; mc.yspeed = (Math.random()*1.75)+0.25; mc.speed = (Math.random()*3)+2; mc._xscale = mc._yscale=(mc.speed+mc.yspeed)*10; mc.onEnterFrame = function() { var angle = Math.atan2(_root._xmouse-(width/2), _root._ymouse)+1.5707963267949; this._y += Math.sin(angle)*this.speed+this.yspeed; this._x += Math.cos(angle)*this.speed; if (this._x>width+10) { this._x = -10; } else if (this._x<0-10) { this._x = width+10; } if (this._y>height+10) { this._y = -10; } else if (this._y<0-10) { this._y = height+10; } }; } ------------------------------------------------ 【 AS使用環境 】 Adobe Flash CS3, アクションスクリプト2.0

    • ベストアンサー
    • Flash
  • マウスカーソルに応じたmcのスクロール(ループ型)

    マウスカーソルに応じて、複数配置してるmcがカーソルに合わせてスクロールして、ステージからはみ出したら、はみ出した側のステージの反対から出てくるっていうscriptを作ったのですが、うまくいきません。ループしてくれないんです。 ---- _root ---------------------- menu.mcというのがあり、そのmcの中にmenu01.mc、menu02.mc、menu03.mc・・・という感じでmcが配置してあります。menu.mc自体に別のスクリプト掛けてるので、こういう形にしてます。 ---- _root>menumc ---------------------- menu01.mcなどそれぞれのmenuのmcが入ってます。 さらに、それぞれのmcの中にscroll.mcというのをおき、そのscroll.mcにscriptが書いてあります。 ---- _root>menu.mc>menu01.mc 内scroll.mcのscript------ _visible = false; center = Stage.width/2; halfWidth = _parent._width/2; this.onEnterFrame = function() {  with(_parent){  //Scroll Speed   if (_root._xmouse<=180 || (_root._xmouse>250) && (_root._xmouse<=429)) {    moveX = (center-_root._xmouse)/15;   }else if(_root._xmouse>180 && _root._xmouse<=250){    moveX = 0;   }   _x = _x+moveX;   //Return Scroll   if(_x > Stage.width+halfWidth){    _x -= _width+Stage.width;   }else if(_parent._x < -halfwidth){    _x += _width+Stage.width;   }  } }; --------------------- で、これだときちんと思ったような動きでスクロールはするんですが、ただループしてくれないんです。しかもスクロールする毎にそれぞれのmcの間隔がずれてる気がします。最悪の場合だと、mcの上に別のmcが重なったりしてます。 なぜ、このような現象になってしまうのでしょうか?

  • 始点からクリックした位置にゆっくり線を引きたい

    Flash8を使用しています。 _root上にステージと同じサイズの四角stage.mcがあります。その上に始点(90,380)からクリックした位置まで直線を描きたいと思っていますがうまくいきません。 レイヤーは2つあり、下がstage.mc、上に以下のスクリプトを書いています。 _root.stage_mc.onPress = function() { x1 = _root._xmouse; y1 = _root._ymouse; _root.stage_mc.lineStyle(5, 0x000000, 100); //太さ5、黒、アルファ値100に設定 _root.stage_mc.moveTo(90, 380); //始点を90,380に設定 _root.stage_mc.lineTo(x1, y1); //始点からx1,y1へ直線を引く }; でも、うまくいきません。 できればゆっくりと描きたいと思っているのですが速度を調整することも可能でしょか? どうぞ宜しくお願い致します。

    • ベストアンサー
    • Flash
  • AS3でステージのサイズ変えた時にムービークリップが減速して中央に移動

    AS3でステージのサイズ変えた時にムービークリップが減速して中央に移動するFlashの作り方で悩んでいます。 参考にしてるものはこれなんですが↓ http://hfm-kenchan.com/Lesson/sample/centermovie11/top.htm これをActionScript3で作ろうと今現在このようにコーディングをしています。 ※my_mc:ステージ中央にあるムービークリップ stage.align=StageAlign.TOP_LEFT; stage.scaleMode=StageScaleMode.NO_SCALE; stage.addEventListener(Event.RESIZE, resize_control); function resize_control(eventObject:Event):void { my_mc.x = (stage.stageWidth - my_mc.width)/2; my_mc.y = (stage.stageHeight - my_mc.height)/2; const spd:Number=1/5; my_mc.addEventListener(Event.ENTER_FRAME, center_movie); function center_movie(event:Event):void { my_mc.x += ((stage.stageWidth - my_mc.width)/2 - my_mc.x)*spd; my_mc.y += ((stage.stageHeight - my_mc.height)/2 - my_mc.y)*spd; } } 現在はリサイズするとmy_mcはステージ中央にいるのですが参考にしてるものみたいに減速して中央に移動するというものが作れません。 どうしたらいいのかどなたかアドバイスしていただけませんか? よろしくお願いします。

    • ベストアンサー
    • Flash

専門家に質問してみよう