使用CSS 操作外部SVG 檔案樣式屬性:綜合指南
雖然CSS 有效地改變HTML 元素的外觀,但操作外部SVG 檔案由於沙箱,透過CSS 提出了挑戰。 SVG 文件是沙盒的,這意味著它們是獨立的文檔,因此無法將外部樣式表中的 CSS 樣式直接套用到其內容。
CSS 不透明度悖論
提供的程式碼示範如何透過 CSS 將不透明度屬性應用於 SVG 圖片。但是,其他 SVG 特定屬性(例如填滿和描邊)保持不變。這是因為不透明度適用於 SVG 物件/框架本身,而不是 SVG 中的內容。
內嵌 CSS 解決方案
另一個解決方案是包含外部 SVG 檔案內的 CSS 區塊。這種方法可讓您操縱填充、描邊和其他屬性。但是,它需要將 SVG 作為物件插入 HTML 中,而不是使用 。標籤。
`
<![CDATA[ g { fill: yellow; stroke: black; stroke-width: 1; transition: fill 1s linear 0s; } g:hover { fill: blue; } ]]>
;
<path ...>
`
圖示系統方法
更強大的解決方案是使用圖示系統,例如SVG 字體或SVG 精靈。透過將 SVG 檔案轉換為字體或精靈,您可以使用 CSS 樣式動態操縱它們的外觀。
圖示系統的優點
結論
在使用CSS 操作外部SVG 檔案時,由於沙箱而面臨限制,內聯CSS 或圖示系統等解決方法提供了有效的解決方案。了解 SVG 的沙盒性質並利用圖標系統將使您能夠在網站上實現所需的視覺效果。
以上是考慮到沙箱的限制,如何使用 CSS 設定外部 SVG 檔案的樣式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!