فك رموز Hex RGBA لمرشحات MS في CSS
-
26-09-2019 - |
سؤال
أنا أكتب أنماطًا لصفحة أرغب في استخدام ألوان RGBA على خلفية بعض عناصر القائمة. لقد استخدمت خاصية خلفية CSS جنبًا إلى جنب مع RGBA (146،138،118 ، .4) لتحديد لون خلفيتي الشفافة.
الآن أحاول تغطية قواعداتي بدعم IE باستخدام تقنية مرشح MS كما هو موضح في هذه المقالة. (انظر العنوان "... و RGBA للجميع.")
من الواضح أن المشكلة هي أن المرشح MS يتطلب منك استخدام نوع من الهجين بين RGBA و HEX حيث تتم ترجمة قيمة شفافية ألفا إلى رقم بين 00 و FF. يرى صفحة الوصف هذه من Microsoft للإشارة.
لذا فإن المشكلة هي أنه لا يمكنني معرفة كيف على الأرض لتحويل قيمتي بشكل صحيح من RGBA إلى تلك الطريقة الهجينة HEX/RGBA. هل يمكن لأي شخص أن يوجهني إلى بعض المواد المرجعية الجيدة على هذا؟ من فضلك لا تعطيني القيمة الصحيحة فقط - هذا لا يفيدني خارج هذا اللون. أحتاج إلى فهم كيف وراء ذلك ، شكرًا.
المحلول
ترجمة rgba
ألفا إلى تنسيق مرشح التدرج بسيط للغاية. إنه رسم خرائط من الفاصل الزمني [0, 1]
إلى الفاصل الزمني [0, 255]
, ، ممثلة في السداسية. للقيام بالتحويل ، ثم ، فقط اضرب 255
وتحويل إلى سداسية عشرية. على سبيل المثال ، العتامة في rgba(rr, gg, bb, 0.5)
ينتهي الأمر 7F
(أو 80
, ، إذا كنت تتجول):
0.5 * 255 = 127.5 (base 10)
127 (base 10) = 7F (base 16)
أفترض أنك لا تسأل عن كيفية التحويل بين القاعدة 10 والقاعدة 16.