โฮมเพจ » การเข้ารหัส » ดูที่แอตทริบิวต์ตัวยึด HTML5

    ดูที่แอตทริบิวต์ตัวยึด 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 อาจเป็นวิธีที่ดีกว่า.