<head> Element คือ ส่วนที่เป็นเหมือนคอนเทนเนอร์ไว้ใส่ Element อื่นๆ เช่น <style>, <meta>, <link>, <script>, <base>
<head> Element
<head> Element คือคอนเทนเนอร์สำหรับ Metadata จะอยู่ระหว่าง Tag <html> และ <body>
Metadata เป็นข้อมูลเกี่ยวกับเอกสาร HTML Metadata ไม่แสดงผลในเบราว์เซอร์
โดยทั่วไป Metadata จะกำหนดชื่อเอกสาร ประเภทตัวอักษร สไตล์ สคริปต์ และข้อมูลเมตาอื่นๆ
<title> Element
<title> คือ Tag ใช้ระบุชื่อเรื่องของเอกสาร ชื่อเรื่องต้องเป็นข้อความเท่านั้น และจะแสดงในแถบชื่อเรื่องของเบราว์เซอร์หรือในแท็บของหน้า
Tag <title> นั้นสำคัญมากสำหรับการปรับแต่งเว็บไซต์ให้ติดเสิร์ช เพราะอัลกอริทึมของเครื่องมือค้นหาใช้ชื่อหน้าเว็บเพื่อตัดสินใจลำดับเมื่อแสดงรายการหน้าในผลการค้นหา
แท็ก <title> สามารถ:
- ระบุหัวเรื่องในแถบของเบราว์เซอร์
- ระบุชื่อสำหรับหน้าเพจเมื่อเพิ่มไปยังรายการโปรด
- แสดงชื่อสำหรับหน้าในผลลัพธ์ของ Search Engine เช่น Google
ดังนั้น พยายามตั้งชื่อให้ถูกต้องและมีความเหมาะสมกับเรื่องนั้นๆ มากที่สุด
ตัวอย่าง
<!DOCTYPE html>
<html>
<head>
<title>ชื่อเรื่องที่เป็นหัวของเนื้อหานี้</title>
</head>
<body>
<p>เนื้อหาขององค์ประกอบเนื้อหาจะแสดงในหน้าต่างเบราว์เซอร์</p>
<p>เนื้อหาขององค์ประกอบชื่อจะแสดงในแท็บเบราว์เซอร์ในรายการโปรดและในผลลัพธ์ของเครื่องมือค้นหา</p>
</body>
</html>
<style> Element
Tag <style> นี้ใช้กำหนดข้อมูลสไตล์ของหน้าเว็บเพจ เช่น หัวข้อ สีข้อความ สีพื้นหลัง และอื่นๆ
ตัวอย่าง
<!DOCTYPE html>
<html>
<head>
<title>ชื่อบทความที่แสดงที่แท็บเบราว์เซอร์</title>
<style>
body {background-color: powderblue;}
h1 {color: red;}
p {color: blue;}
</style>
</head>
<body>
<h1>หัวข้อใหญ่</h1>
<p>เนื้อหาบทความ</p>
<p>เนื้อหาขององค์ประกอบเนื้อหาจะแสดงในหน้าต่างเบราว์เซอร์</p>
<p>เนื้อหาขององค์ประกอบชื่อเรื่องจะแสดงในแท็บเบราว์เซอร์ ในรายการโปรด และในผลการค้นหาของเครื่องมือค้นหา</p>
</body>
</html>
<link> Element
Tag <link> ใช้ในการระบุลิงก์ไฟล์ ส่วนใหญ่จะใช้ลิงก์กับไฟล์ข้างนอก
ตัวอย่าง
<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
<link rel="stylesheet" href="mystyle.css">
</head>
<body>
<h1>This is a Heading</h1>
<p>This is a paragraph.</p>
</body>
</html>
<meta> Element
<meta> โดยปกติ Tag นี้จะใช้เพื่อระบุชุดอักขระ (Character Set) คำอธิบายหน้า (Page Description) Keywords ชื่อผู้เขียนหน้าเพจและการตั้งค่าวิวพอร์ต
Metadata จะไม่แสดงผลในหน้าเพจ แต่จะถูกแสดงที่เบราว์เซอร์ Search Engines (Keywords) และ Web Service อื่นๆ
ตัวอย่าง
ใช้ระบุชุดอักขระ (Character Set)
<meta charset="UTF-8">
ใช้ระบุคีย์เวิร์ดให้กับ Search Engine
<meta name="keywords" content="HTML, CSS, JavaScript">
ใช้ระบุคำอธิบายหน้าเว็บเพจของคุณ
<meta name="description" content="Free Web tutorials">
ใช้ระบุชื่อผู้เขียนหน้าเพจ
<meta name="author" content="John Doe">
ใช้รีเฟรชหน้าเอกสารทุกๆ 30 วินาที
<meta http-equiv="refresh" content="30">
ใช้เพื่อตั้งค่า viewport เพื่อทำให้เว็บของคุณดูดีเหมาะกับทุกอุปกรณ์
<meta name="viewport" content="width=device-width, initial-scale=1.0">
ตัวอย่างของแท็ก <meta>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="description" content="Free Web tutorials">
<meta name="keywords" content="HTML, CSS, JavaScript">
<meta name="author" content="John Doe">
</head>
<body>
<p>สังเกตได้ว่าข้อมูล meta อยู่ภายในส่วน head Element</p>
</body>
</html>
การตั้งค่า Viewport
Viewport เป็นพื้นที่ที่ผู้ชมมองเห็นได้จากหน้าเว็บ ซึ่งจะแตกต่างกันไปตามอุปกรณ์ เช่น เว็บเพจในมือถือจะแสดงผลเล็กกว่าบนคอมพิวเตอร์ ซึ่งจะใช้ Element เหล่านี้ในการจัดการ
<meta name="viewport" content="width=device-width, initial-scale=1.0">
วิธีควบคุมขนาดและมาตราส่วนของหน้า
width=device-width จะกำหนดความกว้างของหน้าตามความกว้างหน้าจอของอุปกรณ์ (ซึ่งจะแตกต่างกันไปตามอุปกรณ์)
initial-scale=1.0 จะตั้งค่าระดับการซูมเริ่มต้นเมื่อเบราว์เซอร์โหลดหน้าเว็บเป็นครั้งแรก
ตัวอย่าง
<script> Element
<script> ใช้ในการระบุ client-side JavaScripts
ยกตัวอย่างให้ JavaScript เขียนว่า “Hello JavaScript!” ข้างใน HTML Element ด้วย id=”demo”
ตัวอย่าง
<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
<script>
function myFunction() {
document.getElementById("demo").innerHTML = "Hello JavaScript!";
}
</script>
</head>
<body>
<h1>My Web Page</h1>
<p id="demo">A Paragraph</p>
<button type="button" onclick="myFunction()">Try it</button>
</body>
</html>
<base> Element
<base> ใช้เพื่อระบุ URL พื้นฐานหรือ URL สำหรับลิงก์ที่เกี่ยวข้องโดยที่ต้องมี href หรือ target Attribute หรือทั้งสองอย่าง
สามารถมีแท็ก <base> หนึ่งแท็กเท่านั้นในเอกสาร
ตัวอย่าง
กำหนด Default URL และ Default Target สำหรับลิงก์ในหน้าเพจ
<!DOCTYPE html>
<html>
<head>
<base href="https://kb.hostatom.com/" target="_blank">
</head>
<body>
<h1>The base element</h1>
<p><img src="/html/images/img_chania.jpg" width="160" height="145" alt="chania">
- สังเกตว่าเราได้ระบุที่อยู่สำหรับรูปภาพเท่านั้น เนื่องจากเราได้ระบุ URL พื้นฐานในส่วน head แล้วเบราว์เซอร์จะค้นหารูปภาพที่ "https://kb.hostatom.com/html/images/img_chania.jpg"</p>
<p><a href="category/html/">HTML</a>
- สังเกตว่าลิงก์จะเปิดขึ้นในหน้าต่างใหม่ แม้ว่าจะไม่มี Attribute target="_blank" ก็ตาม นี่เป็นเพราะ target Attribute ของ base Element ถูกตั้งค่าเป็น "_blank"</p>
</body>
</html>
สรุป
- <head> คือคอนเทนเนอร์สำหรับ Metadata
- <head> จะอยู่ระหว่างแท็ก <html> และแท็ก <body>
- จำเป็นต้องมีแท็ก <title> เป็นองค์ประกอบและกำหนดชื่อเรื่องของเอกสาร
- <style> ใช้เพื่อกำหนดข้อมูลสไตล์สำหรับเอกสารเดียว (Single Document)
- <link> มักใช้เพื่อเชื่อมโยงไปยังสไตล์ชีตภายนอก
- <meta> ใช้เพื่อระบุชุดอักขระ คำอธิบายหน้า คำหลัก ผู้สร้างเอกสาร และการตั้งค่าวิวพอร์ต
- <script> ใช้เพื่อกำหนด JavaScript ฝั่งไคลเอนต์ (client-side JavaScripts)
- <base> ระบุ URL พื้นฐานหรือ Target สำหรับ URL สัมพันธ์กันทั้งหมดในเพจ