บทช่วยสอนHTML

HTML หน้าแรก บทนำ HTML โปรแกรมแก้ไข HTML HTML พื้นฐาน องค์ประกอบ HTML แอตทริบิวต์ HTML ส่วนหัว HTML ย่อหน้า HTML รูปแบบ HTML การจัดรูปแบบ HTML ใบเสนอราคา HTML ความคิดเห็น HTML HTML สี HTML CSS ลิงค์ HTML รูปภาพ HTML HTML Favicon ตาราง HTML รายการ HTML บล็อก HTML & อินไลน์ คลาส HTML รหัส HTML HTML Iframes HTML JavaScript เส้นทางไฟล์ HTML หัวหน้า HTML เค้าโครง HTML HTML Responsive HTML รหัสคอมพิวเตอร์ HTML Semantics คู่มือสไตล์ HTML เอนทิตี HTML สัญลักษณ์ HTML HTML Emojis ชุดอักขระ HTML การเข้ารหัส URL HTML HTML กับ XHTML

แบบฟอร์มHTML

แบบฟอร์ม HTML คุณสมบัติแบบฟอร์ม HTML องค์ประกอบแบบฟอร์ม HTML ประเภทอินพุต HTML แอตทริบิวต์การป้อนข้อมูล HTML แอตทริบิวต์แบบฟอร์มการป้อนข้อมูล HTML

กราฟิกHTML

HTML Canvas HTML SVG

สื่อHTML

สื่อ HTML วิดีโอ HTML HTML Audio ปลั๊กอิน HTML HTML YouTube

HTML APIs

HTML Geolocation HTML ลาก/วาง HTML Web Storage HTML Web Workers HTML SSE

ตัวอย่างHTML

ตัวอย่าง HTML แบบทดสอบ HTML แบบฝึกหัด HTML ใบรับรอง HTML สรุป HTML การเข้าถึง HTML

ข้อมูลอ้างอิงHTML

รายการแท็ก HTML แอตทริบิวต์ HTML HTML Global Attributes รองรับ HTML Browser เหตุการณ์ HTML HTML สี HTML Canvas HTML เสียง/วิดีโอ HTML Doctypes ชุดอักขระ HTML การเข้ารหัส URL HTML HTML Lang Codes ข้อความ HTTP วิธี HTTP ตัวแปลง PX เป็น EM แป้นพิมพ์ลัด

กราฟิก HTML SVG


SVG กำหนดกราฟิกแบบเวกเตอร์ในรูปแบบ XML


SVG คืออะไร?

  • SVG ย่อมาจาก Scalable Vector Graphics
  • SVG ใช้เพื่อกำหนดกราฟิกสำหรับ Web
  • SVG เป็นคำแนะนำของ W3C

HTML <svg> องค์ประกอบ

องค์ประกอบ HTML <svg>เป็นคอนเทนเนอร์สำหรับกราฟิก SVG

SVG มีหลายวิธีในการวาดเส้นทาง กล่อง วงกลม ข้อความ และภาพกราฟิก


รองรับเบราว์เซอร์

ตัวเลขในตารางระบุเบราว์เซอร์รุ่นแรกที่สนับสนุน <svg>องค์ประกอบอย่างสมบูรณ์

Element
<svg> 4.0 9.0 3.0 3.2 10.1

SVG Circle

ตัวอย่าง

<!DOCTYPE html>
<html>
<body>

<svg width="100" height="100">
  <circle cx="50" cy="50" r="40" stroke="green" stroke-width="4" fill="yellow" />
</svg>

</body>
</html>


SVG สี่เหลี่ยมผืนผ้า



ตัวอย่าง

<svg width="400" height="100">
  <rect width="400" height="100" style="fill:rgb(0,0,255);stroke-width:10;stroke:rgb(0,0,0)" />
</svg>

SVG สี่เหลี่ยมผืนผ้าโค้งมน

Sorry, your browser does not support inline SVG.

ตัวอย่าง

<svg width="400" height="180">
  <rect x="50" y="20" rx="20" ry="20" width="150" height="150"
  style="fill:red;stroke:black;stroke-width:5;opacity:0.5" />
</svg>

SVG Star

Sorry, your browser does not support inline SVG.

ตัวอย่าง

<svg width="300" height="200">
  <polygon points="100,10 40,198 190,78 10,78 160,198"
  style="fill:lime;stroke:purple;stroke-width:5;fill-rule:evenodd;" />
</svg>

โลโก้ SVG

SVG Sorry, your browser does not support inline SVG.

ตัวอย่าง

<svg height="130" width="500">
  <defs>
    <linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="0%">
      <stop offset="0%" style="stop-color:rgb(255,255,0);stop-opacity:1" />
      <stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
    </linearGradient>
  </defs>
  <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad1)" />
  <text fill="#ffffff" font-size="45" font-family="Verdana" x="50" y="86">SVG</text>
  Sorry, your browser does not support inline SVG.
</svg>

ความแตกต่างระหว่าง SVG และ Canvas

SVG เป็นภาษาสำหรับอธิบายกราฟิก 2 มิติในรูปแบบ XML

Canvas วาดกราฟิก 2D ได้ทันที (ด้วย JavaScript)

SVG เป็นแบบ XML ซึ่งหมายความว่าทุกองค์ประกอบมีอยู่ใน SVG DOM คุณสามารถแนบตัวจัดการเหตุการณ์ JavaScript สำหรับองค์ประกอบ

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

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


การเปรียบเทียบผ้าใบและ SVG

ตารางด้านล่างแสดงความแตกต่างที่สำคัญระหว่าง Canvas และ SVG:

Canvas SVG
  • Resolution dependent
  • No support for event handlers
  • Poor text rendering capabilities
  • You can save the resulting image as .png or .jpg
  • Well suited for graphic-intensive games
  • Resolution independent
  • Support for event handlers
  • Best suited for applications with large rendering areas (Google Maps)
  • Slow rendering if complex (anything that uses the DOM a lot will be slow)
  • Not suited for game applications

กวดวิชา SVG

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ SVG โปรดอ่าน บทช่วย สอน SVGของ เรา