Hexts สามเท่าเช่น#ffffff(สีขาว) หรือ#3764ef(สีน้ำเงิน) มักใช้เพื่อแสดงสี RGB พวกเขาประกอบด้วย#ตามด้วยเลขฐานสิบหกหกหลัก (0-f) หรือบางครั้งตัวเลขสามหลักที่สีจริงจะได้รับโดยสองเท่าแต่ละหลัก ยกตัวอย่างเช่น#fffเป็น#ffffffและเป็น#1a8#11aa88
น่าเศร้าที่จดชวเลขสามหลักคือ golfiest อินเทอร์เน็ตมีการเสนอจนถึงขณะนี้
เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้สตริง 1 ถึง 7 ตัวอักษร:
#ตัวอักษรตัวแรกจะเป็น- ตัวละครอื่น ๆ
0123456789abcdefจะเป็นตัวเลขฐานสิบหก:
อินพุตเป็นรูปแบบชวเลขของ hex triplet (หรือแบบเต็มหากกำหนดอักขระ 7 ตัว) คุณจำเป็นต้องแสดงเอาต์พุต triplet hex แบบเต็มที่ขยายชวเลขอินพุตโดยยึดตามรูปแบบเหล่านี้:
Input -> Output
# -> #000000 (black)
#U -> #UUUUUU
#UV -> #UVUVUV
#UVW -> #UUVVWW (usual 3-digit shorthand)
#UVWX -> #UXVXWX
#UVWXY -> #UVWXYY
#UVWXYZ -> #UVWXYZ (not shorthand)
แต่ละU, V, W, X, YและZอาจจะเป็นเลขฐานสิบหกหลักใด ๆ เอาต์พุตจะมี 7 ตัวอักษรเสมอ
ตัวอย่างเช่น:
Input -> Output
# -> #000000
#0 -> #000000
#4 -> #444444
#f -> #ffffff
#a1 -> #a1a1a1
#0f -> #0f0f0f
#99 -> #999999
#1a8 -> #11aa88
#223 -> #222233
#fff -> #ffffff
#1230 -> #102030
#d767 -> #d77767
#bbb5 -> #b5b5b5
#aabbc -> #aabbcc
#00000 -> #000000
#3764e -> #3764ee
#3764ef -> #3764ef
#123456 -> #123456
#f8f8f8 -> #f8f8f8
หมายเหตุ
อินพุตจะเริ่มต้นด้วย
#และจะต้องมีเอาต์พุตคุณอาจจะถือว่าตัวอักษรทั้งหมดเป็นตัวพิมพ์เล็ก (
abcdef) หรือตัวพิมพ์ใหญ่ (ABCDEF) ตามที่คุณต้องการตัวอักษรในผลลัพธ์อาจเป็นได้ทั้งสองกรณีตามที่คุณต้องการ คุณสามารถผสมเคสได้
อัลฟ่า / ความโปร่งใสไม่ได้รับการจัดการที่นี่ (แม้ว่าจะมีรุ่น RGBA สีฐานสิบหก)
รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ
#UVWXY -> #UVWXYYรายการเพราะอนุญาตให้มีการแสดงค่าเดียวสำหรับช่องสีฟ้า แต่ไม่มีการแสดงออกที่คล้ายกันสำหรับสีแดงและสีเขียว (เช่นถ้าฉันต้องการ#889071ฉันไม่สามารถย่อ แต่#907188สามารถ ... ตาม#90718) คนอื่น ๆ ทำงานได้ดีมาก
#UVWX -> #UXVXWXที่หนึ่งและ มันเป็นเช่นนั้นไม่สอดคล้องกันและพฤติกรรมพลว่ามันเป็นเรื่องยากที่จะเชื่อว่ามีไม่ได้เป็นคู่ของเบราว์เซอร์ที่เป็นจริงในปัจจุบันใช้มัน
#RGBAและ#RRGGBBAAดังนั้น # 1234 ควรอ่านเป็นrgba(17, 34, 51, 0.25)