มันเป็นสิ่งที่หลงเหลือมาจากสมัย Netscape
ตัวเลขที่หายไปจะถือเป็น 0 [... ] ตัวเลขที่ไม่ถูกต้องนั้นถูกตีความเพียงแค่ 0 เช่นค่า # F0F0F0, F0F0F0, F0F0F, #FxFxFx และ FxFxFx เหมือนกันทั้งหมด
มันมาจากการโพสต์ในบล็อกพูดจาโผงผางเล็กน้อยเกี่ยวกับการแยกวิเคราะห์สีของ Microsoft Internet Explorerซึ่งครอบคลุมในรายละเอียดที่ดีรวมถึงความยาวที่แตกต่างกันของค่าสี ฯลฯ
หากเราใช้กฎนี้ในการโพสต์บล็อกเราจะได้รับสิ่งต่อไปนี้:
แทนที่อักขระเลขฐานสิบหกที่ไม่ใช่ค่าทั้งหมดด้วย 0
chucknorris becomes c00c0000000
ใช้จำนวนตัวอักษรทั้งหมดหารด้วย 3 (11 -> 12)
c00c 0000 0000
แบ่งออกเป็นสามกลุ่มเท่า ๆ กันโดยแต่ละองค์ประกอบจะเป็นตัวแทนขององค์ประกอบสีที่สอดคล้องกันของสี RGB:
RGB (c00c, 0000, 0000)
ตัดอาร์กิวเมนต์แต่ละตัวจากด้านขวาลงไปที่อักขระสองตัว
ซึ่งให้ผลลัพธ์ดังต่อไปนี้:
RGB (c0, 00, 00) = #C00000 or RGB(192, 0, 0)
นี่คือตัวอย่างที่แสดงให้เห็นถึงbgcolor
คุณสมบัติในการดำเนินการเพื่อสร้างแถบสี "น่าอัศจรรย์" นี้:
<table>
<tr>
<td bgcolor="chucknorris" cellpadding="8" width="100" align="center">chuck norris</td>
<td bgcolor="mrt" cellpadding="8" width="100" align="center" style="color:#ffffff">Mr T</td>
<td bgcolor="ninjaturtle" cellpadding="8" width="100" align="center" style="color:#ffffff">ninjaturtle</td>
</tr>
<tr>
<td bgcolor="sick" cellpadding="8" width="100" align="center">sick</td>
<td bgcolor="crap" cellpadding="8" width="100" align="center">crap</td>
<td bgcolor="grass" cellpadding="8" width="100" align="center">grass</td>
</tr>
</table>
สิ่งนี้จะตอบอีกส่วนหนึ่งของคำถาม ทำไมจึงbgcolor="chucknorr"
ผลิตสีเหลือง ถ้าเราใช้กฎสตริงคือ:
c00c00000 => c00 c00 000 => c0 c0 00 [RGB(192, 192, 0)]
ซึ่งให้สีทองสีเหลืองอ่อน เมื่อสตริงเริ่มต้นด้วยอักขระ 9 ตัวเราจะเก็บค่า C ตัวที่สองในเวลานี้เพื่อให้ค่าสีสุดท้าย
ฉันพบสิ่งนี้ครั้งแรกเมื่อมีคนชี้ให้เห็นว่าคุณสามารถทำได้color="crap"
และมันก็ออกมาสีน้ำตาล
bgcolor
ไม่ได้ใช้ ใช้background
CSS