2011-01-20 85 views
3

WebKit的具有導致嵌入SVG(由<embed><image>)具有白色背景的代替透明的錯誤。透明SVG

這已得到糾正,但不能在iOS上,那裏有更古老的WebKit

的構建是有一些好的解決方法呢?我非常需要透明背景。

我知道兩個子最佳解決方法:

  • 使用<img>標籤。 - 我不能這樣做,因爲插入爲IMGS的SVGs的DOM/XML樹不能移動/操控。

  • 掩蓋<object><embed>元素本身。出人意料的是,事件的老的WebKit可以檢測的透明度,如果SVG作爲掩蓋但是我認爲這是一個醜陋的解決方案:

    <object style="-webkit-mask-image:url(image.svg);" data="image.svg" type="image/svg+xml" />

有一些很好的解決了這一點?

回答

1

我找到了解決辦法。

我可以使用內嵌 SVG/XML。在這種情況下,我可以獲得透明度和遍歷SVG DOM節點的能力。

唯一的缺點是,我必須使用與正確的內容類型頭有效XML標記(text/xml莫名其妙效果最好,我不知道爲什麼)

0

你所談論的是衆所周知的bug。如果它在iOS上,你是否真的需要使用矢量圖形?爲什麼不使用具有繼承透明度的PNG?

+0

我認爲對於iOS,您真的需要儘可能使用矢量圖形,因爲您有視網膜屏幕來處理。 – rjmunro 2015-03-18 10:44:11