Tenho vários gráficos SVG que gostaria de modificar as cores por meio de minhas folhas de estilo externas - não diretamente em cada arquivo SVG. Não estou colocando os gráficos em linha, mas armazenando-os na minha pasta de imagens e apontando para eles.
Eu os implementei dessa forma para permitir que as dicas de ferramentas funcionassem e também envolvi cada um em uma <a>
tag para permitir um link.
<a href='http://youtube.com/...' target='_blank'><img class='socIcon' src='images/socYouTube.svg' title='View my videos on YouTube' alt='YouTube' /></a>
E aqui está o código do gráfico SVG:
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="stylesheets/main.css" type="text/css"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 56.69 56.69">
<g>
<path d="M28.44......./>
</g>
</svg>
Coloquei o seguinte em meu arquivo CSS externo (main.css):
.socIcon g {fill:red;}
No entanto, não tem efeito no gráfico. Também tentei o caminho .socIcon g {} e o caminho .socIcon {}.
Algo não está certo, talvez minha implementação não permita modificações externas de CSS ou eu perdi uma etapa. Eu realmente aprecio sua ajuda! Eu só preciso modificar as cores do gráfico SVG por meio de minha folha de estilo externa, mas não posso perder a dica de ferramenta e a capacidade de link. (No entanto, posso viver sem dicas.) Obrigado!
svg { fill:red; }
ou dê ao seu caminho um nome de classe. Por exemplo, <path class="socIcon" d="M28.44 ..... />
isso deve funcionar.