อีกเหตุผลที่จะไปกับสั้น ๆ ก็คือมันตรงกับกรณีอื่น ๆ ที่คุณอาจระบุชุดอักขระในมาร์กอัป ตัวอย่างเช่น:
<script type="javascript" charset="UTF-8" src="/script.js"></script>
<p><a charset="UTF-8" href="http://example.com/">Example Site</a></p>
ความสอดคล้องช่วยลดข้อผิดพลาดและทำให้โค้ดอ่านง่ายขึ้น
โปรดทราบว่าแอตทริบิวต์ชุดอักขระจะไม่ตรงตามตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก คุณสามารถใช้ UTF-8 หรือ utf-8 ได้ แต่ UTF-8 นั้นชัดเจนขึ้นอ่านได้มากขึ้นและแม่นยำยิ่งขึ้น
นอกจากนี้ยังไม่มีเหตุผลที่จะใช้ค่าใด ๆ นอกเหนือจาก UTF-8 ในแอตทริบิวต์ meta charset หรือส่วนหัวของหน้า UTF-8 เป็นการเข้ารหัสเริ่มต้นสำหรับเอกสารบนเว็บตั้งแต่ HTML4 ในปี 1999 และเป็นวิธีเดียวที่ใช้ในการสร้างเว็บเพจที่ทันสมัย
นอกจากนี้คุณไม่ควรใช้เอนทิตี HTML ใน UTF-8 ควรพิมพ์อักขระเช่นสัญลักษณ์ลิขสิทธิ์โดยตรง เอนทิตีเดียวที่คุณควรใช้มีไว้สำหรับอักขระมาร์กอัปที่สงวนไว้ 5 ตัว: น้อยกว่า, มากกว่า, แอมเปอร์แซนด์, ไพร์ม, ดับเบิลไพร์ม องค์กรต้องการตัวแยกวิเคราะห์ HTML ซึ่งคุณอาจไม่ต้องการใช้ในอนาคตพวกเขาแนะนำข้อผิดพลาดทำให้รหัสของคุณอ่านง่ายขึ้นเพิ่มขนาดไฟล์ของคุณและบางครั้งถอดรหัสไม่ถูกต้องในเบราว์เซอร์ต่างๆขึ้นอยู่กับเอนทิตีที่คุณใช้ เรียนรู้วิธีพิมพ์ / ใส่ลิขสิทธิ์เครื่องหมายการค้าเครื่องหมายคำพูดเปิดปิดเครื่องหมายอัญประกาศเครื่องหมายขีดกลางขีดกลางกระสุนยูโรและอักขระอื่น ๆ ที่คุณพบในเนื้อหาของคุณและใช้อักขระจริงเหล่านั้นในรหัสของคุณ Mac มีตัวแสดงตัวละครที่คุณสามารถเปิดได้ในการตั้งค่าระบบคีย์บอร์ด และคุณสามารถค้นหาแล้วลากและวางอักขระที่คุณต้องการหรือใช้ Keyboard Viewer ที่ตรงกันเพื่อดูว่าจะพิมพ์คีย์ใด ตัวอย่างเช่นเครื่องหมายการค้าคือตัวเลือก + 2 UTF-8 มีอักขระและสัญลักษณ์ทั้งหมดจากภาษามนุษย์ทุกภาษาที่เขียน ดังนั้นจึงไม่มีข้อแก้ตัวสำหรับการใช้งาน - แทน em dash มันไม่ใช่ความคิดที่ดีที่จะเรียนรู้กฎของการใช้เครื่องหมายวรรคตอนและการพิมพ์เช่น ... โดยรู้ว่าช่วงเวลานั้นอยู่ในเครื่องหมายคำพูดที่ใกล้ชิดไม่ใช่ด้านนอก
การใช้แท็กสำหรับบางอย่างเช่นประเภทเนื้อหาและการเข้ารหัสเป็นเรื่องน่าขันอย่างยิ่งเนื่องจากคุณไม่ทราบสิ่งเหล่านั้นคุณจึงไม่สามารถแยกไฟล์เพื่อรับค่าเมตาแท็ก
ไม่นั่นไม่ใช่ความจริง เบราว์เซอร์เริ่มต้นในการแยกวิเคราะห์ไฟล์เป็นการเข้ารหัสเริ่มต้นของเบราว์เซอร์ UTF-8 หรือ ISO-8859-1 เนื่องจาก US-ASCII เป็นเซตย่อยของทั้ง ISO-8859-1 และ UTF-8 เบราว์เซอร์จึงสามารถอ่านได้อย่างดีทั้งสองวิธี ... มันเหมือนกัน เมื่อเบราว์เซอร์พบแท็ก meta charset หากการเข้ารหัสแตกต่างจากที่เบราว์เซอร์ใช้อยู่เบราว์เซอร์จะโหลดหน้าเว็บในการเข้ารหัสที่ระบุ นั่นคือเหตุผลที่เราใส่เมตาแท็กชาร์เซ็ตที่ด้านบนขวาหลังจากแท็กหัวก่อนหน้าสิ่งอื่นแม้แต่ชื่อ ด้วยวิธีนี้คุณสามารถใช้อักขระ UTF-8 ในชื่อของคุณ
คุณต้องบันทึกไฟล์ของคุณในการเข้ารหัส UTF-8 โดยไม่มี BOM
นั่นไม่เป็นความจริงอย่างเคร่งครัด หากคุณมีเพียง US-ASCII ตัวอักษรในเอกสารของคุณคุณสามารถบันทึกเป็น US-ASCII และใช้เป็น UTF-8 เนื่องจากเป็นชุดย่อย แต่ถ้ามีอักขระ Unicode คุณถูกต้องคุณต้องบันทึกเป็น UTF-8 โดยไม่มี BOM
หากคุณต้องการโปรแกรมแก้ไขข้อความที่ดีที่จะบันทึกไฟล์ของคุณใน UTF-8 ฉันแนะนำ Notepad ++
สำหรับ Mac ให้ใช้ Bare Bones TextWrangler (ฟรี) จาก Mac App Store หรือ Bare Bones BBEdit ซึ่งอยู่ที่ Mac App Store ในราคา $ 39.99 ... ราคาถูกมากสำหรับเครื่องมือที่ยอดเยี่ยม ในทั้งสองแอพมีเมนูที่ด้านล่างของหน้าต่างเอกสารที่คุณระบุการเข้ารหัสเอกสารและคุณสามารถเลือก "UTF-8 no BOM" ได้อย่างง่ายดาย และแน่นอนคุณสามารถตั้งค่าให้เป็นค่าเริ่มต้นสำหรับเอกสารใหม่ในการตั้งค่า
แต่ถ้าเว็บเซิร์ฟเวอร์ของคุณทำหน้าที่เข้ารหัสในส่วนหัว HTTP ซึ่งขอแนะนำทั้ง [เมตาแท็ก] นั้นไม่มีความจำเป็น
มันไม่ถูกต้อง แน่นอนคุณควรตั้งค่าการเข้ารหัสในส่วนหัว HTTP แต่คุณควรตั้งค่าไว้ในแอตทริบิวต์ meta charset เพื่อให้ผู้ใช้สามารถบันทึกหน้าเว็บได้โดยไม่ต้องออกจากเบราว์เซอร์ไปยังที่จัดเก็บในตัวเครื่องแล้วเปิดอีกครั้งในภายหลัง สิ่งบ่งชี้เพียงอย่างเดียวของการเข้ารหัสที่จะมีอยู่คือแอตทริบิวต์ meta charset คุณควรตั้งค่าแท็กฐานด้วยเหตุผลเดียวกัน ... บนเซิร์ฟเวอร์แท็กฐานไม่จำเป็น แต่เมื่อเปิดจากที่จัดเก็บในตัวแท็กฐานจะช่วยให้หน้าเว็บทำงานได้ราวกับว่าอยู่บนเซิร์ฟเวอร์ สินทรัพย์ในสถานที่และอื่น ๆ ไม่มีลิงก์ที่ใช้งานไม่ได้
AddDefaultCharset UTF-8
หรือคุณสามารถเปลี่ยนการเข้ารหัสไฟล์บางประเภทเช่น:
AddType text/html;charset=utf-8 html
เคล็ดลับสำหรับการให้บริการทั้งไฟล์ UTF-8 และ Latin-1 (ISO-8859-1) คือการให้ไฟล์ UTF-8 เป็นนามสกุล "text" และไฟล์ละติน -1 "txt"
AddType text/plain;charset=iso-8859-1 txt
AddType text/plain;charset=utf-8 text
สุดท้ายให้พิจารณาการบันทึกเอกสารของคุณด้วยการสิ้นสุดบรรทัด Unix ไม่ใช่ DOS ดั้งเดิม (หรือคลาสสิค) การสิ้นสุดบรรทัด Mac ซึ่งไม่ได้ช่วยและอาจเจ็บโดยเฉพาะอย่างยิ่งเมื่อเราได้รับมากขึ้นจากระบบเดิมเหล่านั้น เอกสาร HTML ที่มีการเข้ารหัส HTML5, UTF-8 ที่ถูกต้องและการสิ้นสุดบรรทัด Unix เป็นงานที่ทำได้ดี คุณสามารถแบ่งปันและแก้ไขและจัดเก็บและอ่านและกู้คืนและพึ่งพาเอกสารนั้นในบริบทจำนวนมาก มันเป็นภาษากลาง มันเป็นกระดาษดิจิตอล