css hack IE6 !!!
การ hack ในที่นี้ ไม่ได้หมายถึงว่า เราจะไปเจาะระบบ หรือจะไปทำให้ใครเดือดร้อน
แต่จากที่เราได้รู้กันมาว่า การแสดงผลหน้าเว็บเพจ ของเบราเซอร์แต่ละตัวนั้นต่างกัน ก็เนื่องมาจาก มีการอ่านโค้ดที่ต่างกัน ดังนั้นเราจะอาศัยช่องโหว่ตรงนี้เขียนโค้ด เพื่อควบคุมให้เบราเซอร์แต่ละตัว อ่านค่าตามที่เราต้องการ การ hack นั้น มีหลายรูปแบบ โดยจะค่อยๆแนะนำไปทีละรูปแบบนะครับ
-ขอเริ่มจากรูปแบบที่ผมใช้บ่อยที่สุดละกันนะครับ ก่อนอื่นทบทวนกันสักเล็กน้อย ทุกคนคงทราบแล้วว่า css นั้น อ่านค่าจากบรรทัดบนลงล่าง ถ้าเราเขียนว่า
<style type=”text/css”>
body{
background:green;
background:red;
}
</style>
แบบนี้ บรรทัดที่อยู่ล่างสุดก็จะถูกอ่านที่หลัง ทำให้ เว็บเพจนี้มีพื้นหลังสีแดง และจากที่เรารู้มาว่า
!important นั้น จะมีความสำคัญสูงสุดแม้อยู่ตำแหน่งไหนก็ตาม (หากใครยังไม่ทราบอ่านได้ที่นี่) ถ้าเราเขียนว่า
<style type=”text/css”>
body{
background:green!important;
background:red;
}
</style>
คุณคิดว่า จากโค้ด css นี้ จะทำให้เว็บเพจ มีพื้นหลังสีอะไร??? ![]()
น่าแปลกที่ IE6 นั้น จะมีเป็น สีแดง แต่เบราเซอร์อื่น ไม่ว่าจะเป็น IE7 Fx1.5,2.0 Netscpae Opera จะได้พื้นหลังสีเขียว
เพราะว่า IE6 อ่านบรรทัดล่าง ส่วน เบราเซอร์อื่นอ่านบรรทัดบน ดังนั้นเมื่อเรารู้แล้ว่า IE6 มีข้อผิดพลาดแบบนี้ ถ้าใครประสบปัญหา หน้าเว็บแสดงไม่เหมือนกันใน Fx และ IE6 ก็ลองนำวิธีนี้ไปใช้ดู โดยคุณสามารถกำหนดค่าให้ต่างกันได้






wan said,
August 15, 2007 @ 1:55 pm
เพิ่งเข้าใจก็คราวนี้เอง

ขอบคุณมากๆๆๆค่า
เอ said,
July 7, 2008 @ 10:49 am
ขอบคุณมากมายเลยค่ะ

