พื้นฐาน HTML5 สำหรับการพัฒนาเว็บแอพพลิเคชั่น

KongRuksiam Studio
3 min readFeb 21, 2024

--

HTML (HyperText Markup Language)
เป็นภาษาที่ใช้สำหรับสร้างเว็บเพจ มีโครงสร้างภาษาโดยใช้ตัวกำกับ (Markup Tag) เพื่อควบคุมการแสดงผลข้อมูล รูปภาพ และวัตถุอื่น ๆ ผ่านทาง Web Browser เช่น Google Chrome , Firefox , Safari , Microsoft Edge

https://www.pexels.com/photo/programming-data-on-a-computer-14553709/

การสร้างไฟล์ HTML จะต้องอาศัย Text Editor เพื่อใช้สำหรับเขียนคำสั่งต่าง ๆ ที่ต้องการแสดงผลทางจอภาพ / เว็บเบราว์เซอร์ และเก็บเป็นไฟล์โดยมีนามสกุล .html

HTML 5.0 มาตรฐานของภาษา HTML มีการจัดโครงสร้างและการแสดงผลของเนื้อหาสำหรับ www มาตรฐานใหม่มีคุณลักษณะเด่นที่สำคัญ ตัวอย่าง เช่น

  • เล่นวิดีโอ
  • แสดงตำแหน่งทางภูมิศาสตร์
  • เก็บไฟล์ในลักษณะออฟไลน์
  • แสดงกราฟิก
  • การป้อนข้อมูลแบบใหม่ เช่น search, number, range, color, tel, url, email, date, month, week, time, datetime, datetime-local

DOCTYPE การประกาศว่าเว็บเพจที่ได้สร้างขึ้นมาอ้างอิงตามมาตรฐานใด

มาตรฐาน HTML 5

<!DOCTYPE html>

มาตรฐาน HTML 4.01

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ">

มาตรฐาน XHTML 1.1

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "">

กำหนดรูปแบบ Character encoding ในหน้าเว็บ คือ การกำหนดรูปแบบการเข้ารหัสอักขระ(Character encoding) โดยใช้แท็ก<meta> กำหนด Attribute charset ลงไป

<meta charset="utf-8"> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

โครงสร้างของ HTML

<แท็กเปิด>เนื้อหา</แท็กปิด>

<!DOCTYPE html>
<html>
<head>
<title>ชื่อเรื่องของเว็บเพจ</title>
</head>
<body>
เนื้อหาในหน้าเว็บ
</body>
</html>

ส่วน head เป็นส่วนที่อยู่ภายใน <head> … </head> ใช้สำหรับอธิบายข้อมูลเกี่ยวกับเว็บ เช่น ชื่อเรื่องของเว็บเพจ (Title) ชื่อผู้จัดทำเว็บ (Author) คีย์เวิร์ด (Keywords) เพื่อใช้สำหรับให้ผู้ใช้ค้นหาข้อมูลเกี่ยวกับเว็บได้

ส่วน body เป็นส่วนที่อยู่ระหว่าง <body> … </body> ใช้อธิบายเนื้อหาหลักของเว็บ เช่น ใส่ข้อความต่างๆ รูปภาพ แบบฟอร์ม วิดีโอและยังสามารถกำหนดคุณสมบัติพื้นฐานของเว็บได้ เช่น รูปแบบของพื้นหลัง สีของตัวอักษร

HTML Element

  • ทุกคำสั่งที่อยู่ระหว่างแท็กเปิดและแท็กปิด HTML element บางอย่างไม่มีเนื้อหา (content) ซึ่งจะจบคำสั่งในแท็กเปิดเลย
  • โดยส่วนใหญ่ HTML element มักจะมี attribute ประกอบอยู่ในแท็กด้วย
<h1>หัวข้อเรื่อง</h1>
<a href=“www.google.com”>เข้าสู่เว็บไซต์</a>

Comment ส่วนที่ใช้ในการการอธิบายโค้ด ซึ่งจะช่วยให้สามารถเข้าใจและสามารถแก้ไขโค้ดได้ในภายหลังได้

<!--   ข้อความอธิบายโค้ด -->

การกำหนดหัวเรื่อง (Heading) จะใช้ Tag <h1> จนถึง <h6>โดย <h1> จะเป็นการกำหนดหัวเรื่องที่มีขนาดใหญ่ที่สุดส่วน <h6> เป็นกำหนดหัวเรื่องที่มีขนาดเล็กสุด

<h1>หัวเรื่อง 1</h1>
<h2>หัวเรื่อง 2</h2>
<h3>หัวเรื่อง 3</h3>
<h4>หัวเรื่อง 4</h4>
<h5>หัวเรื่อง 5</h5>
<h6>หัวเรื่อง 6</h6>

แสดงข้อมูลเป็น Paragraphs <p> จุดเริ่มต้นของ Paragraphs จะเริ่มที่บรรทัดใหม่ และประโยคที่ไม่ได้อยู่ใน Paragraphs เดียวกัน แต่อยู่ในตำแหน่งที่ต่อจาก Paragraphs ก็จะถูกจัดให้ขึ้นบรรทัดใหม่ทันที

แท็กสำหรับขึ้นบรรทัดใหม่
<br /> เพื่อให้เนื้อหาดูเป็นระเบียบและอ่านได้ง่ายขึ้น

แท็กสำหรับสร้างเส้นคั่นในแนวนอน
<hr> สร้างเส้นคั่นให้กับเนื้อหา

<p>kongruksiam studio</p>
<br/>
<p>HTML5 เบื้องต้น</p>
<hr>

แท็กรูปภาพ (HTML Images)

<img src=“ตำแหน่งรูปภาพ” alt=“คำอธิบายภาพ” width=”ความกว้าง” height=”ความสูง”>

ใส่ลิงก์ให้กับรูปภาพ

<a href=”url”>
<img src=“ตำแหน่งรูปภาพ” alt=“คำอธิบายภาพ”>
</a>

การแสดงรายการ (Lists) ใช้แสดงข้อมูลในรูปแบบของรายการ

https://www.pexels.com/photo/black-background-with-text-overlay-screengrab-270404/
<ol type="รูปแบบการแสดงผล"> 
<li>หัวข้อย่อยรายการที่ 1</li>
<li>หัวข้อย่อยรายการที่ 2</li>
</ol>

รายการแบบใช้ตัวเลข (Order List : Ol) มีการจัดรูปแบบการแสดงผลดังนี้

  • A— ตัวอักษรพิมพ์ใหญ่ เช่น A, B, C
  • a — อักษรพิมพ์เล็ก เช่น a, b, c
  • I— เลขแบบโรมัน เช่น I, II, III
<ul type="รูปแบบการแสดงผล"> 
<li>หัวข้อย่อยรายการที่ 1</li>
<li>หัวข้อย่อยรายการที่ 2</li>
</ul>

รายการแบบใช้สัญลักษณ์ (Unorder List : Ul) มีการจัดรูปแบบการแสดงผลดังนี้

  • disc — จุดสีดำ
  • circle — จุดวงกลมโปร่ง
  • square — สี่เหลี่ยมทึบดำ (ตัวเล็กทั้งหมด)

การสร้างตาราง (Table)

<table>
<thead>
<tr>
<th>ชื่อ</th>
<th>อายุ</th>
</tr>
</thead>
<tbody>
<tr>
<td>ก้อง</td>
<td>25</td>
</tr>
<tr>
<td>โจโจ้</td>
<td>30</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>รวม</td>
<td>2</td>
</tr>
</tfoot>
</table>
  • <table></table> ใช้กำหนดสำหรับสร้างตาราง
  • <thead></thead> ใช้กำหนดกลุ่มเนื้อหาส่วนหัวตาราง
  • <tbody></tbody> ใช้กำหนดกลุ่มเนื้อหาตาราง
  • <tfoot></tfoot> ใช้กำหนดกลุ่มส่วนใต้ตาราง
  • <tr></tr> ใช้กำหนดแถวในตาราง
  • <td></td> กำหนดคอลัมน์
  • <th></th> กำหนดคอลัมน์ที่แสดงผลในส่วนหัวของตาราง

Attribute ของตาราง

  • border=“ความหนา” กำหนดเส้นขอบและความหนาของเส้นขอบตารางโดยจะมีค่าเริ่มต้น = 0
  • width=“%” กำหนดความกว้างหน่วยเป็น %
  • bgcolor=“สี” กำหนดสีพื้นหลังในตาราง
  • <table bgcolor=“สี”> กำหนดสีทั้งแถวและคอลัมน์
  • <tr bgcolor=“สี”> สีของแถว
  • <td bgcolor=“สี”> สีของคอลัมน์
  • colspan=“x” รวมคอลัมน์ ค่า x คือจำนวนคอลัมน์ที่ต้องการรวมเข้าด้วยกัน
  • rowspan=“x” รวมแถว ค่า x คือจำนวนแถวที่ต้องการรวมเข้าด้วยกัน
  • align=“left, center, right” จัดตำแหน่งของภาพ หรืออักษรภายในช่องตาราง <td> ค่าปกติคือ left
  • Cellpadding แสดงข้อมูลภายในตาราง หากมีค่ามากก็จะมีพื้นที่การแสดงผลเป็นที่ว่างมากขึ้น โดยมีค่าเริ่มต้นเป็น 0 (หน่วย Pixel)
  • Cellspacing กำหนดขนาดเส้นตาราง หากมีค่ามากขึ้นเส้นตารางก็ จะมีขนาดมากตามไปด้วย โดยมีค่าเริ่มต้นเป็น 0 (หน่วย Pixel)

การจัดกลุ่มด้วย span , div

<p>ฉันชอบ <span style="color:red;">สีแดง</span></p>
  • <span></span> ใช้จัดกลุ่มข้อความหรือแท็กต่าง ๆ เข้าเป็นกลุ่มเดียวกัน เพื่อกำหนด สี รูปแบบตัวอักษร หรือ style ให้กับข้อความและแท็กภายใต้ <span> ให้เป็นรูปแบบเดียวกัน
<div>
<h2>สวัสดี HTML5</h2>
<p>เรียนรู้การใช้งาน HTML5</p>
</div>
  • <div></div> ใช้จัดกลุ่มข้อความหรือแท็กต่าง ๆ เข้าเป็นกลุ่มเดียวกันลักษณะคล้ายๆกับ <span>แต่แตกต่างกันตรงที่แท็ก div จะมีการขึ้นบรรทัดใหม่ก่อนเริ่มแสดงข้อความภายใต้แท็ก div

HTML FORM การพัฒนาเว็บจำเป็นต้องมีการสร้างแบบฟอร์มที่ผู้ใช้งานสามารถป้อนข้อมูลต่างๆได้ เพื่อนำข้อมูลที่ป้อนนั้นไปทำการประมวลผลอีกทีโดยการรับค่าข้อมูลจะดำเนินการผ่าน <form>….</form>

Photo by Valery Sysoev on Unsplash
  • <input> สร้างช่องรับข้อความต่างๆ
  • <select> แสดงตัวเลือกในรูปแบบ Drop-down
  • <option> สร้างตัวเลือก
  • <button> สร้างปุ่ม
  • <label> กำหนดป้ายชื่อให้ช่องรับข้อมูล
  • <textarea> สร้างช่องรับข้อความแบบหลายบรรทัด

Block vs Inline

  • Block คือ แสดงเนื้อหาความยาวเต็มบรรทัด
<p>Hello World</p>
<div>Hello World</div>
  • Inline คือ แสดงเนื้อหาความกว้างเท่ากับข้อความที่แสดง
<span>Hello World</span>

Class & ID

<div class="country">
<h2>เชียงใหม่</h2>
<p>ข้อมูลจังหวัดเชียงใหม่</p>
</div>

<div class="country">
<h2>ภูเก็ต</h2>
<p>ข้อมูลจังหวัดภูเก็ต</p>
</div>
  • Class การประกาศค่า Attribute “class” ในแท็กที่ต้องการ
<div id="country1">
<h2>เชียงใหม่</h2>
<p>ข้อมูลจังหวัดเชียงใหม่</p>
</div>

<div id="country2">
<h2>ภูเก็ต</h2>
<p>ข้อมูลจังหวัดภูเก็ต</p>
</div>
  • ID เป็นการกำหนดรหัสเฉพาะของแท็กด้วยการประกาศค่า Attribute “id” ในแท็กที่ต้องการ เพื่อนำไปแสดงผลเหมือนกับ Class แต่ค่า id จะไม่สามารถซ้ำกันได้

Semantic Tag การใช้ Semantic tag ถูกนำมาใช้แทน div หลายๆชั้นในหน้าเว็บจะส่งผลทำให้โครงสร้าง html มีความหมายตรงตัวชัดเจนมากยิ่งขึ้น

https://www.w3big.com/images/img_sem_elements.gif
  • <header> คือ ส่วนหัวของเว็บ
  • <nav> คือ เมนูของเว็บ หรือ ลิงค์ไปเว็บอื่นๆ
  • <article> คือ ส่วนที่แสดงเนื้อหาของเว็บ
  • <section> คือ กลุ่มหัวข้อย่อย
  • <aside> คือ เนื้อหาอื่นๆที่แยกจากเนื้อหาหลัก
  • <footer> คือ ส่วนท้ายของหน้าเว็บ

เข้าเรียนเนื้อหา HTML5 เบื้องต้น

ช่องทางการสนับสนุน
🎓คอร์สเรียนพัฒนาเว็บด้วย JavaScript 40 Workshop

🌎 ติดตามข่าวสารเพิ่มเติมได้ที่
Facebook | YouTube | TikTok

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

KongRuksiam Studio
KongRuksiam Studio

Written by KongRuksiam Studio

เรียนรู้การเขียนโปรแกรมนอกห้องเรียน

No responses yet

Write a response