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

บางสิ่งที่ควรสังเกต: ตามข้อกำหนด, the ตัวยึด ไม่ควรใช้แอตทริบิวต์เป็นทางเลือกแทน ฉลาก และแนะนำว่าควรใช้กับคุณลักษณะนี้เท่านั้น อินพุต ประเภทที่ต้องใช้ข้อความเช่น. ข้อความ, รหัสผ่าน, ค้นหา, อีเมล, textarea และ โทร.
เพิ่ม ตัวยึด ไปที่ อินพุต ประเภท: วิทยุ และ ช่องทำเครื่องหมาย จะไม่สร้างความแตกต่างใด ๆ.
ตัวยึด & CSS
นอกจากนี้การใส่สไตล์ตัวยึดข้อความผ่าน CSS ก็เป็นไปได้เช่นกัน แต่ในขณะที่เขียนนี้ยัง จำกัด เฉพาะเบราว์เซอร์ Firefox และ Webkit เท่านั้น.
ตัวอย่างต่อไปนี้แสดงวิธีที่เราเปลี่ยนข้อความตัวยึดเป็นสีเขียวทั้งใน Webkit และ Firefox
อินพุต :: - webkit-input-placeholder color: green; อินพุต: -moz-placeholder color: green;

เพียงจำไว้ว่า :: - WebKit อินพุต-ตัวยึด และ : -moz-ตัวยึด จะมีผลกับข้อความเท่านั้นและไม่สามารถเขียนแบบขนานได้.
อินพุต :: - webkit-input-placeholder, อินพุต: -moz-placeholder color: green;
โค้ดนี้ไม่สามารถใช้งานได้.
เลือกคุณสมบัติ
CSS3 ยังมาเพื่อสนับสนุนคุณสมบัตินี้โดยการแนะนำ [placeholder] ตัวเลือกคุณสมบัติ;
อินพุต [ตัวยึดตำแหน่ง] เส้นขอบ: 1px สีเขียวทึบ
ในตัวอย่างด้านบนเราเลือกทุกข้อ อินพุต ที่มี ตัวยึด คุณลักษณะและเปลี่ยนเส้นขอบเป็นสีเขียว.

ความเข้ากันได้ของเบราว์เซอร์
คุณลักษณะ HTML5 ใหม่นี้ไม่น่าแปลกใจไม่ได้รับการสนับสนุนในเบราว์เซอร์เก่าและปัจจุบันรองรับเฉพาะใน: Firefox 4+, Chrome 4+, Safari 5+, Opera 11.6 และ Internet Explorer 10 (ซึ่งยังไม่เปิดตัวอย่างเป็นทางการ).
ตัวยึด Polyfills
อย่างไรก็ตามหากเราต้องการแสดงตัวยึดตำแหน่งในเบราว์เซอร์รุ่นเก่า แต่ก็ยังสามารถใช้งานได้ ตัวยึด คุณลักษณะเราสามารถใช้ Polyfills มีจำนวนมาก ตัวยึด Polyfills นอกนั้น แต่ในตัวอย่างนี้เราจะใช้ PlaceMe.js;
The PlaceMe.js, ตามที่คุณเห็นจากโค้ดขนาดใหญ่ข้างต้นขึ้นอยู่กับ jQuery ตอนนี้ถ้าเราดูในตัวอย่างเช่น Internet Explorer 9 อินพุตทั้งหมดควรแสดงข้อความตัวยึดตำแหน่ง.
- ดูการสาธิต
- แหล่งดาวน์โหลด
ความคิดสุดท้าย
HTML5 Placeholder คุณลักษณะแน่นอนทำให้การเพิ่มข้อความตัวยึดได้ง่ายขึ้น ตอนนี้มันขึ้นอยู่กับเรานักพัฒนาเว็บและนักออกแบบเพื่อเลือกวิธีการใช้งาน: JavaScript หรือ HTML5.
หากคุณพิจารณาว่าการใช้ Polyfills และ jQuery เพื่อสนับสนุนเบราว์เซอร์รุ่นเก่านั้นมีความซ้ำซ้อนดังนั้น JavaScript จึงเหมาะสำหรับงานมากกว่า แต่หากคุณสามารถเพิกเฉยต่อเบราว์เซอร์เก่าได้อย่างสงบการใช้ HTML5 Placeholder อาจเป็นวิธีที่ดีกว่า.


