2009-06-05 13 views
3

私は、テキストファイルからhtmlを取得し、そのHTMLをWebページにレンダリングするページを持っています。 今はどこかに画像を追加し、その画像srcを参照する必要があります。htmlでイメージをレンダリングすることは可能ですか?

他のhtmlコードと一緒に画像をレンダリングできるかどうか、私は疑問に思っていましたか?

答えて

8

はい、そうです。あなたはData URI schemeが必要です

<img src="data:image/png;base64, 
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP 
C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA 
AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J 
REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq 
ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0 
vr4MkhoXe0rZigAAAABJRU5ErkJggg==" alt="Red dot" /> 

同じCSSで行うことができます

ul.checklist > li.complete { margin-left: 20px; background: 
    url('data:image/png;base64, 
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAA 
ABlBMVEUAAAD///+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/5 
8ZDrAz3D/McH8yw83NDDeNGe4Ug9C9zwz3gVLMDA/A6P9/A 
FGGFyjOXZtQAAAAAElFTkSuQmCC') top left no-repeat; } 
+7

非常に最新のバージョンのIEだけがデータURIをサポートすることに注意してください。 –

1

私は、セルの背景色を設定し、それは各画素ごとに一つのセルを持つテーブルを作成することによって行わ見てきましたピクセルの色。

+2

これは可能ですが、ハックであり、膨大なDOMを処理するブラウザをクロールする傾向があることに注意してください。 – Quentin

+0

数ヶ月前にオフィスのジョークとして、私はちょうどこれを行うpythonスクリプトを書いた。デビッド氏は、ブラウザの速度を遅くする膨大な量のHTMLを生成すると指摘しています。私のテストでは、約3.5MBを超えるHTMLは500x500のサイズの画像であるブラウザをクラッシュさせます。 https://gist.github.com/705023 –

2

また、CSSと異なるサイズの文字を使用して画像を作成し、Z-インデックスで再生することもできます。ここにはCSS Homerがあります。

+0

+1これは本当にs(l)ickのアイデアです。 –