素晴らしいロゴを作成し、AIおよびSVG形式で保存しました。ロゴはサイト全体に何度も表示され、ロゴをPNG形式で保存してサーバー側の不要なリクエストを行うよりも良いので、サイトでSVGファイルを使用したいと思います。今、これは以下を使用してうまく機能します:
<svg id="my-logo" height="60" width="60"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
<g transform="scale(0.1)">
<image x="0" y="0" height="600" width="600" xlink:href="my-logo.svg" />
</g>
</svg>
Schema.org logo
マークアップを使用すると問題が発生します。使用:
<svg itemscope itemtype="http://schema.org/Organization" id="my-logo" height="60" width="60"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
<g transform="scale(0.1)">
<image itemprop="logo" x="0" y="0" height="600" width="600" xlink:href="my-logo.svg" />
</g>
</svg>
予想通り、W3C検証に失敗し、次のエラーメッセージが表示されます。
- この時点では、要素svgでは属性itemscopeは許可されていません。
- この時点では、要素svgで属性itemtypeは許可されていません。
- この時点では、属性itempropは要素画像では許可されていません。
W3Cの検証は必須ではないことはわかっていますが、GoogleとW3Cの両方を満たすソリューションを用意したいと思います。
一部のW3Cの達人が私を正しい方向に向けることができると確信しています。1つの解決策である可能性があることを知っているので、可能であればDATA URIを使用しないようにしますが、DATA URIが間違っているかどうかに応じて修正しますキャッシュできません。
width: height:
では、imgタグ内でのサイズ変更が望ましくない影響を及ぼしたことです。私はそれを別のショットを与えます....これは100kb対2kbを追加するため、pngスプライトを使用しなければならないのは面倒です。