2016-10-05 19 views
0

私はsvgファイルの一部を色づけしようとしていますが、それはうまくいかないようです。 これはsvgs'コードです:SVGの色付け - なぜ機能しないのですか?

<svg xmlns="http://www.w3.org/2000/svg" data-name="logo" viewBox="0 0 87.6 128.2"><title> sw17_rebrand_logo</title><path class="logo_top" d="M15.6 86.9C-1.8 71-6.4 37.2 16 14.9S72-2.5 87.6 14.7Z"/><path class="logo_bottom" d="M72.3 41.2c20.2 19.2 19.5 53.7-1.5 73.2-22.5 21-55.4 16-70.9-1.1Z"/></svg> 

そして、それは、HTMLはその

<a href="#" class="logo"><img class="logo_img" src="images/sw17_rebrand-logo.svg"/></a> 

のように見えるしかし、それは何もしないしないCSS

.logo_top{ 
    fill:blue; 
} 

です。私はWebdev Toolsでその特定のCSSコードを見ていません。コード(style = "fill:blue")を直接svgに入れると、これは動作しますが、ここで必要な方法ではありません。

私は間違っていますか?両方のコメントとして

+1

svgをsrcではなくhtmlに入れてください。 – pol

+1

ここをクリックしてください:https://svgontheweb.com/#css「」タグにそれらを(リンクする)機能と、これがもたらす対話性に特に注意してください。 – enhzflep

+0

CSSは異なるドキュメント間で動作せず、イメージは別のドキュメントです。 –

答えて

-1

はすでに100%その質問に答えた - 私は、質問を閉じて取得することを総括ます:

A)あなたがHTMLに直接SVGを置く代わりに、そこに<img>とリンクすることができます。私の質問のようにsvgで着色すると、そのようにスムーズに動作します。 B)あなたはビットファイル(複数可)にそのコード

// Add to very start of SVG file before <svg> 
<?xml-stylesheet type="text/css" href="style.css"?> 

を追加することで、あなたのsvgs'ソースコードを操作します。あなたがまだ使用できる方法<img src="the.svg"...

+0

タグでSVGを表示している場合、外部ファイルをCSSスタイルシートとして使用することはできません。スタイルシートをURLエンコードしてSVGファイル自体に埋め込む必要があります。 –

関連する問題