MozillaZine.jp フォーラム https://forums.mozillazine.jp/ |
|
firefox6 のimgタグの動作について https://forums.mozillazine.jp/viewtopic.php?f=2&t=11959 |
ページ 1 / 1 |
作成者: | kuma [ 2011年8月30日(火) 19:43 ] |
記事の件名: | firefox6 のimgタグの動作について |
firefox6に下記HTMLコードのファイルをドロップすると WEB開発ツールのWEBコンソール上で2回読み込みが発生しているようにみえるのですが これは仕様でしょうか? そもそもIMGタグにsrc属性が必須なのでおかしな質問なのですが IMGタグを<IMG> 、<IMG src="A">などに変更した場合は2回読み込み の動作をしません。 また<IMG src=" ">とすると3回読み込みが発生しているようにみえます。 firefox 3.6.20では<IMG="">のタグを使用しても 2回読み込みが発生していないようなので気になって質問をしました。 コード: <HTML>
<HEAD> </HEAD> <BODY> <IMG src=""> </BODY> </HTML> |
作成者: | 偶然的通行人 [ 2011年9月02日(金) 08:17 ] |
記事の件名: | Re: firefox6 のimgタグの動作について |
ご質問の動作が Firefox の仕様かどうかは、ぼくもわかりませんが、2 回読み込んでいるように見えるのは次のようなことではないでしょうか。 まず、[Web コンソール] の動作を確認しておきます。 ご質問の操作の結果、Firefox 6.0 の [Web コンソール] で表示されているのは [ネットワーク] の [ログ] 項目だと思います。ここは、Firefox が読み込みをおこなったファイルの URL が記録されるようです。 (A)― 基準となる動作の確認 (以下、: は全角にしてあります。) ご例示の HTML ソースのうち、img タグに実在する画像の URL を次のように記述した、 <img src="file:///C:/sample/picture.jpg"> ごく順当な C:\sample\test.html を Firefox に読み込ませると、ロケーションバーには file:///C:/sample/test.html と表示され、Web コンソールには file:///C:/sample/test.html file:///C:/sample/picture.jpg の 2 つが記録されます。 test.html 自身と、その中に指定されていて読み込めた URL を記録しているのがわかります。 コンテンツエリアには画像を含めて意図どおりにページが表示されます。 (B)― 対照実験 img タグに、構文として不適切な文字列を次のように記述して、 <img src="P"> (A)と同様に Firefox に読み込ませると、ロケーションバーには file:///C:/sample/test.html と表示され、Web コンソールには file:///C:/sample/test.html だけが記録されます。 test.html は読み込めたが、その中に記されてた <img src="P"> は実在しないため読み込めず、Web コンソールには読み込めた 1 つしか記録されていません。 コンテンツエリアに画像は表示されません。 で、本題はここからです。 ご質問のように、<img src=""> の指定をブランクにした条件では、Web コンソールに file:///C:/sample/test.html file:///C:/sample/test.html のように元の HTML ファイルの URL が 2 つ記録されます。 結果的には、<img src=""> の対象として元の HTML ファイルを読み込もうとしているようにも見えます。 実際、test.html は存在するので二重に読み込めてはいて、その記録が Web コンソールに表れているのかもしれません。 コンテンツエリアの表示は、(B)の場合と同じで何も表示されません。test.html を二重に読み込んだことで不規則な表示なるようなことは確認できませんでした。 Internet Explorer など、手持ちの複数のブラウザでも試してみましたが、ブラウザの表示では顕著な差を見出せませんでした。 kuma さんがおっしゃっているように、src 属性の値をブランクにしたままというのは規格外の不適切な指定ということになります。 そのような場合の表示方法や読み込み動作まで HTML の規格で定義されているかどうかは知りませんが、もし処理をブラウザに任せているならブラウザごとに差があると考えられます。 HTML 文法の解釈に関するブラウザ本体の既定の動作なのか、バグなのか、それとも単に Firefox の [Web コンソール] の問題なのか、そのあたりも判断できません。 Firefox(Web コンソール?)の挙動には不可解さが残りますけど、ざっと見るかぎり実害はなさそうです。 ただ、src 属性は、かつてブラクラなどで盛んに悪用されたことがありますので(今もまだある?)、あまり変則的な使い方をすべきではないと思います。 ご質問への答えにはほど遠いですが、いちおうわかる範囲での検証と考察ってことで...。 見当違いなことを書いてたらすみません。 |
作成者: | Masayuki [ 2011年9月04日(日) 11:27 ] |
記事の件名: | Re: firefox6 のimgタグの動作について |
偶然的通行人 さんが書きました: ご質問のように、<img src=""> の指定をブランクにした条件では、Web コンソールに
file:///C:/sample/test.html file:///C:/sample/test.html のように元の HTML ファイルの URL が 2 つ記録されます。 結果的には、<img src=""> の対象として元の HTML ファイルを読み込もうとしているようにも見えます。 実際、test.html は存在するので二重に読み込めてはいて、その記録が Web コンソールに表れているのかもしれません。 コンテンツエリアの表示は、(B)の場合と同じで何も表示されません。test.html を二重に読み込んだことで不規則な表示なるようなことは確認できませんでした。 HTML5での規定がどうなってるか分かりませんが、空文字列のパスを相対パスとして処理しているように見えますね。<iframe>あたりだとネストが発生するのかも…… |
作成者: | kuma [ 2011年9月08日(木) 10:54 ] |
記事の件名: | Re: firefox6 のimgタグの動作について |
ご回答ありがとうございます。 質問後に自分でも調べてみてのですが 下記ページで同様の件の記事がありました。 http://journal.mycom.co.jp/articles/2010/07/15/no-url-on-src-and-href-issue/index.html 上記URLのページは2010年の記事なのですがFirefox3.5では修正されていると 記載されていることからFirefox6ではまた修正前に戻っているというようにみえます。 偶然的通行人 さんが書きました: Firefox(Web コンソール?)の挙動には不可解さが残りますけど、ざっと見るかぎり実害はなさそうです。
ただ、src 属性は、かつてブラクラなどで盛んに悪用されたことがありますので(今もまだある?)、あまり変則的な使い方をすべきではないと思います。 偶然的通行人さんのいわれているとおり、実害はなさそうなのと Firefoxだけの問題ではないみたいので、この質問はこれで解決とします。 ご回答いただいたみなさまありがとうございました。 |
ページ 1 / 1 | All times are UTC + 9 hours |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |