SVG Sprites: ข้อดีและวิธีสร้าง

เผยแพร่แล้ว: 2022-12-08

sprite svg คือชุดของ ภาพ svg ซึ่งรวมกันเป็นไฟล์เดียว จากนั้นสามารถใช้ไฟล์ได้เหมือนภาพทั่วไป โดยที่แต่ละภาพจะแสดงโดยใช้คุณสมบัติ 'ตำแหน่งพื้นหลัง' Svg sprite มีข้อดีหลายประการเหนือรูปภาพแบบดั้งเดิม สามารถปรับขนาดได้โดยไม่สูญเสียคุณภาพ ทำให้เหมาะสำหรับใช้กับจอภาพเรตินา นอกจากนี้ยังสามารถเคลื่อนไหวได้ง่ายโดยใช้ CSS หรือ JavaScript การสร้าง svg sprite นั้นค่อนข้างง่าย ขั้นแรก สร้างภาพแต่ละภาพ จากนั้นจะรวมกันเป็นไฟล์เดียวโดยใช้โปรแกรมแก้ไขข้อความหรือเครื่องมือเช่น Gulp สุดท้าย ไฟล์จะถูกอัปโหลดไปยังเซิร์ฟเวอร์และใช้งานเหมือนรูปภาพทั่วไป

มันสร้าง Sprites โดยใช้โมดูล Node.js ระดับต่ำที่เรียกว่า svg-sprite มันใช้ SVG จำนวนหนึ่งเพื่อสร้างสไปรท์ โปรแกรมประกอบด้วยชุดของเทมเพลต Mustache สำหรับสร้างสไตล์ชีตใน CSS รุ่นเก่าหรือรูปแบบตัวประมวลผลล่วงหน้าหลักรูปแบบใดรูปแบบหนึ่ง (Sass, Less และ Stylus) คุณสามารถทำให้ชีวิตง่ายขึ้นได้โดยใช้ Grunt หรือ Gulp wrappers แทน API มาตรฐาน ตัวเลือกโหมดช่วยให้คุณเลือกประเภทของสไปรท์ที่คุณต้องการใช้ เป็นไปได้ที่จะเปิดโหมดเอาต์พุตหลายโหมดพร้อมกัน หากคุณวางแผนที่จะใช้ CSS sprite และสไตล์ชีตในรูปแบบตัวประมวลผลล่วงหน้ารูปแบบใดรูปแบบหนึ่ง (Sass, LESS, Stylus หรืออย่างอื่น) คุณต้องแน่ใจว่า CSS ของคุณได้รับการกำหนดค่าอย่างถูกต้อง ไฟล์ YAML สามารถอ่านได้และองค์ประกอบ SVG ของคุณสามารถแทรกด้วยโค้ด HTML และคำอธิบายได้ เมื่อทำงานกับรูปแบบเอาต์พุตที่หลากหลาย เวอร์ชันบรรทัดคำสั่งจะมีเครื่องมือบรรทัดคำสั่งที่มีประโยชน์มากพร้อมด้วยคำสั่งต่างๆ

กราฟิกแบบเวกเตอร์ที่ ปรับขนาดได้ (SVG) ซึ่งเป็นภาษามาร์กอัปที่ใช้ XML อธิบายเวกเตอร์สองมิติ

ไอคอน SVG ใช้ ทำอะไร คำว่า “SVG” (รูปแบบเวกเตอร์ที่ปรับขนาดได้) หมายถึงรูปแบบภาพสำหรับกราฟิกแบบเวกเตอร์ที่อนุญาตให้ปรับขนาดได้ มาร์กอัปที่ใช้ XML ใช้เพื่ออธิบายกราฟิกแบบเวกเตอร์ในไฟล์ SVG กล่าวอีกนัยหนึ่ง รูปภาพ SVG เป็นแบบข้อความและสามารถเป็นแบบ CSS-, JavaScript- และ DOM

วัตถุประสงค์หลักของไฟล์ sva คือการแบ่งปัน เนื้อหากราฟิก ผ่านอินเทอร์เน็ต ฐาน XML ช่วยให้สามารถค้นหา ดัชนี การบีบอัด และสคริปต์ของไฟล์ SVG ซึ่งเป็นเหตุผลว่าทำไมจึงเหมาะสม เป็นที่ยอมรับกันอย่างกว้างขวางว่ารูปแบบไฟล์ SVG สามารถใช้กับเว็บเบราว์เซอร์ต่างๆ ได้

เครื่องมือนี้แปลง ไฟล์ SVG ดิบ เป็นส่วนประกอบ React นอกจากนี้ยังมีระบบนิเวศขนาดใหญ่ที่รองรับเทคโนโลยีที่หลากหลาย เช่น Create React App, Gatsby, Parcel, Rollup และอื่นๆ

ฉันสามารถใช้ Svg Sprite ได้หรือไม่

ฉันสามารถใช้ Svg Sprite ได้หรือไม่
เครดิต: wp.com

องค์ประกอบ use> นั้นใช้เวลาไม่นานและสามารถฝังอยู่ภายใน HTML (หรือรูปภาพแบบสแตนด์อโลน) ไม่สามารถใช้วิธีนี้ใน img, iframe, วัตถุ หรือเป็นพื้นหลัง CSS คุณสามารถใช้วิธีนี้ได้ในทุกเบราว์เซอร์ รวมถึง Internet Explorer 9 ขึ้นไป

ในการหาคำศัพท์ในเกม Word Search ของฉัน ผู้เล่นจะต้องรวมตัวอักษรต่างๆ ที่กระจายอยู่ทั่วหน้าจอ เป้าหมายของฉันคือการปิดใช้งานคุณลักษณะนี้ และฉันก็เกิดแนวคิดในการสร้างไอคอนแทนตัวอักษรแต่ละตัวเหล่านี้ ฉันควรมีตัวระบุสำหรับแต่ละตัวอักษรเพื่อให้สามารถเข้าถึงได้ทั้งหมด ในกรณีนี้ ส่วนประกอบของฟังก์ชัน React จะถูกสร้างขึ้น ซึ่งจะเป็น องค์ประกอบ SVG ตัวอักษรที่เราต้องการแสดง สี และขนาด เป็นอุปกรณ์ประกอบฉากทั้งหมดที่กำหนดให้กับโปรเจ็กเตอร์ ด้วยเหตุนี้ ฉันจะสร้างโค้ดที่ก่อนหน้านี้รวมตัวอักษรถ่านเป็นการประมวลผลย่อยหนึ่งโค้ดสำหรับแต่ละตัวอักษร รวมถึงส่วนประกอบของตัวอักษรด้วย หากคุณมีเทคนิคอื่นใดที่ต้องปรับปรุง หรือหากคุณต้องการแสดงความคิดเห็นเกี่ยวกับวิธีการปรับปรุงเป้าหมาย โปรดทำเช่นนั้น

ใช้ Sprite Svg ในการตอบสนองอย่างไร

สาธิตการตอบสนองต่อ '.'./letter และสาธิตการตอบสนองต่อ '../letter.' นำเข้า “./LetterSvg”; ใช้ '.svg' เป็นรูปแบบของคุณ ส'; ตัวอักษร const เทียบเท่ากับ SVg ตัวอักษร สี และขนาด (เป็นตัวอักษร สี และขนาด) ( svg className[/svg -letter] เติมความกว้าง ความสูง และขนาด นอกจากนี้ยังมีตัวเลือกในการใช้ letterSvg (ใช้ href=%22s/letters%22s/letter%22s.html; LetterSvg.

Svg ในการตอบสนองโดยไม่ต้อง Cra

หากคุณไม่ได้ใช้ CRA คุณสามารถเพิ่มไฟล์ SVG ลงในแอปพลิเคชันตอบโต้ของคุณโดยใช้แท็ก svg>

วิธีนำเข้า Svg Sprite Html

ตามที่ระบุไว้ก่อนหน้านี้ คุณสร้างคลาสสำหรับไอคอนของคุณด้วยองค์ประกอบ *svgElement จากนั้นใช้องค์ประกอบ *use พร้อมแอตทริบิวต์ href กับ Sprite ของคุณ ตามด้วย octathorpe # และสุดท้ายคือชื่อของไอคอนในไอคอนของคุณ

ทำไมคุณควรใช้กราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ (svgs) ในเอกสาร Html ของคุณ

เมื่อคุณทำงานกับเอกสาร HTML คุณควรใช้ Scalable Vector Graphics (SVG) เจ็ดเหตุผลด้านล่างถูกต้อง คุณสามารถพบว่าเป็นมิตรกับ SEO สามารถเพิ่มคำหลัก คำอธิบาย และลิงก์ไปยังมาร์กอัปได้โดยตรง
เนื่องจาก SVG สามารถฝังอยู่ใน HTML ได้ จึงแคช แก้ไข และจัดทำดัชนีได้ ทำให้เข้าถึงได้ง่ายขึ้น
เราสามารถพูดได้อย่างปลอดภัยว่า SVG จะถูกใช้งานในอนาคต Chrome และเบราว์เซอร์และแพลตฟอร์มอื่นๆ จะยังคงสนับสนุนต่อไปในอนาคตอันใกล้
ระบบไฟล์คือ Scalable Virtual Presentation สามารถเพิ่มหรือลดขนาดได้โดยไม่สูญเสียคุณภาพ
ด้วยความช่วยเหลือของ SVG คุณสามารถสร้างแอปพลิเคชันได้หลากหลาย สามารถใช้เพื่อวัตถุประสงค์ที่หลากหลาย รวมถึงโลโก้ ภาพประกอบ และการออกแบบเว็บไซต์
ง่ายต่อการใช้ SVG สามารถแก้ไขได้ด้วยเครื่องมือที่หลากหลาย รวมถึงโค้ด VS และ IDE ที่ต้องการ
ไฟล์ SVG สามารถใช้งานได้หลายวิธี สามารถใช้งานได้ทั้งแบบคงที่และแบบโต้ตอบ

ฉันสามารถใช้ Svg เป็น Img Src ได้หรือไม่

คุณไม่จำเป็นต้องอ้างอิงองค์ประกอบใน URL หากคุณใช้องค์ประกอบ img> เพื่อฝัง SVG หาก SVG ของคุณไม่มีอัตราส่วนกว้างยาว คุณจะต้องใช้ทั้งแอตทริบิวต์ความสูงและความกว้าง หากคุณยังไม่ได้ดำเนินการ คุณสามารถดูรูปภาพใน HTML

Svg เป็นรูปแบบที่สมบูรณ์แบบสำหรับกราฟิกเว็บอย่างง่าย

ด้วยเหตุนี้ เราจึงเชื่อว่า SVG จะเป็นรูปแบบที่ดีที่สุดสำหรับกราฟิกง่ายๆ ที่จะใช้บนเว็บ สื่อนี้มีน้ำหนักเบาและรวดเร็ว และสามารถใช้กับไอคอน ภาพประกอบ โลโก้ และกราฟิกแบนๆ อื่นๆ


ไอคอน Svg ทำงานอย่างไร

ไอคอน Svg ทำงานอย่างไร
เครดิต: f-cdn.com

ไอคอน SVG เป็นกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ซึ่งสามารถใช้บนเว็บไซต์และในแอปพลิเคชันได้ โดยปกติจะสร้างขึ้นในซอฟต์แวร์แก้ไขเวกเตอร์ เช่น Adobe Illustrator และบันทึกเป็นไฟล์ SVG เมื่อใช้บนเว็บไซต์หรือในแอป ไฟล์ SVG จะถูกนำเข้าและไอคอนจะปรากฏบนหน้าจอ

ทีมส่วนหน้าของ Kaliop ใช้ไอคอนใน HTML และ CSS ในลักษณะนี้ แม้ว่าจะมีหลายวิธีในการทำเช่นนั้น พื้นที่ที่ดีที่สุดในการวางรูปร่างคือใกล้กับขอบ โดยเฉพาะอย่างยิ่งเมื่อปัดเศษ ในแง่ของการปรับพิกเซล dpi ที่แน่นอนนั้นไม่เกี่ยวข้อง (เพื่อให้แน่ใจว่าได้ผลลัพธ์ที่ดีที่สุดเท่าที่จะเป็นไปได้บนหน้าจอขนาดเล็ก) เมื่อส่งออกรูปภาพจากเครื่องมือออกแบบ รูปภาพอาจมีข้อมูลเมตาและมาร์กอัปบางส่วนหรือทั้งหมดที่คุณคาดหวังในเครื่องมือออกแบบ ข้อมูลเส้นทาง (ในแอตทริบิวต์ d) อาจปรากฏแม่นยำเกินไป คุณสามารถดูว่ามีการเปลี่ยนแปลงอะไรบ้างในโค้ดโดยใช้เครื่องมืออย่าง SVGOMG เมื่อใช้ไอคอนสีเดียว ตรวจสอบให้แน่ใจว่าเราใช้การเติมฮาร์ดโค้ดในซอร์ส เนื่องจากสิ่งนี้จะป้องกันไม่ให้เราเปลี่ยนสีจากโค้ด CSS ของเรา

หากคุณกำลังสร้าง Sprite ด้วยมือ วิธีที่ดีที่สุดคือเก็บโฟลเดอร์ที่มี ไอคอน SVG แต่ละอัน ไว้ หากต้องการประหยัดพื้นที่ ให้ใส่ภาพประกอบที่คุณไม่จำเป็นต้องจัดรูปแบบในไฟล์ SVG ไฟล์เดียว ตั้งเป็นตำแหน่ง alt=%22> บนหน้าของคุณ หากคุณทำให้รูปภาพเคลื่อนไหว ตรวจสอบให้แน่ใจว่ามีโค้ด sva แบบเต็มอยู่ในหน้า HTML ของคุณ ขอแนะนำให้คุณรวมป้ายกำกับข้อความกับไฟล์ SVG แต่ละไฟล์ในที่เก็บไอคอนของคุณ เติมสิ่งนี้ด้วย JavaScript (svg4everybody,svgxuse) หากต้องการรวม Sprite ของคุณในโค้ด HTML ให้เลือกตัวเลือกด้านล่าง มีข้อดีและข้อเสียสำหรับแต่ละวิธี

เมื่อรวมทั้งสองวิธีเข้าด้วยกัน ฉันชอบแนวคิดในการสร้างสไปรต์สองแบบ คุณสมบัติสไตล์ SVG จำนวนมาก สืบเชื้อสายมาจากผู้ปกครอง หากคุณต้องการแสดงคุณสมบัติความกว้างเส้นขีดเป็นค่ายาว คุณสมบัตินั้นจะใช้พิกัดของไอคอนของคุณ หากเส้นทางของคุณข้ามขอบเขตของวิวพอร์ต เส้นขีดครึ่งหนึ่งจะถูกตัดออก มีการใช้เทคนิคง่ายๆ เพื่อสร้างเส้นทางสองเส้นทางที่มีค่าการเติมต่างกัน (หรือที่เรียกว่าสองสี) หากคุณมีโครงสร้าง HTML ที่ดี หน้าจะยังคงอ่านได้ แต่ไอคอนจะมีขนาดใหญ่ขึ้นมาก หากเป็นกรณีนี้ ให้วางไว้ที่ด้านบนสุดของหน้าของคุณ: ความไพเราะและความสั้นของร้อยแก้ว

วิธีที่มีประสิทธิภาพที่สุดคือการใช้แอตทริบิวต์ความสูงและความกว้างกับองค์ประกอบ SVG ของคุณ แม้ว่าจะใช้งานได้ แต่การปรับขนาดไอคอนนี้ใน CSS อาจทำได้ยากกว่าเล็กน้อย ไอคอนสี่เหลี่ยมจัตุรัสหรือแชร์ริชสามารถใช้กับค่าเปอร์เซ็นต์แทนค่าเปอร์เซ็นต์ได้ เนื่องจากเปอร์เซ็นต์แสดงถึงเปอร์เซ็นต์ของความกว้างของไอคอน ถ้าเราต้องการเติมช่องไล่ระดับ เราจะต้องใช้ SVG เนื่องจากไม่สามารถใช้ CSS linear-gradient(…) กับ คุณสมบัติการเติม SVG ได้ จึงไม่ถูกต้อง

การเพิ่ม SVG ในเว็บไซต์ของคุณสามารถเพิ่มประสิทธิภาพโดยรวมในแง่ของคุณภาพกราฟิก มีน้ำหนักเบาและสามารถใช้เพื่อกำหนดระบบพิกัดใหม่และวิวพอร์ต ทำให้คุณสามารถฝังส่วนย่อย SVG ลงใน HTML และ s vo ไม่จำเป็นต้องรวมแอตทริบิวต์ xmlns ใน องค์ประกอบ svg ภายนอก เนื่องจากข้อมูลนี้มีอยู่แล้ว

ไอคอน Svg: วิธีสร้าง

คุณควรรู้วิธีใช้ไอคอน svg ตอนนี้คุณรู้วิธีแสดงแล้ว