2012-06-21 37 views
3

有沒有一種方法可以讓我用CSS來定位SVG?它們在IE8中向下看起來像破碎的圖像,我想用modernizr來隱藏它們。我希望這樣的事情......針對與CSS的SVG

.no-svg object[type=svg] { 
    display:none; 
} 

我使用這個嵌入SVG到我的網頁在http://www.alistapart.com/articles/using-svg-for-flexible-scalable-and-fun-backgrounds-part-ii

<object type="image/svg+xml" 
    width="100" height="100" style="float:right" 
    data="http://blog.codedread.com/clipart/apple.svgz"> 
<span/></object> 
+0

將svg放入一個包裝並隱藏,也許? - 因爲在IE之前9 svg不支持,因爲你注意到。 –

+0

嗨馬克,我希望能夠使用CSS選擇器來實現這個簡單的方法,而不用填充標記。包裹它周圍的div和添加一個類是最後的手段 – SparrwHawk

回答

3

在你標記的type屬性是image/svg+xml建議。你的屬性選擇器object[type=svg]尋找一個type屬性,它是正好svg,所以你的對象將不匹配。

在您的標記(你在這裏需要加引號,否則將無法正常工作;見this spec瞭解詳情)您應指定完整的MIME類型:

.no-svg object[type="image/svg+xml"] { 
    display:none; 
} 

或者,如果你願意,你可以使用子字符串屬性選擇器,但我更喜歡上述:

.no-svg object[type*=svg] { 
    display:none; 
} 
+0

BoltClock - 輝煌,一如既往 - 謝謝 – SparrwHawk