7

(ファイル自体の中に) 画像を含む HTML ファイルを出力できるようにしたいと考えています。グーグルで、これを行ういくつかの方法に出くわしました:

  • javascript:imageData
  • のようなデータ URI<IMG SRC="data:image/gif;base64,[...]">
  • <object ... >タグ (ただし、これはデータ URI を使用するため、同じ制限を継承する場合があります)

しかし、ブラウザでどちらがより適切にサポートされているか、または他の選択肢があるかどうかはわかりません。

これについて実際の経験をお持ちの方にアドバイスをいただけますか? ありがとう。

4

4 に答える 4

8

ウィキペディアからのブラウザサポートに関して:

データ URI は現在、次の Web ブラウザーでサポートされています。

  • Gecko およびその派生物 (Mozilla Firefox など)
  • オペラ
  • KIO 入出力システムを介した KDE。これにより、KDE ​​ブラウザである Konqueror がデータ URI をサポートできるようになります。
  • サファリ; Safari のレンダリング エンジンである WebKit は Konqueror の KHTML エンジンから派生したものですが、Mac OS X は KIO スレーブ アーキテクチャを共有していないため、実装は共有されていません。
  • iPhone 用の Safari。
  • グーグルクローム
  • Internet Explorer 8; Microsoft は、データ URI に埋め込まれた JavaScript が Web ベースの電子メールで使用されるようなスクリプト フィルターによって解釈されない可能性があるという懸念を含め、セキュリティ上の理由から、タグや CSS ルールなどの特定の「ナビゲートできない」コンテンツのサポートを制限しています。クライアント。データ URI は 32k 未満にする必要があります。
  • TheWorld ブラウザ; データ URI スキームのサポートが組み込まれている IE シェル ブラウザです。

<object>IE はタグを正しく処理しません。詳細については、こちらを参照してください。簡単に言えば、IE が画像を表示することを信頼することはできません。

またjavascript:imageData、多くのクロス サイト スクリプティング攻撃で使用されるため、十分にサポートされていません。

これについてはウェブ上で多くの議論があり、それらはすべて、画像を埋め込むための優れた普遍的な方法はないという結論に達しています. ブラウザーのサブセットのみをサポートする必要がある場合は、データ URI が機能するか、データ URI と JavaScript の組み合わせが機能する可能性があります。

于 2010-01-18T09:14:13.427 に答える
1

imageData はより柔軟です。たとえば、一部の ie ではデータ URI が 32k に制限されています。

于 2010-01-18T09:10:32.670 に答える
1

データ URI スキームは、バージョン 8 より前の Internet Explorer を除いて、適切にサポートされています。

JavaScript URI のサポートは多少改善されていると思いますが、JS が利用できない場合は失敗します。

あなたができる最善のことは、外部の画像リソースに固執することです.

于 2010-01-18T09:11:10.137 に答える
0

データ URI は IE8 未満では機能しません。IE8 は最大 32KB までサポートします。

于 2010-01-18T09:11:47.253 に答える