วิธีเพิ่มเอฟเฟ็กต์โฮเวอร์ในโค้ด Svg แบบอินไลน์

เผยแพร่แล้ว: 2023-03-05

เมื่อเพิ่มเอฟเฟ็กต์โฮเวอร์ในโค้ด SVG แบบอินไลน์ มีบางสิ่งที่ต้องจำไว้ ประการแรก เบราว์เซอร์ทั้งหมดไม่รองรับโค้ด SVG แบบอินไลน์ ดังนั้นคุณจะต้องใช้วิธี polyfill หรือ fallback หากต้องการสนับสนุนเบราว์เซอร์รุ่นเก่า ประการที่สอง เนื่องจากโค้ด SVG แบบอินไลน์เขียนด้วย XML คุณจะต้องใช้วิธีอื่นในการเพิ่มเอฟเฟ็กต์โฮเวอร์ ซึ่งแตกต่างจากที่คุณทำกับองค์ประกอบ HTML ทั่วไป วิธีหนึ่งในการเพิ่มเอฟเฟกต์โฮเวอร์ให้กับโค้ด SVG แบบอินไลน์คือการใช้ CSS :hover pseudo-class ซึ่งจะทำงานในเบราว์เซอร์สมัยใหม่ส่วนใหญ่ แต่จะใช้งานไม่ได้ใน IE เวอร์ชันเก่า อีกวิธีในการเพิ่มเอฟเฟ็กต์โฮเวอร์คือการใช้องค์ประกอบ SVG วิธีการนี้ต้องการโค้ดเพิ่มเติม แต่จะใช้ได้กับทุกเบราว์เซอร์ หากคุณต้องการรองรับเบราว์เซอร์รุ่นเก่า คุณสามารถใช้ polyfill เช่น SVGeezy สิ่งนี้จะเปิดใช้งาน :hover pseudo-class ในเบราว์เซอร์รุ่นเก่า ดังนั้นคุณจึงสามารถใช้ โค้ด CSS เดียวกันกับที่คุณใช้ในเบราว์เซอร์สมัยใหม่ การเพิ่มเอฟเฟ็กต์โฮเวอร์ในโค้ด SVG แบบอินไลน์อาจยุ่งยากเล็กน้อย แต่ด้วยความรู้เพียงเล็กน้อย การเพิ่มเอฟเฟ็กต์เหล่านี้ในโค้ดของคุณจึงเป็นเรื่องง่าย

หากต้องการเปลี่ยนสีในสถานะโฮเวอร์ ให้ใช้คลาสไอคอนใน CSS และตั้งค่าคุณสมบัติการเติมเป็นคลาส .icon วิธีที่ง่ายที่สุดในการใช้ สถานะโฮเวอร์สี กับ SVG คือใช้วิธีนี้

ฉันจะวางเมาส์เหนือ Svg ได้อย่างไร

ฉันจะวางเมาส์เหนือ Svg ได้อย่างไร
ภาพโดย: https://pinimg.com

หากต้องการวางเมาส์เหนือ SVG คุณต้องใช้ ตัวเลือก CSS : hover ตัวเลือกนี้ใช้เพื่อเลือกองค์ประกอบที่คุณต้องการวางเมาส์เหนือ

เดอะ องค์ประกอบใน Svg

นอกจากแท็ก *color The color> ยังสามารถเป็นแท็กชื่อเลขฐานสิบหกหรือชื่อสี นอกจากนี้ยังสามารถใช้ rgba และ hsla เพื่อสร้างสีที่ซับซ้อนมากขึ้น


คุณอินไลน์ Svg ใน Html ได้อย่างไร

คุณอินไลน์ Svg ใน Html ได้อย่างไร
ภาพโดย: https://meltmedia.com

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

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

รูปภาพ Svg และการเข้าถึง

คุณสามารถใช้ SVG แบบอินไลน์เพื่อเพิ่มกราฟิกและรูปภาพลงในหน้าเว็บของคุณได้ ในขณะที่ SVG แบบอินไลน์สามารถเป็นเครื่องมือที่มีประสิทธิภาพ สิ่งสำคัญคือต้องเข้าใจปัญหาที่มาพร้อมกับมัน คุณสามารถทำให้กราฟิกของคุณเข้าถึงได้มากขึ้นสำหรับผู้ใช้ที่มีความพิการโดยระบุ aria ที่อธิบายโดยใช้แท็ก *svg> ของคุณ

Svg ควรเป็นแบบอินไลน์หรือไม่

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

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

ข้อดีและข้อเสียของ Svg

เบราว์เซอร์รุ่นเก่าอาจไม่สามารถแสดงผลได้อย่างถูกต้องเนื่องจากหน่วยความจำไม่เพียงพอ แม้จะใช้เบราว์เซอร์ปัจจุบัน รูปภาพที่สร้างในรูปแบบมาตรฐานอาจดูไม่ดีนัก

Svg Hover Effects Codepen

เอฟเฟ็กต์โฮเวอร์เป็นวิธีที่ยอดเยี่ยมในการเพิ่มการโต้ตอบให้กับ SVG มีหลายวิธีในการสร้างเอฟเฟ็กต์โฮเวอร์ แต่วิธีที่ได้รับความนิยมมากที่สุดวิธีหนึ่งคือการใช้แท็ก codepen เป็นสถานที่ที่ดีในการค้นหาตัวอย่างเอฟเฟกต์โฮเวอร์ เพียงค้นหา " svg hover effects codepen" แล้วคุณจะพบตัวอย่างดีๆ มากมาย

เลื่อนเส้นทาง Svg

เมื่อคุณวางเมาส์เหนือ เส้นทาง svg เคอร์เซอร์จะเปลี่ยนเป็นตัวชี้ ซึ่งบ่งชี้ว่าองค์ประกอบสามารถคลิกได้ หากคุณคลิกที่เส้นทาง หน้าใหม่จะเปิดขึ้นพร้อมกับข้อมูลเพิ่มเติมเกี่ยวกับหัวข้อนั้น

วิธีเพิ่ม Svg เป็น Html

คุณสามารถสร้างภาพ SVG ลงในเอกสาร HTML ได้โดยตรงโดยการใส่แท็ก svg> /svg> คุณสามารถสร้างเอกสาร HTML ได้โดยเปิดภาพ SVG ในโค้ด IDE หรือ VS ที่คุณต้องการ คัดลอกโค้ดแล้ววางลงในเนื้อหา หากทุกอย่างเป็นไปตามแผน เว็บไซต์ของคุณจะมีลักษณะเหมือนกับภาพด้านล่างทุกประการ

รูปภาพ Svg: วิธีทำให้ใช้งานได้บนเว็บไซต์ของคุณ

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

Svg Hover ไม่ทำงาน

หากคุณประสบปัญหาในการทำให้เอฟเฟกต์โฮเวอร์ทำงานบนองค์ประกอบ SVG มีบางสิ่งที่คุณลองทำได้ ขั้นแรก ตรวจสอบให้แน่ใจว่าองค์ประกอบที่คุณพยายามกำหนดเป้าหมายถูกตั้งค่าเป็น display: block; ใน CSS ของคุณ หากไม่ได้ผล ให้ลองเพิ่ม pointer-evens: none; กฎสำหรับองค์ประกอบหลักของ SVG การดำเนินการนี้จะทำให้แน่ใจว่าการคลิกที่องค์ประกอบหลักจะไม่ทำให้เกิดเอฟเฟกต์โฮเวอร์บน SVG โดยไม่ตั้งใจ สุดท้าย หากคุณยังพบปัญหาอยู่ ให้ลองใช้ เอฟเฟกต์โฮเวอร์อื่น เช่น :hover { ความทึบ: 0.5; }