【问题标题】:Hiding an SVG element in HTML without disabling clip paths defined inside?在不禁用内部定义的剪辑路径的情况下隐藏 HTML 中的 SVG 元素?
【发布时间】:2017-06-30 07:39:58
【问题描述】:

参考问题clip-path not working in SVG sprite,看来我们不能使用style="display:none" 来隐藏定义将在其他地方使用的剪辑路径的SVG 元素。

但是,给定的隐藏它的建议替代方法(使用width="0" height="0")对我不起作用(至少在 Chrome 中,SVG 元素仍然在页面布局中获得分配空间,这会导致出现垂直滚动条,因为我有一个上面有height="100%" 的div)。还有什么其他方法可用于隐藏 SVG 且不会阻止它被用于剪辑?

【问题讨论】:

  • 如何使用 position: absolute 然后将其定位在页面之外的某个位置
  • 这就是我目前正在做的,但它看起来很像一个黑客。但是display: nonevisibility: hidden 都打破了剪辑(以不同的方式),所以我现在看不到更好的方法。似乎很奇怪,没有办法定义一个没有实际位置但仍然可以被其他对象引用的对象......
  • 你用过style="width:0;height:0;"吗?对我来说,width="0" height="0" 作为 XML 属性适用于 FF 和 Chrome。

标签: html css svg


【解决方案1】:

最后,我使用position:absolute 将项目从通常的 HTML 文档流中取出。我不明白为什么一个大小为零的元素会导致出现滚动条,但这似乎就是正在发生的事情。

【讨论】:

    猜你喜欢
    • 2011-07-13
    • 2021-02-14
    • 1970-01-01
    • 2019-01-02
    • 2023-03-12
    • 2016-03-31
    • 1970-01-01
    • 2019-12-23
    • 2021-06-18
    相关资源
    最近更新 更多