MacのNetscape4.x・文字コード「EUC」・スタイルシート・フレームの関係

このQ&Aのポイント
  • MacのNetscape4.xで文字コード「EUC」を使用してフレームセット内のCSSを正常に動作させる方法はあるのか?
  • MacのNetscape4.xでフレームを使いつつ、文字コード「EUC」でCSSを正しく適用する方法を教えてください。
  • MacのNetscape4.xで文字コード「EUC」を使用し、フレームセット内で正常にCSSを反映させる方法を教えてください。
回答を見る
  • ベストアンサー

MacのNetscape4.x・文字コード「EUC」・スタイルシート・フレームの関係

ページを文字コードはEUCで、フォントはCSSで指定しています。 フレームを切らない場合は、Netscape4.xで、 文字コードセットを「自動判別・Shift-jis・EUC」のどれに切り替えても ちゃんとCSSが反映されます。 フレームを定義した場合、Netscape4.xの文字コードセットが、 元々「EUC」になっていた場合でも、CSSが反映されなかったりされたりと 不安定です。 (※最初の表示画面ではCSSが効いているのですが、再読込を2度勝手にNSが繰り返した後に、CSSが効かなくなる場合もあります) 「自動判別」になっていた場合は、CSSは反映されません。 最初は外部cssファイルをブラウザごとにJavaScriptで振り分けていたのですが、JavaScriptとNS4.xの相性が悪いのかと思い、 JavaScriptもやめてCSSはHTML内に埋め込んだのですが、やはりダメでした。 ソースはこれです↓。 <HTML><HEAD> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=EUC-JP"> <TITLE></TITLE> <style type="text/css"><!--.j12{ font-size: 12px;}--></style> </HEAD> フレームセットファイルには、特に特別なことはしていません。 <html><head> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=EUC-JP"> <title>テスト</title></head> <FRAMESET ROWS="*,70" FRAMEBORDER="no" FRAMESPACING=0> <FRAME SRC="main.html" MARGINWIDTH=0 MARGINHEIGHT=0 TOPMARGIN=0 LEFTMARGIN=0 SCROLLING="auto" NORISIZE FRAMEBORDER="NO"> <FRAME SRC="navi.html" MARGINWIDTH=0 MARGINHEIGHT=0 TOPMARGIN=0 LEFTMARGIN=0 SCROLLING="no" NORISIZE FRAMEBORDER="NO"> </FRAMESET><NOFRAMES> 文字コード「EUC」で、フレームを切っていて、CSSをMacのNetscape4.xで 正常に動作させるには、どうしたらよいでしょうか? 教えて頂けると助かります。よろしくお願いします。

  • HTML
  • 回答数2
  • ありがとう数2

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

  • ベストアンサー
回答No.2

うまく行きましたか。それは良かった。 で、文字化けですが、Apacheを使っていて、.htaccessでのMIME Typeの設定権限を 委譲されているのでしたら、METAタグの代わりに AddType "text/html; charset=euc-jp" html を加えておいてみてください。METAタグ形式よりこちらのほうが 正式です(下記URL参照。ただし、なぜかeuc-jpにすべきところが iso-2022-jpと間違っていたりする)。 (でも、ふたたび最初の問題が発生するようになったりするかも…) もしそれがダメなら、汚い方法ですが自動判別を間違えないような 文字を先頭のほうに置く、という手段があります。 例えば、この「教えて!goo」のソースを見てください。冒頭のほうに コメントで<!-- 龠 -->なんてのがありますよね。これがそうです。 他にも、yahooのトップページとか、いろいろチェックしてみてください。 まあ、ヘッダにcharsetを付加させていながらさらに2重の予防として このテクニックを使っているところもあるでしょうけど。

参考URL:
http://hp.vector.co.jp/authors/VA014833/charset.html
eggchoco
質問者

お礼

ご回答ありがとうございました。 >.htaccessでのMIME Typeの設定 この方法は知りませんでした。勉強になります。 でもこれはちょっと無理な状況なので、今回は他の対応策でどうにかしなければ。 <HTML><HEAD><!-- 龠 --> <TITLE>てすと</TITLE> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=EUC-JP"> これで試してみました。 でもやっぱりネスケだと「EUC」に自動で判別はしてくれませんでした・・。 自分で「EUC」にした後、リロードしないとCSSは効きませんでした。 「EUC」でフレームを切っていて、CSSを使っているページは探せばきっと見つかりますよね。 探してソース見てもっと研究してみます。 ありがとうございました。

その他の回答 (1)

回答No.1

似たような現象に遭遇したことがあります。ただ、Macでは ありませんでしたが。 そのときは、METAタグのcharset設定を取ってみたら直った 記憶があります。JavaScriptやCSSはいまのところ外部ファイルでも 問題無いようです。 eggchocoさんの問題が解決する自信はありませんが、なにかのおりに 試してみてはどうでしょう?

eggchoco
質問者

補足

ご回答ありがとうございました。 早速METAタグのcharset設定を取ってみました。 うまく行きました!CSSは読み込んでいます。 でも、文字化けを起こしてしまいます・・・。 フレームセットファイルのcharsetだけを取っても、 うまくCSSを読み込みましたが、<TITLE>部分に日本語を入れなくてはならならないので、文字化けは困りものです。 Head_Syndicateさんの時は、文字化け起こりませんでしたか? もしこの現象にも遭遇していたら教えて下さい。 お願いします。

関連するQ&A

  • フレームページの隙間

    フレームページを作ったのですが、フレームの間の隙間をなくしたのですがどのようになくすのか解りません。どうか教えて頂けないでしょうか。お願します。 実際のソースコート <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <META name="GENERATOR" content="IBM HomePage Builder 2001 V5.0.0 for Windows"> <TITLE>もっくもっく</TITLE> </HEAD> <FRAMESET rows="155,*" frameborder="0" border="0" framespacing="0" framepadding="0"><!-- 上のフレーム --> <FRAME src="osawa1.html" name="1" scrolling="no" noresize topmargin="0" marginheight="0" leftmargin="0" marginwidth="0"> <FRAMESET cols="700,*" frameborder="0" border="0" framespacing="0" framepadding="0"><!-- 左のフレーム --> <FRAME src="osawa2.html" name="2" scrolling="auto" noresize mtopmargin="0" marginheight="0" leftmargin="0" marginwidth="0"> <!-- 右のフレーム --> <FRAME src="osawa3.html" name="3" scrolling="no" noresize topmargin="0" marginheight="0" leftmargin="0" marginwidth="0"> </FRAMESET> <NOFRAMES> <BODY topmargin="0" marginheight="0" leftmargin="0" marginwidth="0">フレーム対応ブラウザでご覧ください。</BODY> </NOFRAMES> </FRAMESET> </HTML>

  • IEとスタイル

    <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> というタグがあります。 IE5,6,7にスタイルで対応させるには <style type=text/css>body{margin:0}</style></head><body> でよいですか?

    • ベストアンサー
    • HTML
  • HTMLをCSS

    ●<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> ●<table cellpadding="0" cellspacing="0"> 上記HTMLをCSSで設定するにはどういうソースになるのでしょうか? 教えて下さい。

    • ベストアンサー
    • HTML
  • 背景画像の折り返しをしたい

    背景画像を横に折り返したいのですが、下のタグを打つと、ドキュメントウインドウでは表示されるのですが、ブラウザで見ると何も表示されません。 画像の格納場所は、あっているはずですが、どこが間違っているのかわかりません。。。 dreamweaver MX、ブラウザはIE6.0を使用しています。 手打ちで行ったのですが、DREAMWEAVERの操作でできるのであれば、その方法も知りたいです。 お手数ですがどなた教えてください。よろしくお願いします。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>上のフレーム</title> <STYLE type="text/css"> <!-- BODY{ background-image:url(/img/top/line2.gif); background-repeat:repeat-x; } --> </STYLE> </head> <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> </body> </html>

  • チャットの入室時のコメント・参加者の非表示

    今研究でPHPとMysqlを使ったチャットを作ってるんですが、どうやればチャットのコメントと参加者をを非表示にできるのかわかりません。どんな小さな事でもいいので教えてください。 ちなみに僕はmain画面をframeで作っていてdisplayとmemberとloginとspeakから構成されています。main画面ソースを乗せます。よろしくお願いします。 <html> <head> <title>My Chat Room</title> </head> <frameset rows="80%,20%" frameborder="0" border="0"> <frameset cols="70%,30%" frameborder="0" border="0"> <frame src="display.php" name="chatdisplay" MARGINHEIGHT="0" MARGINWIDTH="0" Scrolling="no"> <frame src="member.php" name="member" MARGINHEIGHT="0" MARGINWIDTH="0" Scrolling="no" > </frameset> <frame src="login.php" name="login" MARGINHEIGHT="0" MARGINWIDTH="0"> </frameset> </html> ほかにもソースがいるという方はいってください。アップします。

    • 締切済み
    • PHP
  • 外部ファイルを指定するとページ上部に空白が

    bodyやcssでマージンは全てにしているのですが、javascript外部ファイルを読み込ませようとして記述を追加すると上部に空白ができてしまいます。 何が原因なのでしょうか? ↓ページのソース(都合によりファイル名は全て仮名ですすいません) <head> <title>サンプルページ</title> <meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> <script type="text/javascript" src="http://test.com/****1.js"></script> <script type="text/javascript" src="http://test.com/****2.js"></script> <link rel="stylesheet" type="text/css" href="http://test.com/****.css"> <style type="text/css"> <!-- body { background-position: 0px 0px} --> </style> </head> <body topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" bgcolor="#FFFFFF" text="#333333"> スクリプトの場所は全て絶対パスで指定しています。 また、charsetがeucなのはこのファイルがphpで記述されているためです。 ****1.jsはページで使うスクリプト全て(ポップアップやロールオーバー等)を記述、****2.jsはアクセス解析用のスクリプトを入れています。後者を追加してから空白が出てきたような気がします。 スクリプトの種類によってこういうことが起きるのでしょうか? ご回答お願い致します。

  • javascriptのエラー

    スクリプトエラーが発生します。 ウィンドウのサイズを変更させようとウィンドウ右端をドラッグしようとすると発生するエラーで 「ランタイム エラーが発生しました。行8:エラー:オブジェクトを指定してください」と出ます。 1:<HTML> 2:<HEAD> 3:<TITLE>情報</TITLE> 4:<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=x-sjis"> 5:<LINK rel="stylesheet" href="../common/xxx_win.css" type="text/css"> 6:<SCRIPT SRC="/common/xxx.js" LANGUAGE="JavaScript"></SCRIPT> 7:</HEAD> 8: 9:<BODY BACKGROUND="../common/bg01.gif" BGCOLOR="#FFFFFF" LINK="#1100CC" ALINK="#FF0000" VLINK="#5500CC" TEXT="#000000" TOPMARGIN="0" LEFTMARGIN="0" RIGHTMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0" onResize="MyReload();"> というのがソースです。 どなたかエラーの原因がわかりましたら、教えていただけませんか? よろしくお願いいたします。

  • フレームで表示すると

    自分でフレームを組んだのですが、 IEだと大丈夫だったのですが、 NN4.7で崩れてしまいました。 フレームの間に白い線が入ってしまいます。 原因がわからず、ここに質問しております。 一つの画像を縦3つに分け、真ん中は横3つに分け、 合計5マド構成のフレームにしたいと思っています。 インラインフレームのような感じです。 インラインフレームだとNNでは表示されないので、 このような形にしようと思いました。 下記のようなソースでは何か問題があるのでしょうか。 教えてください、宜しくお願いします。 <frameset rows="*,*,*" frameborder="0" framespacing="0" border="0"> <frame src="top.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> <frameset cols="*,*,*" frameborder="0" framespacing="0" border="0"> <frame src="midddle_left.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> <frame src="midddle_midddle.htm" marginwidth="0" marginheight="0" scrolling="yes" noresize> <frame src="midddle_right.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> </frameset> <frame src="bottom.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> </frameset>

  • フレームが固定できない

    Dreamweaverで左固定メニューで右にメインフレームがでるものをつくっています。 プレビューでみると画面の大きさを大きくすると左フレームと右フレームのあいだに白い余白ができ、画面を小さくするとその間が交差しながら小さくなります。 noresizeをいれているのですが、これがなおりません!画面の大きさをかえても右フレームと左フレームの境界線をなしにしたいのですがどうしたらいいのでしょう。 ちなみにコードはこうなっています。 <frameset rows="*"cols="245,900" frameborder="no" border="0"> <frame src="menu/menu.html" name="leftframe" frameborder="no" scrolling="no" noresize="noresize" marginwidth="0" marginheight="0" id="leftframe" border="0"/> <frame src="welcomephoto.html" name="mainframe" frameborder="no" noresize="noresize" marginwidth="0" marginheight="0"id="mainframe" border="0" /> </frameset> <noframes><body> </body> </noframes></html>

  • フレーム定義のページを暗号化したい

    XORHTMLを使って暗号化したけれど表示できずに困ってます。 フレーム定義のないごく普通のhtmlはきちんと表示できますが、この(↓)htmlは表示できませんでした。 XORHTMLはフレーム定義のページには対応していないのでしょうか? フレームに定義されている2つのhtmlページのアドレスを知られないようにするにはどういう方法がありますか? 教えてくださいお願いします。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>welcome</title> </head> <frameset rows="100,*"> <frame src="welcome.html" name="1" frameborder="0" scrolling="no" noresize marginwidth="0" marginheight="0"> <frame src="sub.html" name="2" frameborder="0" noresize marginwidth="0" marginheight="0"> </frameset> <noframes> このページはフレームを使用しています</noframes> </html>