ทำไม DarkGray เบากว่าสีเทา


182

ความอยากรู้อยากเห็นแบบเรียบง่ายที่นี่แต่งแต้มด้วยความกังวลในทางปฏิบัติเพราะฉันถูกจับในเรื่องนี้เป็นครั้งคราว

ทำไมColor.DarkGrayจะเบากว่าColor.Gray?


16
เมื่อคุณต้องการ DarkGray ให้เลือก DimGray :)
leppie

มันเป็นความจริง. สิ่งที่เรียกว่าGrayคือ0x80 (× RGB) กับDimGray(หรือควรเป็น "สีเทา") ที่0x69 (× RGB)
Glenn Slayden

2
ฟังดูเหมือนพื้นที่สีเทาสำหรับฉัน ;)
Neil B

คำตอบ:


231

Wikipedia มีข้อมูลบางอย่างเกี่ยวกับเรื่องนี้ ดูเหมือนว่าคำจำกัดความของสีที่มีชื่อมาจากระบบ Windows X บน X "สีเทา" นั้นใกล้เคียงกับ "เงิน" มากขึ้น อย่างไรก็ตาม W3C กำหนดสีเทา (เหมาะสมกว่า?) เป็น RGB 50%

นี่คือWikipedia เพิ่มเติมในหัวข้อ:

บางทีสีที่ผิดปกติที่สุดของการปะทะกันระหว่าง X11 และ W3C คือกรณีของ "สีเทา" และตัวแปร ใน HTML "สีเทา" ถูกสงวนไว้เป็นพิเศษสำหรับ 128 triplet (50% สีเทา) อย่างไรก็ตามใน X11, "สีเทา" ได้รับมอบหมายให้ 190 triplet (74.5%) ซึ่งอยู่ใกล้กับ W3C "เงิน" ที่ 192 (75.3%) และมี "สีเทาอ่อน" ที่ 211 (83%) และ "สีเทาเข้ม" "ที่ 169 (66%) คู่หู ด้วยเหตุนี้รายการสี CSS 3.0 แบบรวมที่เหนือกว่าบนเว็บในปัจจุบันสร้าง "Dark Grey" เป็นโทนสีที่เบากว่า "Gray" ธรรมดาอย่างชัดเจนเพราะ "Dark Gray" นั้นสืบทอดมาจาก X11 - เนื่องจากไม่มีอยู่ใน HTML หรือ CSS ระดับ 1 - ในขณะที่ "สีเทา" สืบทอดมาจาก HTML แม้ในร่างปัจจุบันสำหรับ CSS 4.0 สีเทาเข้มยังคงเป็นสีอ่อนกว่าสีเทา

คำหลักสี W3C :

DimGray    '#696969'  (105,105,105)  
Gray       '#808080'  (128,128,128)
DarkGray   '#A9A9A9'  (169,169,169)  //equal to X11 DarkGray
Silver     '#C0C0C0'  (192,192,192)  //close to X11 Gray (190,190,190)
LightGray  '#D3D3D3'  (211,211,211)  //equal to X11 LightGray
Gainsboro  '#DCDCDC'  (220,220,220)

"สีเทา" ไม่ใช่ 127,127,127 มันคือ 128,128,128 อาจจะอัปเดตคำพูดของ Wikipedia?
ผู้ใช้

เคล็ดลับง่ายๆที่ฉันมักจะใช้เมื่อฉันไม่สามารถหาเฉดสีที่เหมาะสมคือการใช้: # 222 (มืดมาก) # 333 (มืด) # 444 (กลาง) ฯลฯ ฉันคิดว่ามันเกือบจะเป็นที่น่าสงสัย 1, 2, 3
เดวิด

1
ฮาร์ดแวร์ดิสเพลย์นั้นแตกต่างกันในสมัยโบราณวันที่พวกเขาเลือก "สีเทา" และใช้เงินเป็นจำนวนมาก SGI เป็นกำลังสำคัญหลังจากนั้นหน้าจอของพวกเขาได้รับการแก้ไขแกมม่า ฮาร์ดแวร์ระดับผู้บริโภคในปัจจุบันไม่ใช่นั่นคือสาเหตุที่ # 808080 ดูมืดมาก การเชื่อมโยงวิกิพีเดียบังคับ
Hans Passant

แต่ถ้าdarkgrayจะมีสีเข้มsilverทำไมไม่ได้รับการตั้งชื่อว่าdarksilver?
Rémi


9

ฉันต้องการพูดถึงการสนทนาของ Tim Sneathเกี่ยวกับเรื่องนั้น

สีเหล่านี้ไม่ได้เกิดขึ้นจริงใน HTML` - พวกเขายังคงย้อนกลับไปมากกว่าระบบ X Window ที่มาจากระบบ UNIXข้อกำหนด HTML กำหนดสีที่ระบุชื่อสิบหกสีซึ่งแมปลงบนสีพื้นฐานสิบหกสีที่มีอยู่ในจานสี EGA แต่เบราว์เซอร์ที่เก่าที่สุดเช่นโมเสกยังรองรับ X11 ที่มีสีอื่น ๆ ตามสีที่กำหนดใน X ของสีที่มีชื่อสิบหกสีนั้นมีค่าเทียบเท่า X11 ที่แตกต่างกันตัวอย่างเช่นสีเขียวแสดงด้วย X11 ในสีนี้ในขณะที่ HTML จะแสดงด้วยสีนี้ ผลลัพธ์ที่โชคร้ายคือเกรย์ถูกกำหนดให้เป็น # 808080 ใน HTML แต่ DarkGray จะแสดงเป็น # A9A9A9 ซึ่งหมายความว่าพวกมันผิดไปหมด เนื่องจาก WPF อนุญาตให้ใช้สีที่มีชื่อเดียวกันกับ HTML เพื่อความเข้ากันได้ผลลัพธ์จึงเป็นสิ่งที่แปลกประหลาดเหมือนกัน

นั่นเป็นเหตุผลที่ผู้เขียนกล่าวว่าควรใช้ hex หรือscRGBเพื่อแสดงสี

คำแนะนำของฉันโดยทั่วไปคือใช้การแสดงสีhex หรือscRGBทุกที่ที่เป็นไปได้หรือคุณอาจประหลาดใจกับสีที่คุณเลือกไม่ตรงกับความคาดหวังของคุณ!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.