I'm working with the vis.js library, and rendering nodes with custom HTML via the svg tag.
My online project is at: https://stackblitz.com/edit/visjs-with-angular
The problem I'm having is when I attempt to add an image to the div, which is inside an svg.
You can see the vis.component.ts in the 'app\app\vis' folder of my project, and its associated HTML view file.
In the drawSvgNetwork() function you will see where I build out the SVG. I figured I'd be able to add a <i> tag with a background-image url, but it doesn't seem to be rendering when vis.js renders the nodes:
var svg = '<svg xmlns="http://www.w3.org/2000/svg" width="390" height="65">' + '<rect x="0" y="0" width="100%" height="100%" fill="#7890A7" stroke-width="20" stroke="#ffffff" ></rect>' + '<foreignObject x="15" y="10" width="100%" height="100%">' + '<div xmlns="http://www.w3.org/1999/xhtml" style="font-family:Arial; font-size:30px">' + ' <em>I</em> am' + '<span style="color:white; text-shadow:0 0 20px #000000;">' + ' HTML in SVG!</span>' + // * THIS IMAGE IS NOT RENDERING * '<i style="background-image: url(https://openclipart.org/download/280615/July-4th-v2B.svg);"></i>' + '</div>' + '</foreignObject>' + '</svg>'; i.e. Here is what you will see when running my online project.
*For reference:
The full online examples are at: https://visjs.github.io/vis-network/examples/ And the specific demo page is here (view source to see js code): https://visjs.github.io/vis-network/examples/network/nodeStyles/HTMLInNodes.html
