Html 笔划url在Edge和IE 11SVG中不起作用

Html 笔划url在Edge和IE 11SVG中不起作用,html,internet-explorer,svg,microsoft-edge,Html,Internet Explorer,Svg,Microsoft Edge,我有一个svg,它有两条路径,一条对角线和一个小圆。它们的笔划颜色参照位于defsstroke=“url(#myGradient)”中的linearGradient。在Chrome、Firefox和Safari上,小圆圈渲染。但在Edge和IE 11上,小圆并没有将url路径连接到线性渐变的id,如果我将其笔划属性更改为颜色,则它会渲染,但我想使用url值 div{ 高度:100px; 宽度:100px; } 根据 如果适用图元的几何图形没有宽度或高度,例如水平线或垂直线,则不应使用关键字o

我有一个svg,它有两条路径,一条对角线和一个小圆。它们的笔划颜色参照位于defs
stroke=“url(#myGradient)”
中的linearGradient。在Chrome、Firefox和Safari上,小圆圈渲染。但在Edge和IE 11上,小圆并没有将url路径连接到线性渐变的id,如果我将其笔划属性更改为颜色,则它会渲染,但我想使用url值

div{
高度:100px;
宽度:100px;
}

根据

如果适用图元的几何图形没有宽度或高度,例如水平线或垂直线,则不应使用关键字objectBoundingBox,即使该线在查看时由于笔划宽度非零而具有实际厚度,因为笔划宽度在边界框计算中被忽略。如果适用图元的几何体没有宽度或高度,并且指定了objectBoundingBox,则将忽略给定的效果(例如渐变或过滤器)

linearGradient的默认渐变单位为objectBoundingBox,因此,如果元素没有宽度或高度,则渐变将不适用

元件的实际宽度和高度为5.62e-5,0.03275。Firefox和Chrome似乎认为这足够非零来渲染渐变,但IE/Edge不这么认为。然而,你在玩火,期待着真正微小的价值发挥作用

如果要在圆上渲染渐变,请使用circle元素绘制一个圆,并将渐变应用于圆的填充。

您的“圆”已损坏。作为证明:使用一个圆元素,它就工作了