了解如何在您的網站上使用可縮放矢量圖形
已發表: 2023-01-15如果您是 Web 開發人員,那麼您可能聽說過可縮放矢量圖形 (SVG)。 SVG 是一種基於 XML 的矢量圖像格式,用於支持交互性和動畫的二維圖形。 SVG 規範是萬維網聯盟 (W3C) 自 1999 年以來製定的開放標準。SVG 圖像及其行為在 XML 文本文件中定義。 這意味著它們可以被搜索、索引、編寫腳本和壓縮。 作為 XML 文件,SVG 圖像可以使用任何文本編輯器創建和編輯,但更常見的是使用繪圖軟件創建。 然後使用各種工具對其進行優化,然後再發佈到網絡上。 SVG 圖像可以多種方式在 Web 上使用: • 作為靜態圖像,它們看起來就像任何其他圖像格式一樣。 • 作為內聯圖像,它們直接嵌入到 HTML 文檔中。 • 作為CSS 背景圖像。 • 作為HTML5 元素。 • 作為可以用JavaScript 和CSS 操作的XML 文件。 如果你想在你的網站上使用 SVG 圖像,你需要知道一些事情。 在本文中,我們將介紹如何開始在您的網站上使用 SVG 圖像。
當您只需要一個 HTTP 請求時,使用圖像精靈下載多個圖標或 UI 元素很簡單。 在某些情況下,您可能需要計算背景位置偏移量才能使用它們。 我們怎樣才能解決這個問題? 換句話說,將它們全部堆疊在一起以降低可見度,但只顯示您想要的那個。 VG Stacks 被 WWG 否決了。 仍然有希望,但它是否會發生是值得懷疑的。 在 URL 中使用散列會將 ID 傳遞到文件中,如背景:url (icon.svg#ID)。 非常感謝 erikdahlstrom 的協助。
為什麼 Svg 沒有出現在 Chrome 中?
SVG 文件無法在 Chrome 中正確顯示的潛在原因有幾個。 一種可能是文件已損壞,因此無法正確顯示。 另一種可能性是該文件未在 HTML 代碼中正確引用。 最後,可能是該文件與 Chrome 不兼容。
在 Treehouse 社區,任何背景和技能水平的人都可以獲得編碼方面的幫助。 在接下來的幾年裡,成千上萬的 Treehouse 校友和學生的參與將豐富我們的社區。 對於新生,可以免費試用 Treehouse 7 天。 憑藉數千小時的內容和支持社區,您可以輕鬆找到所需內容。 可以在任何瀏覽器中查看對像元素。 如果你想讓圖像看起來像一個圖像,你可能必須設置一個明確的邊距,或者將圖像的邊距設置為 0 auto; 否則,如果您希望它看起來像圖像,則 div 可能是內聯的。 如果這不能解決問題或者你已經這樣做了,你能粘貼你用來放置 svg 的代碼嗎?
為什麼我的 Svg 圖像不顯示?
您應該將圖像用作 .VNG 文件。 您可以使用 svg”> 或 CSS 背景圖像,但它似乎是丟失的文件或服務器的內容類型。
如何在 Chrome 中查看 Svg 文件?
大多數現代網絡瀏覽器都可以顯示SVG 文件。 Chrome、Edge、Firefox 和 Safari 都是可用的。 您可以通過打開您喜歡的瀏覽器並選擇“文件”>“打開”,然後選擇您要打開的文件來查看您想要的 SVG。 它一出現就會顯示在您的瀏覽器窗口中。
谷歌瀏覽器支持 Svg 嗎?
Google Chrome 94 完全支持 SVG(基本支持)。 如果您為您的網站或網絡應用程序使用 sva(基本支持),您可以使用 LambdaTest 在 Google Chrome 94 中測試您網站的 URL。所有功能都應該按計劃運行。
我可以將一個 Svg 放入另一個 Svg 中嗎?
當使用SVG 格式時,圖形可以嵌套。 “svg>”元素也可以放置在另一個“svg>”元素中。 在嵌套嵌套的情況下,嵌套僅限於元素的父“%svg%”元素。
你能在 Svg 中嵌入圖像嗎?
HTML SVG中的 img 元素也是如此,它充當圖像元素。 它能夠嵌入任意光柵(和矢量)圖像。 該規範要求應用程序至少支持 PNG、JPEG 和可縮放矢量圖形文件。
為什麼 Svg 文件不推薦用於徽標?
SVG 基於矢量格式,這意味著它無法處理具有大量精細細節和紋理的大圖像。 圖像、圖標和其他顏色和形狀較少的平面圖形應使用 SVG 呈現。 此外,由於大多數現代瀏覽器都支持 SVG,舊版瀏覽器可能不支持。
我可以在一個文件中包含多個 Svg 圖像嗎?
您還可以設置一個包含多個 SVG 圖像的多 sva 文件,每個文件都可以通過 ID 而不是像素位置來引用。
為什麼我的 Svgs 模糊?
有幾個原因可能導致您的 SVG 模糊。 這可能是因為您導出它們的方式,或者可能是因為您的瀏覽器顯示它們的方式。
如果您從 Adobe Illustrator 等設計程序導出 SVG,請確保您使用的是“保存為 Web”選項,並且將它們導出為 PNG 或 JPEG 文件。 PNG 文件的質量通常優於 JPEG,因此請先嘗試使用該格式。
如果您仍然看到模糊,可能是因為您的瀏覽器正在放大或縮小 SVG。 嘗試在新的瀏覽器窗口或選項卡中打開 SVG,並確保縮放設置為 100%。
上傳到網站時,Svg 圖像可能會顯得模糊
由於 SVG 文件的像素尺寸與它們所服務的空間相同,因此將它們上傳到網站可能會導致圖像模糊。 要解決此問題,請確保所有像素都與網格對齊,並在編輯程序中為 SVG 設置所需的大小。
Svgs 可以響應嗎?
因為大多數應用程序自動包含高度和寬度的屬性,所以這是最重要的方面。 因此,現代瀏覽器會盡可能充分地響應顯示 SVG。
儘管具有固有的可擴展性,但使用 SVG 格式創建響應式圖像可能很困難。 在某種程度上,可以修改元素的寬度和高度,但這並不總是可能的。 我們必須首先將我們的響應式 SVG 元素與我們的頁面內容集成,然後才能在任何其他瀏覽器中使用它。 換句話說,下面的代碼假定 SVG 圖像應該是全寬的(或者至少是父容器)。 padding-bottom 量表示插圖的高度和寬度之間的關係。 文檔的 viewBox 的高度由其寬度計算得出,比例為 1:1。
矢量文件現在可以被任何主要瀏覽器的用戶查看,並且與矢量文件相比沒有質量損失。 無論屏幕大小如何,您都可以使用 SVG 創建平面圖像或動畫圖像。 因此,它是創建可輕鬆適應任何設備的複雜插圖和圖形的絕佳工具。
使用 Svgs 的優點和缺點
使用 sva 文件創建響應式圖形很簡單。 當您為 SVG 指定固定寬度或高度時,它將無法調整以適應所有屏幕尺寸。 可以通過在 SVG 周圍定義一個具有特定寬度的容器元素並刪除其寬度和高度來製作響應式 SVG。 還需要增加 viewBox 的寬度以容納整個形狀。
如何在 Html 中使用 Svg
當您查看 HTML 文檔時,您可以使用 * svg 標籤來指定您的 SVG 圖像。 此方法要求您在 VS 代碼或您喜歡的 IDE 中打開 SVG 圖像,複製代碼並將其粘貼到 HTML 文檔的 body 元素中。 如果一切按計劃進行,您的網頁應該與下圖完全一樣。
使用SVG 元素創建新的坐標系和視口。 可縮放矢量圖形 (SVG) 圖像格式是一種存儲矢量數據的格式。 SVG 是一種沒有獨特字符集的圖像,就像一件藝術品。 相反,它使用矢量數據生成分辨率範圍為 0 到 100 的圖像。要在 HTML 中繪製矩形,請使用 >rect> 元素。 為了生成星星,使用了 SVG 標籤。 在 SVG 中,線性漸變可用於生成徽標。
由於 SVG 文件較小,因此如果您使用它們,圖像將在您的網站上加載得更快。 使用 SVG 生成的圖形不必按比例縮小。 因此,它們可廣泛用於各種設備和瀏覽器。 調整大小可減少 PNG 和 JPG 等光柵格式的壓縮。 內聯 SVG無需 HTTP 請求即可加載圖像。 因此,您的用戶會發現您的網站更易於瀏覽。
Svg:你應該使用可縮放矢量圖形的 7 個理由
矢量圖形優於非模擬圖形的原因有七個。 該網站最後更新於 2010 年 6 月 29 日。標記可以直接添加到關鍵字列表中,允許您包含描述、鏈接和關鍵字。 因為 HTML 允許嵌入 HTML 圖像,所以可以緩存它們、使用 CSS 對其進行編輯以及為更好的可訪問性編制索引。 由於它能夠用於創建精緻複雜的圖形,這些類型的圖形在未來將越來越受歡迎。 該程序可以與 HTML5 和 CSS3 結合使用,以開發更具動態性和交互性的網站。 您可以輕鬆地將其他類型的文件轉換為與其他應用程序兼容的格式。 瀏覽器通常非常兼容。 您可以很容易地學習和使用它。
使用 Svg
SVG 使用允許您在整個網站或應用程序中重複使用圖形。 這可以節省您的時間並有助於保持設計的一致性。 您可以通過許多不同的方式使用 SVG 文件: -作為背景圖像 -作為圖標或按鈕 -作為插圖 -作為徽標 SVG 的使用很容易學習,並且可以成為您的網頁設計工具包的重要補充。
Adobe Illustrator 很高興地宣布它已經更新。 現在CC 2018版本已經發布,支持矢量繪圖格式SVG。 使用您在 Illustrator 中熟悉的相同工具和技術,您可以使用這些技術創建高質量的圖形。 矢量圖形可用於創建徽標、圖標和其他詳細而精確的圖形。 它們也非常適合插圖和圖表,因為它們能夠按比例縮小到任何尺寸而不會降低質量。 如果您是 Illustrator 用戶並且想要將 SVG 合併到您的作品中,現在是時候將它合併到您的作品中了。 您將能夠製作出適用於任何設備的精美圖形。
Svg 有什麼用?
二維圖形文件格式 SVG 是一種在網站上顯示圖形、圖表和插圖的流行選項。 它也是一個矢量文件,可以在兩種分辨率下按比例縮小或放大。
為什麼 Svg 是高分辨率圖像的最佳選擇
儘管 SVG 有一些缺點,但它是一個極好的工具。 首先,它比 JPG 或 PNG 更難創建。 第二點,如果你縮小或放大 SVG,它的一些清晰度可能會丟失。 要優化和發布您的 SVG,您必須為項目選擇合適的 SVG,並且必須使用合適的工具。
由於能夠生成高分辨率、高質量的大小圖像,sva 是大小圖像的絕佳選擇。 如果您希望在 Web 和打印項目中都使用圖像,sva 是一個不錯的選擇。
從 Svg 文件獲取 Svg 代碼
要從 SVG 文件獲取代碼,請使用文本編輯器(如 Notepad++)打開該文件。 該代碼將位於標籤。 將代碼複製並粘貼到文本文件中,並以 .svg 擴展名保存。
如何使用 Svg 作為背景圖像
要將 SVG 文件用作 HTML 中的背景圖像,請在文本或代碼編輯器中打開 SVG 文件並複制其內容。 接下來,在文本或代碼編輯器中打開 HTML 文件,並將復制的SVG 代碼粘貼到文件中。 最後,將以下 CSS 代碼添加到 HTML 文件中: body { background-image: url(“path/to/file.svg”); }
更新您的背景剪輯
在webkit-background-clip、padding-box中; br> 被使用。 上面剪輯的填充框元素。
-o-背景剪輯:填充框; [br]br> 一個 padding-box-clip 應該包含在 -ms-background-clip 中。 Backgroundclip:填充框; *br */defs, *br, */defs, *br, */defs, *br, */br, */defs, */br, */br, */br, */br, */br , */br, * 可以使用命令行啟用asvg背景。 背景/標題 這是一個雙荷蘭語短語。
Img Src Svg 不工作
如果您嘗試將 svg 文件用作 img src 但它不起作用,則存在一些潛在問題。 首先,確保 svg 文件的格式正確——許多程序將 svg 文件保存為 .svg,但有些程序使用 .svgz或 .ai。 如果文件格式不正確,瀏覽器將無法讀取。 其次,確保 svg 文件位於正確的目錄中。 如果不是,瀏覽器將無法找到它。 最後,確保 svg 文件實際上是一個圖像——一些 svg 文件並不意味著用作圖像,並且在用作 img src 時將不起作用。
你可以使用 Svg 作為 Img Src 嗎?
要通過 img> 元素嵌入 SVG,只需像您期望的那樣在 HTML 屬性中引用它。 如果您的 SVG 沒有固有的縱橫比,它將需要高度和寬度屬性。 如果您已經這樣做了,請先閱讀 HTML 中的圖像。
Javascript 從文件加載 Svg
JavaScript 不能直接加載 SVG 文件,但是您可以使用服務器端代理來獲取和加載 SVG 文件,然後將其傳遞給客戶端 JavaScript 代碼。
HTML 由文檔對像模型 (DOM) 表示,而 SVG 由文檔對像模型 (DOM) 表示。 因此,它們可以在相對較短的時間內使用 Javascript 進行操作。 在本課程中,我將介紹如何使用 SVG 的內聯和外部類型。 這篇文章包含來自 GitHub 的代碼示例,可以在頁面頂部找到。 如果需要,您可以使用相同的代碼將元素插入到外部 SVG中。 結果,我們可以這樣做,因為 SVG 無法讀取它嵌入的 HTML 文檔,因此無法看到頁面上的其他 SVG。 如果將代碼包裝在 CDATA 中,則 JS 代碼將包含在 XML 解析中。
在 HTML 中創建和刪除元素的過程是相似的。 使用相關文檔的 createElementNS() 方法,您可以通過傳入元素的名稱和命名空間來創建元素。 刪除元素時,必須首先使用 createTextNode() 創建一個單獨的文本節點,然後將其附加到該元素。 這是可行的,因為沒有兩個相同的文檔。
SVG 網址
svg url是用於加載 svg 文件的 url。
svg-url-loader 允許您使用編碼的 utf-8 數據字符串加載文件。 Base64 編碼始終用於 data-uri 的 URL 加載。 不需要對svg 內容使用 base64,因為它是人類可讀的。 正如本文前面所述,轉義不安全字符的唯一方法是用 ' 替換它們,這是可行的方法。
Svg 超鏈接
簡單的 SVG 可用於創建簡單的 Web 鏈接,例如:*br * A href= http://www.w3.org/w3C/a>W3C/a> br>。 如果您想讓您的鏈接在視覺上更具吸引力,您還可以包含更複雜的 SVG 形狀。 您還可以使用橢圓製作圓角或使用多邊形製作包含邊框和填充的路徑。