ความชาญฉลาดของการแฮ็ก HTML
- ความจำเป็นของการแฮ็ก HTML: บางครั้งต้องเขียนโค้ดที่ไม่สวยงามเพื่อให้ได้ผลลัพธ์ตามที่ต้องการ เนื่องจากโค้ด HTML ทำงานผิดพลาดหรือการพัฒนาเบราว์เซอร์ยังไม่สมบูรณ์ การแฮ็กเหล่านี้บางครั้งก็สร้างสรรค์และควรค่าแก่การจดจำ
- แฮ็ก
@import ของ Netscape Navigator 4.0: ช่วยบล็อก CSS style ที่ Netscape ไม่รองรับ แม้ Netscape จะสนับสนุน JSSS แทน CSS แต่เมื่อ W3C เลือก CSS ทำให้การรองรับ CSS ของ Netscape 4 ถูกเร่งพัฒนา และส่งผลให้ประสิทธิภาพด้อยกว่าเบราว์เซอร์รุ่นหลัง
- การใช้ตาราง HTML เพื่อจัดเลย์เอาต์: ทำให้สามารถสร้างเลย์เอาต์ที่ทดลองมากขึ้นได้ การใช้ตาราง HTML เป็นเครื่องมือจัดเลย์เอาต์ถือเป็นนิยามของการแฮ็ก และในโลกของอีเมลก็ยังคงใช้อยู่
- การใช้ขีดล่างนำหน้า CSS style: ทำให้สามารถใช้บางสไตล์กับ IE6 เท่านั้น โดยอาศัยข้อจำกัดของ IE ในการ parse อักขระพิเศษ
- การใช้ AlphaImageLoader เพื่อแสดงความโปร่งใสของ PNG: เรนเดอร์ความโปร่งใสของไฟล์ PNG ที่ IE6 ไม่รองรับ โดยประมวลผลภาพผ่านฟิลเตอร์
- Conditional comments: ทำให้สามารถใช้เทคนิคบางอย่างได้เฉพาะใน IE บางเวอร์ชัน โดยแฮ็กฟังก์ชันคอมเมนต์ของ HTML เพื่อให้โค้ดทำงานได้
- Scalable Inman Flash Replacement (sIFR): ทำให้สามารถใช้ฟอนต์ที่ไม่ใช่ web-safe ได้ โดยใช้ JavaScript hack เพื่อแทนที่ข้อความด้วย Flash embed
- แฮ็กข้อความ preheader: ป้องกันไม่ให้ข้อความเพิ่มเติมในอีเมลไหลเข้าไปในบรรทัดคำอธิบาย โดยใช้อาร์เรย์ของอักขระเว้นวรรคที่ไม่เป็นมาตรฐานหรือพบได้ไม่บ่อย
- Google Chrome Frame: แทนที่ IE6 ด้วยหน้าต่าง Chrome โดยทำผ่าน browser plugin
- แฮ็กตัวเลือกเฉพาะ Webkit: ใช้โค้ด CSS กับเบราว์เซอร์ Webkit เท่านั้น โดยตรวจจับว่าเบราว์เซอร์นั้นรองรับโค้ด CSS เฉพาะบางแบบหรือไม่
- Responsive design: จัดวางข้อมูลได้อย่างมีประสิทธิภาพในสภาพแวดล้อมที่หลากหลาย โดยเฉพาะบนแท็บเล็ตและมือถือ โดยส่วนใหญ่ใช้ media queries เพื่อจัดวางข้อมูลตามอุปกรณ์
ความเห็นของ GN⁺
- สิ่งสำคัญที่สุดคือความพยายามของนักพัฒนาที่หาวิธีแก้ปัญหาอย่างสร้างสรรค์นอกกรอบมาตรฐานของ HTML และ CSS
- บทความนี้น่าสนใจและชวนติดตาม เพราะแสดงให้เห็นว่านักพัฒนาเว็บใช้การแฮ็กอย่างสร้างสรรค์เพื่อก้าวข้ามข้อจำกัดของเบราว์เซอร์และยกระดับประสบการณ์ผู้ใช้ได้อย่างไร
- การแฮ็กเหล่านี้สะท้อนถึงพัฒนาการของมาตรฐานเว็บและความพยายามไม่หยุดยั้งของนักพัฒนาเพื่อการออกแบบเว็บที่ดียิ่งขึ้น
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
พอเข้าใจได้กับการใช้ตารางเพื่อจัดเลย์เอาต์
ไม่มีการให้เกียรติ spacer.gif เลย
เทคนิคที่ชอบที่สุด:
HN ยังใช้หนึ่งในเทคนิคเหล่านี้อยู่แม้ในปัจจุบัน:
ไม่มีการกล่าวถึงการทำให้หัวข้อสำหรับ accessibility ไม่แสดงบนหน้าจอ โดยย้ายไปตำแหน่ง -10000
ไม่มีการพูดถึงการติดตั้ง HTML5 shiv ก่อน CSS เพื่อกำจัดความเพี้ยนเฉพาะของแต่ละเบราว์เซอร์
จำวันเก่า ๆ อันแสนดีที่ใช้ gif โปร่งใสขนาด 1×1 พิกเซลเพื่อควบคุมเซลล์ตารางได้
มีการเสริมถึง
ที่ถูกใช้แพร่หลายในยุคแรก หรือเอนทิตีอักขระเว้นวรรคแบบไม่ตัดบรรทัด:บางครั้งแยกไม่ออกว่านักพัฒนาเว็บสมัยใหม่เสียคนเพราะ CSS Grid กับการสิ้นสุดของ IE หรือว่าสมัยนั้นต่างหากที่สบายเกินไปเพราะไม่ต้องรับมือกับเฟรมเวิร์กสมัยใหม่และกระบวนการ build ที่ซับซ้อน
สงสัยว่าการออกแบบแบบ responsive นับเป็นแฮ็กจริงหรือไม่: