• ベストアンサー
  • すぐに回答を!

外部ファイルを指定するとページ上部に空白が

  • 質問No.426820
  • 閲覧数144
  • ありがとう数2
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 75% (3/4)

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はアクセス解析用のスクリプトを入れています。後者を追加してから空白が出てきたような気がします。
スクリプトの種類によってこういうことが起きるのでしょうか?
ご回答お願い致します。

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

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

ベストアンサー率 25% (453/1783)

> できれば解析スクリプトをソースで表示させないようにしたいと思っています。

ですから、外部ファイルにしておけばよいでしょう。

> imgタグをdocument.writeで何行かにわけて生成しているみたいです。これがダミー画像でしょうか?

そうです。

> この画像のサイズを指定し小さくできれば空白も少なくなるのでしょうか?

無くなりはしませんし、おそらくすでに1pixelで出していると思います。
それでも文字の1行分取られてしまいます。

> body内に書くのは大丈夫なのでしょうか?

どこにでも書けますよ。
ヘッダーに書くのは、事前に読み込ませて、使いたいところで出力するためです。
だから、
function xxx {
となっていろものが多いでしょ?
本文中に書くのは、そこで出力したい場合です。
出したいところに書けばよいですよ。

↓参考
お礼コメント
racom

お礼率 75% (3/4)

一つ一つご丁寧にありがとうございます。
あれから実際に試して、問題ないことがわかりました。
大変たすかりました。本当にどうもありがとうございました。
投稿日時:2002/12/13 13:16

その他の回答 (全2件)

  • 回答No.2

ベストアンサー率 25% (453/1783)

アクセス解析をJavaScriptでやっているということですようか?
私はperlで書いて、呼び出していますけど・・・
それとも、外部に置いたJavaScriptからまたcgiを呼んでいるのかな?

いずれにしても、解析ソフトは、ダミー画像を出力していませんか?
そういったタイプなら、当然空白ができますので、Body中のどこか、影響の出ないところで指定した方が良いでしょう。
私はロゴ画像のすぐ横とか、一番下に入れていますよ。

ただ単に<body>と</body>の間のどこか影響が無いところに書いてください。
お礼コメント
racom

お礼率 75% (3/4)

解析用スクリプトはjavascriptでできていました。
スクリプト部分のみをペーストして****2.jsとして保存しています。

>ダミー画像を出力していませんか?
解析用スクリプトを確認してみたところ、imgタグをdocument.writeで何行かにわけて生成しているみたいです。これがダミー画像でしょうか?
ということはこの画像のサイズを指定し小さくできれば空白も少なくなるのでしょうか?

>Body中のどこか、影響の出ないところで指定した方が良いでしょう
下記お礼にも書きましたとおり、できれば解析スクリプトをソースで表示させないようにしたいと思っています。
<script type="text/javascript" src="http://test.com/****2.js"></script>
をbody内に書くのは大丈夫なのでしょうか?リファレンスなどで「外部ファイルの指定の仕方」などを見ると全て<head>内にかかれているのでそこじゃないとダメなんじゃないかと思っていました。

とにかく試してみることにします。
ご回答いただいたことでかなり糸口が見つかりました。
本当にありがとうございます。
投稿日時:2002/12/13 12:09
  • 回答No.1

ベストアンサー率 50% (1/2)

アクセス解析用のスクリプトは、その場所に入れては空白ができます。
アクセス解析用のスクリプトは<head></head>の間出ないとだめということはないので、デザイン的に余裕がある位置。たとえばテーブルで使っていない列の中や、20×20ピクセルぐらいひろがってもオッケーな部分にいれると、いけますよ。
補足コメント
racom

お礼率 75% (3/4)

やはり、解析用スクリプトだとスペースが空いてしまうということなんですね。
ありがとうございます。

今回は解析用スクリプトをソースに出したくなかったので外部ファイルにしたのですが、body内でも外部ファイル指定タグは使えるのでしょうか。できなければ、何か他に方法はありますでしょうか?
よろしくお願いします。
投稿日時:2002/12/13 11:09
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ