How to use external SVG in HTML?
HtmlCssSvgHtml Problem Overview
I try to make an HTML that references to an SVG file, that SVG file is interactive (CSS hover):
- If I use
<img src="algerie.svg">
I loose the interactivity.
- If I open this image in a new tab using dev tool, it becomes interactive.
-
If I use:
<svg viewBox="0 0 512 512"> <use xlink:href="algerie.svg"></use> </svg>
Then nothing is shown, and worse, Chrome or Firefox do not detect the file in the network dev tool.
Html Solutions
Solution 1 - Html
You should embed the image by using <object>
tag:
<object data="algerie.svg" type="image/svg+xml"></object>
Refer to this question for the details: https://stackoverflow.com/questions/4476526/do-i-use-img-object-or-embed-for-svg-files