If you do <svg style="display: none"> on the outermost SVG element we ignore it which is wrong.
I tried to fix this, but it's hard since we depend on the SVGDocument::rootElement() having a renderer. Instead SVG should use a RenderView like HTML for the thing that must always exist.
Created attachment 176422 [details]
This is a side effect of the fact that SVG needs renderers for content hat the SVG spec defines as display:none. Examples include filters, masks, patterns, anything in defs elemens, etc.
Mozilla have apparently also had issue with this: https://bugzilla.mozilla.org/show_bug.cgi?id=376027
We should still fix it though, as it should be possible to put display:none on the root SVG and have nothing display.