2012-11-10 11 views
6

純粋なSVG文書がブラウザーに到着し、favicon.ico仕様をサポートできますか?私の場合は、マシンが純粋なSVGを生成し、html>または<head>タグが利用できません。 SVGはXMLであるため、純粋なSVG文書でFavicon.icoを指定できますか?

+1

foreignObject要素を作成し、その中にfaviconリンクを貼り付けることができます。 –

+0

ありがとうロバート、これは少なくとも部分的に動作します。 FirefoxではなくIE9で動作します。私は、デフォルトのファビコンが存在しないので、これはFFのための正しい道にあると思う。最初の ''要素の後に、私は、 \t \t <リンクREL =" アイコン」HREF = "favicon.icoを" タイプ= "画像/ Xアイコン"> 」 – Dave

+1

コピーとのために上記作品を貼り付けFirefoxの私。 –

答えて

8

はい、あなたはどこにでもSVGで(X)HTMLのlink要素を追加することができます。

<link xmlns="http://www.w3.org/1999/xhtml" rel="shortcut icon" 
href="favicon.ico" /> 

のforeignObjectでこれをラップする必要は全くありません。私はリンク要素を< defsの要素の子として置くことを推奨しますが、実際にsvgレンダリングのためにスキップできることをsvgエンジンに知らせるためです。

これは「純粋な」svgではないことに注意してください。これはxhtml/svgハイブリッドですが、svgをサポートするすべてのブラウザで動作するはずです。

+0

ありがとうErikとRobert。私はこれが解決されたと思う。私のFFはまだファビコンエリアに "空白"のコンテンツを表示しているので、おそらく私のWebサーバーの設定、または私のFFの設定のためです。 – Dave

+0

明らかに、いくつかの文章は 'rel =" icon "'を使うと言われましたが、IEを正しく動作させるためには 'rel =" shortcut icom "'が必要です。クロスブラウザーの問題の詳細については、faviconに関するウィキペディアの記事を参照してください。もう一度ありがとう! – Dave

+0

あなたの答えを試しましたが、W3C Validatorはそれを検証しません。私は名前空間を定義しようとしましたが、無駄です。 <! - language:lang-xml - > <?xml version = "1.0" encoding = "UTF-8"?> <!DOCTYPE svg PUBLIC " - // W3C // DTD SVG 1.1 // EN "" http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd "> デmægtigevikinger < xhtml:リンクrel = "ショートカットアイコン" href = "favicon.ico" type = "image/x-icon" /> dotnetCarpenter

関連する問題