เล็ก เล็ก น้อย น้อย Hack นิดหน่อยเพื่องาน เพื่อเงิน

วันนี้ มาดูกันแค่สั้นๆ กันลืม

จำเป็นแค่ไหน ที่เราต้อง Hack บราวเซอร์ เมื่อมาเขียน CSS

  1. – จำเป็นมาก จนถึงมากที่สุด เพราะเราต้องทำมาหาเลี้ยงชีพ ลูกค้ายังจุดธูปเทียนบูชา IE6 กับ IE7 ทุกวันอย่างนี้ ไม่ Hack ได้ไง
  2. – ไม่จำเป็น Hack ทำไม เพราะเว็บที่กำลังทำอยู่ไม่ได้ต้องการทำมาค้าขาย ไม่เน้นการแสดงผลทางสายตา แต่เน้นด้านการสื่อสารข้อมูลเป็นสำคัญ
  3. – ไม่รู้ว่าจะเลือกอธิบาย หรือเอาคำตอบไหน พี่ๆ เขาพาทำอย่างนี้ พี่ๆ เขาบอกว่า ฝรั่งทำเอาไว้ ทำตามไป ส่งงานได้เหมือนกัน

สามข้อข้างบน เลือกคำตอบเอาตามสบาย ไม่เลือกก็ไม่ว่ากัน เพราะต่างคนต่างมีเหตุผลและความรู้ ความคิดเป็นของตัวเองอยู่ในขั้นพื้นฐานกันอยู่แล้ว แต่สิ่งที่ต้องการมากที่สุดในแต่ละคำตอบคือ การสร้างความเข้าใจ ในคำตอบนั่นต่างหาก หรือ ถ้าเลือกได้ ก็เลือกที่จะไม่ Hack หรือ ยังไงก็ Hack ไม่มีทางที่จะเป็น ฮอลล์ เด็ดขาด

ถ้าถามว่า ทำไมต้อง Hack ผมขอตอบไปข้อเดียวแบบเหมารวมเลยคือ IE6 และ IE7 ต่างด้อยมาตรฐาน ข้อนี้ทุกคนรู้กันดีอยู่แล้ว ส่วนที่ว่า จุดไหนบ้างในการประมวลผลเพื่อแสดงหน้าเว็บที่บราวเซอร์ทั้งสองตัวนั้นมีปัญหา ผมขออภัย หลายๆ ที่เขาพูดถึงกันแล้ว ขอบอกผ่านขอเชิญ Google it!! เอาเอง

IE8 ผมยังไม่เคย Hack เพราะที่ผ่านมา มันยังไม่ได้แสดงอาการเหมือนอย่างที่เวอร์ชั่นก่อนหน้าเป็น จะมีก็แต่การไม่ยอมรองรับ CSS3 Selector หลายๆ ตัว ทั้งๆ ที่บราวเซอร์ยุคใหม่อื่นๆ รองรับกันหมดแล้ว ถือได้ว่า ปัญหานี้ เป็นปัญหา สันดาน ของ IE อันหนึ่งที่เราต้องทำใจยอมรับ เพราะในโลกนี้ใช้ Windows กันอย่างแพร่หลาย ถ้าพี่เบิ้มอย่าง IE ไม่รองรับ ก็ ไม่รองรับ แค่นั้นเอง!!

ขอแวะข้างทางนิดนึงครับ ย่อหน้าข้างบน บางคนอ่านแล้วอาจจะบอกว่า CSS3 ยังไม่จำเป็น เพราะแค่ 2 และ 2.1 ยังใช้ไม่หมดเลย อันนั้นก็เรื่องของใครของมัน แต่ ผมจำเป็นที่จะต้องใช้ CSS3 ยิ่งเว็บที่ต้องสร้าง URI และ แยกประเภทของเนื้อหา ให้มีความหมายเป็นพิเศษด้วยแล้ว ยิ่งจำเป็น

เราอาจใช้ CSS2 กันมานานจนคิดว่า Attribute Class ของ HTML คือส่วนที่เอาไว้สั่งงาน CSS เท่านั้น น้อยคนนักจะเข้าใจมันว่า Class ของ HTML นั้น เอาไว้แบ่งประเภทของเนื้อหาใน HTML หรือแบ่งประเภทของเนื้อหาใน เอกสาร HTML เอง ไม่ได้เกี่ยวกับภาษา CSS แต่อย่างใด ภาษา CSS แค่มาขอแชร์ประโยชน์ของ Attribute Class นี้ในภายหลัง เฉกเช่นเดียวกันกับ ID ที่มีเอาไว้ระบุ ชื่อ ให้กับของที่มีอยู่ใน Document

แต่เมื่อ IE ยังไม่รองรับ CSS3 เราก็ยังไม่สามารถเอามาใช้เพื่อการค้า ทำมาหาเลี้ยงชีพได้ แค่ไม่รองรับไม่เท่าไหร่ รองรับน้อยแล้วยัง แสดงผลเพี้ยนด้วยนี่สิ เราเลยต้องมา Hack กันอีกให้วุ่นวาย

ไม่ขอแนะนำมาก เพราะวิธีการ Hack แบบนี้ มีคนเขียนเอาไว้เยอะแยะแล้ว ศึกษาเพิ่มเติมกันได้ เอามาแปะไว้ที่ ThaiCSS กันลืม สำหรับคำเตือน มี 1 คำคือ ?ไม่สามารถวาลิดเดท ผ่าน?

  1. Hack เฉพาะ IE6

    selector { _property: value;} เช่น จะสั่งตัวหนังสือใน <p> ให้เป็นสีแดง p { _color: red;}

  2. Hack เฉพาะ IE7

    *+html selector { property: value;} เช่น *+html p { color: red;}

  3. Hack ทั้ง IE6 และ IE7 พร้อมกัน

    selector { *property: value;} เช่น p { *color: red;}

ข้อแนะนำ เพิ่มเติมคือ พยายามเขียน HTML ให้ถูกหลักการให้มากที่สุดก่อนเป็นอันดับแรก ให้หน้าเว็บดูดีใน บราวเซอร์ใหม่ๆ ก่อน แล้วค่อยกลับไป Hack IE6/7

Back to Top

0 Responses to เล็ก เล็ก น้อย น้อย Hack นิดหน่อยเพื่องาน เพื่อเงิน

Leave a Reply to thanee Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Back to Top