Svg 是什么导致SourceAlpha比SourceGraphic更大

Svg 是什么导致SourceAlpha比SourceGraphic更大,svg,dropshadow,svg-filters,Svg,Dropshadow,Svg Filters,我试图使下面的框具有更大的可点击区域: 默认情况下,过滤器区域的所有侧面都要大10%。这是为了允许像feGaussianBlur这样的过滤器原语,它可以使图形变大 您可以通过使用元素上的属性x、y、width和height来更改过滤效果区域。它们分别默认为-10%、-10%、120%和120% 我建议你读这本书 但是,即使过滤器可能导致某些东西被画得更大,它也不应该改变响应指针事件的区域的实际大小或形状 我认为只有一种方法可以让点击区域变大,而无需添加额外的元素 为形状指定一个较大但不可见的

我试图使下面的框具有更大的可点击区域:


默认情况下,过滤器区域的所有侧面都要大10%。这是为了允许像feGaussianBlur这样的过滤器原语,它可以使图形变大

您可以通过使用
元素上的属性
x
y
width
height
来更改过滤效果区域。它们分别默认为-10%、-10%、120%和120%

我建议你读这本书

但是,即使过滤器可能导致某些东西被画得更大,它也不应该改变响应指针事件的区域的实际大小或形状

我认为只有一种方法可以让点击区域变大,而无需添加额外的元素

  • 为形状指定一个较大但不可见的笔划宽度
  • 设置指针事件=“全部”
将指针事件设置为“全部”会使笔划和填充区域敏感,即使它们不可见。比较本例中方块的行为

rect:悬停{
填充物:橙色;
}

默认情况下,过滤器区域的所有侧面都要大10%。这是为了允许像feGaussianBlur这样的过滤器原语,它可以使图形变大

您可以通过使用
元素上的属性
x
y
width
height
来更改过滤效果区域。它们分别默认为-10%、-10%、120%和120%

我建议你读这本书

但是,即使过滤器可能导致某些东西被画得更大,它也不应该改变响应指针事件的区域的实际大小或形状

我认为只有一种方法可以让点击区域变大,而无需添加额外的元素

  • 为形状指定一个较大但不可见的笔划宽度
  • 设置指针事件=“全部”
将指针事件设置为“全部”会使笔划和填充区域敏感,即使它们不可见。比较本例中方块的行为

rect:悬停{
填充物:橙色;
}

默认情况下,过滤器区域的所有侧面都要大10%。这是为了允许像feGaussianBlur这样的过滤器原语,它可以使图形变大

您可以通过使用
元素上的属性
x
y
width
height
来更改过滤效果区域。它们分别默认为-10%、-10%、120%和120%

我建议你读这本书

但是,即使过滤器可能导致某些东西被画得更大,它也不应该改变响应指针事件的区域的实际大小或形状

我认为只有一种方法可以让点击区域变大,而无需添加额外的元素

  • 为形状指定一个较大但不可见的笔划宽度
  • 设置指针事件=“全部”
将指针事件设置为“全部”会使笔划和填充区域敏感,即使它们不可见。比较本例中方块的行为

rect:悬停{
填充物:橙色;
}

默认情况下,过滤器区域的所有侧面都要大10%。这是为了允许像feGaussianBlur这样的过滤器原语,它可以使图形变大

您可以通过使用
元素上的属性
x
y
width
height
来更改过滤效果区域。它们分别默认为-10%、-10%、120%和120%

我建议你读这本书

但是,即使过滤器可能导致某些东西被画得更大,它也不应该改变响应指针事件的区域的实际大小或形状

我认为只有一种方法可以让点击区域变大,而无需添加额外的元素

  • 为形状指定一个较大但不可见的笔划宽度
  • 设置指针事件=“全部”
将指针事件设置为“全部”会使笔划和填充区域敏感,即使它们不可见。比较本例中方块的行为

rect:悬停{
填充物:橙色;
}



我没有添加过滤器来增加可点击区域,我添加了更大的透明笔划来增加可点击区域,过滤器只是为了使外观再次相同。定义了
x
y
宽度
高度的方法似乎工作得很好。您答案的第二部分已经是我在第二次演示中使用的方法,但是感谢您提供的关于
指针事件的提示。下面是一个关于这一点的后续问题:您知道为什么Firefox不起作用吗?它在Chrome上运行良好,但firefox并没有让隐形边缘成为可点击的。。在Firefox上,指针事件区域被过滤器区域截断。如果移除过滤器或使过滤器区域变大,可以看到这一点。我已经报告了bug()。这里有一个在FF中工作的解决方法。我们将过滤器区域变大以适应指针事件区域,但限制了基本子区域,使过滤器看起来仍然相同。我添加过滤器并不是为了增加可点击区域,我添加了较大的透明笔划来增加可点击区域,过滤器只是为了使外观再次保持不变。定义了
x
y
宽度
高度
的方法似乎工作得很好。您答案的第二部分已经是我在第二次演示中使用的方法,但是感谢您提供的关于
指针事件的提示。下面是一个关于这一点的后续问题:您知道为什么Firefox不起作用吗