• ベストアンサー

HPが上手く表示されないんです

自作HPが実家のPCで上手く表示されないんです(´-`) そのページは、まずフレームで横に分割の後、縦に分割して3分割の状態にし(図1)、上ページに縦分割のフレームページを読み込ませて、全部で4分割されたページです(図2)。 ┌───┐ ├┬──┤←図1 └┴──┘ ┌┬──┐ ├┼──┤←図2 └┴──┘ それで、右下フレーム以外のBODYタグ内に「style="overflow-x:hidden;overflow-y:hidden;"」と書き、右下フレームにもスクロールバーの色をオレンジ色に変えるスタイルシートを読み込ませています。 でも実家のPCでは、全フレームにスクロールバーが出ていて、右下フレームのスクロールバーもオレンジ色じゃないんです。 私自身のや学校のPCで表示した時はスクロールバーは出ません。たぶん実家のPCのブラウザ設定に原因があると思います。何か考えられる原因があれば教えて下さいm(_ _)mその他、友達のHPの掲示板(CGI)も表示されなくて、書き込めなくて困ってます。そちらの解決法もあれば教えて下さい。実家のPCはWin98、IE4.0です。バージョンが古いだけでしょうか? また、自作HPの方で同じような表示になる別の書き方は無いでしょうか? 右下のフレーム以外は飾りみたいな感じです。右上フレームの背景は横に、左下フレームには縦に緑のギザギザが続くようにして、左上フレームの背景は全面が緑色になるようにしています。そして左下フレームにメニューを縦に並べてます。右下フレームにメニューで選んだ内容が表示されます。 (本当はHPのURLを書いた方が早いんでしょうけど…) やはりフレームを使わない方が良いでしょうか?何か良い案があれば教えて下さい。お願いします。

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

  • ベストアンサー
  • takieri
  • ベストアンサー率42% (28/66)
回答No.1

■スクロールバーの色  スクロールバーの色がオレンジに表示されないのは、ご自宅のPCのIEのバージョンが古いからのでは?  IE6.0以前のブラウザでは、スクロールバーの色設定に対応してないと思います。  ネスケでも対応していません。 ■全フレームにでるスクロールバー  背景画像の縦横サイズを表示しようとブラウザが思っているので、背景画像のピクセル寸法とフレームのピクセル寸法を同じにすれば大丈夫だと思います。  しかし、それよりもフレームページのソースで編集したほうが便利だと思います。 --全体.htmlのソース <FRAMESET rows="50%,50%" frameborder="NO"> <FRAME src="上フレーム.html"> <FRAMESET cols="50%,50%" frameborder="NO"> <FRAME src="下左.html" scrolling="NO"> <FRAME src="下右.html" scrolling="AUTO"> </FRAMESET>  こうするとスクロールバーは、右下のページ以外は バーが出ません。  上のフレームは2分割してありますから、 ---上フレーム.htmlのソースの一部 <FRAMESET cols="50%,50%" frameborder="NO"> <FRAME src="上左.html" scrolling="NO"> <FRAME src="上右.html" scrolling="NO"> <FRAMESET> こう直します。  

noname#3887
質問者

お礼

スクロールバーの色の方は、対応していないブラウザがまだまだ多い事は十分承知なので、諦めます(^-^) > SCROLLING="no" そう言えば、そんなのありましたね!忘れてました(^^;)付け足したら思った通りに表示されました。ありがとうございました!

その他の回答 (4)

  • leaz024
  • ベストアンサー率75% (398/526)
回答No.5

> ネスケだと、TDの背景指定をすると、テーブルの背景を指定しなくてもTDのと同じ背景が指定されるとか聞いたんですけど… それはないと思います。簡単なHTMLで試しましたが、NN4.7 及び NN6.2 では問題ありませんでした。 それから、フレームのきり方とテーブルについてなんですが、No.3の方法だとNN4で表示が崩れることが分かりました。 なので、フレームは ┌┬──┐ |├──┤ ||   | └┴──┘ となるようにし、左側のHTMLをテーブルで上下に切るとOKのようです。 ○フレーム設定 <FRAMESET cols="100,*" border="0" frameborder="no">  <FRAME src="menu.html" name="menu" noresize scrolling="no">  <FRAMESET rows="20,*" border="0" frameborder="no">   <FRAME src="ue.html" name="ue" noresize scrolling="no">   <FRAME src="main.html" name="main" noresize scrolling="auto">  </FRAMESET> </FRAMESET> ○テーブル設定(menu.html) <BODY topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" background="縦のギザギザ画像"> <TABLE border="0" cellpadding="0" cellspacing="0" width="100%" height="20" bgcolor="緑色"> <TR><TD><IMG src="space.gif" width="100" height="20"></TD></TR> </TABLE> <!-- ここからメニューの内容 -->        : </BODY> ※テーブルは中に何か入れないとつぶれてしまうので、透明のGIF画像(ここでは space.gif)を用意し、サイズ指定をして入れてやります。

noname#3887
質問者

お礼

ありがとうございます!早速そういう風に変えようと思います。

  • leaz024
  • ベストアンサー率75% (398/526)
回答No.4

> でも、テーブルの背景画像指定って、ネスケで表示する時に変に表示されませんでしたっけ? TABLE や TD タグの background 属性は、IE3/NN4 以上で有効ですので、たいていの環境では大丈夫だと思います。 あと No.3 の回答で、</FRAMESET> であるべき部分を、間違えて </FRAMEBORDER> と書いてしまいました。 すみません。

noname#3887
質問者

お礼

あ、詳しく書かなくてすみません。 ネスケだと、TDの背景指定をすると、テーブルの背景を指定しなくてもTDのと同じ背景が指定されるとか聞いたんですけど、じゃぁそれも大丈夫ですか?何回も聞いてしまってすみません。問題無いようならテーブル使おうと思います。

  • leaz024
  • ベストアンサー率75% (398/526)
回答No.3

スタイルシートは、ブラウザの種類やバージョンによって機能しなかったり、効果が違ったり、バグによって表示に障害が起きたりするので、使用には十分な注意が必要であると共に、スタイルシートが機能しないと表示に支障をきたすようなページ作成は避ける必要があります。 まず overflow-x と overflow-y についてですが、これらの属性は IE5 以上でないと機能しません。 これらは縦横に異なる設定をするために用意された属性でなので、両方に同じ指定をするのであれば、一括して指定を行う overflow (IE4 以上で有効)を使うとよいでしょう。 ただし、フレームごとのスクロールバーの表示制御は、FRAME タグの scrolling 属性で指定するのが一般的です。 また、スクロールバーの色指定を行う scrollbar-XXX-color という属性は、全て IE5.5 以上でないと機能しません。 これより下はアドバイスです。 フレームは分割数が多いほど表示までの時間が遅くなり、サーバーにも負荷がかかります。 説明を読んだ限りでは、フレーム分割を行う HTML が2枚、表示用 HTML が4枚あるように思うのですが、下記のような工夫でフレーム分割 HTML は1枚(図1のもの)、表示用 HTML は3枚に抑えることができます。 ○フレーム設定例 <FRAMESET rows="20,*" border="0" frameborder="no">  <FRAME src="ue.html" name="ue" noresize scrolling="no">  <FRAMESET cols="100,*" border="0" frameborder="no">   <FRAME src="menu.html" name="menu" noresize scrolling="no">   <FRAME src="main.html" name="main" noresize scrolling="auto">  </FRAMEBORDER> </FRAMEBORDER> ○ue.html の例 <BODY topmargin="0" leftmargin="0" marginwidth="0" marginheight="0"> <TABLE border="0" cellpadding="0" cellspacing="0" width="100%" height="100%">  <TR>   <TD width="100" bgcolor="緑色">&nbsp;</TD>   <TD background="右上用だったギザギザ画像">&nbsp;</TD>  </TR> </TABLE> </BODY> ※FRAMESET タグ内の 20 や 100、及び TD タグ内の 100 は、適宜調整して下さい。

noname#3887
質問者

お礼

フレーム4分割は多いですよねー…私もその点はちょっと問題ありかなぁと思ってたんです。でも、テーブルの背景画像指定って、ネスケで表示する時に変に表示されませんでしたっけ?私の記憶違いだったら良いんですけど…すみません。 overflowについて、ありがとうございました!これは知りませんでした。まだまだスタイルシート勉強中なので、参考になります(^-^)

  • kikyo777
  • ベストアンサー率26% (53/199)
回答No.2

スタイルシートはIE5.5以上からですね(たしか・・・) 少なくとも私は見れてますので。 5.0はダメだったような・・・ ウイルス対策の為にも5.5SP2にアップされた方がいいと思いますよ。

noname#3887
質問者

お礼

やっぱりIE4.0は少し古いですよね。 実家の者はあまりパソコン詳しくないようなので、新しいのインストールしようと思います。ありがとうございました。

関連するQ&A

専門家に質問してみよう