4

Web ページで SVG の実験を始めたところですが、予想とは<object />異なり、タグを使用してのみ SVG 画像を HTML に追加できることがわかりました。<img />グラフィックはコンテンツではなくサイトのプレゼンテーションの一部であるため、ほとんどの場合、CSS を使用して Web ページにグラフィックを追加します。

CSSをSVGに適用できることは知っていますが、純粋に CSS を使用して HTML 要素にベクター画像を追加することは可能ですか?

4

5 に答える 5

5

SVGは<img>、Opera 9以降のCSS(list-image、background-image、content)でサポートされています。Opera10の方が優れています。Webkit/Safariはsvg<img>もサポートしています。

ここにいくつかの例があります。dev.opera.comannevankesteren.nlにさらにいくつかあります。

インラインsvgの例を探している場合は、SamRubyのサイトをご覧ください。

于 2009-06-25T09:09:52.603 に答える
4

content プロパティを使用して SVG ファイルを参照することはできますが、サポートされていないと思います。サポートされている場合、次のようになります。

.putapicturehere:before {
  content: url(mysvgfile.svg);
}

これは確実に IE では機能しません。最新の Firefox では機能する可能性があります。

CSS ブラウザーのサポートに関する質問については、常にquirksmode.org を参照しています。

于 2008-10-10T12:20:13.607 に答える
1

オフスクリーン img から画像を読み取り、それを object タグに入れるには、ちょっとした CSS ヘルパー JavaScript を作成する必要があるかもしれません。そうすれば、引き続き CSS で制御できます。

于 2008-10-10T12:16:48.963 に答える
1

私が知る限り、Opera 9 と WebKit (== Safari & Chrome) は PC でそれを行い、FF3.5 でも可能になるという噂があります。

実際、Apple はちょうど半年前に iPhone の Safari に SVG サポートを追加したので、うまくいくかどうかはわかりませんが、試してみる価値はあります。

乾杯、

于 2009-06-24T18:58:34.337 に答える
0

前回、約 1 年前に試したときは、うまくいきませんでした。ただし、既に svg と xhtml マークアップを混在させることができます。唯一の問題は、ページが正しい MIME タイプ (application-xml など) を持っている必要があるか、ブラウザーが svg を無視することです。

コンテンツとプレゼンテーションを厳密に分離したい場合、インライン svg は完璧なソリューションではありませんが、svg の使用方法として最もサポートされているようです。

于 2008-10-12T20:55:17.247 に答える