كيف تعمل text-shadow
تطلي text-shadow نسخة من النص خلفه، مزاحة وممَوَّهة. تعطيها إزاحة أفقية، وإزاحة عمودية، وتمويهًا اختياريًا، ولونًا.
3px 3px 0 #f59e0b تعني 3px إلى اليمين (اتجاه فيزيائي، في كل اتجاهات الكتابة)، و3px إلى الأسفل، بلا تمويه، بلون كهرماني. الظل الثاني يموّه 6px ويستخدم أسود شبه شفاف، وهي الوصفة المعتادة لتأثير عمق خفيف.
الصيغة
text-shadow: <offset-x> <offset-y> <blur-radius>? <color>?;
| القيمة | مطلوبة | المعنى |
|---|---|---|
| offset-x | نعم | القيمة الموجبة تحرك الظل إلى اليمين، والسالبة إلى اليسار (اتجاه فيزيائي) |
| offset-y | نعم | الموجبة تحركه إلى الأسفل، والسالبة إلى الأعلى |
| blur-radius | لا (الافتراضي 0) | مدى نعومة الحافة؛ القيم السالبة غير صالحة |
| color | لا (الافتراضي لون النص) | يمكن أن يأتي أولًا أو أخيرًا |
تزيل text-shadow: none ظلًا موروثًا. غيّر القيم أدناه لترى تأثير كل منها:
جرّب -4px -4px 0 #16a34a و0 0 10px red وظلين تفصل بينهما فاصلة.
ظلال متعددة: التوهج والحدود والأبعاد الثلاثة
الفواصل تكدّس الظلال؛ والأول يُرسم في الأعلى. ثلاثة تأثيرات تأتي من هذه القاعدة الواحدة:
- التوهج: إزاحات صفرية، وتمويه متزايد، على خلفية داكنة.
- الحدود: أربعة ظلال حادة، واحد لكل قطر. تنفع للحدود الرفيعة؛ ولحد أسمك ومتساوٍ ترسم
-webkit-text-stroke: 2px #111827(مدعومة في كل المتصفحات الحالية رغم البادئة) خطًا على حواف الحروف بدلًا من ذلك. - الأبعاد الثلاثة: سلسلة من الظلال الحادة كل منها أبعد بـ 1px، فتبدو الحروف بارزة.
إبقاء النص مقروءًا فوق خلفية مزدحمة
النص الأبيض فوق صورة أو نقش يفقد حوافه حيث تكون الخلفية فاتحة. ظل داكن ناعم يعيدها من دون صندوق مرئي:
الظل يساعد، لكنه لا يضمن التباين. للنص الطويل فوق صورة، أضف أيضًا طبقة صلبة أو متدرجة خلف النص.
الفرق بين text-shadow وbox-shadow
| text-shadow | box-shadow | |
|---|---|---|
| يتبع | أشكال الحروف | صندوق العنصر (ونصف قطر زواياه) |
| قيمة الانتشار | لا | نعم |
inset | لا | نعم |
| متعددة مفصولة بفواصل | نعم | نعم |
للظلال على البطاقات والأزرار، راجع box-shadow.
أخطاء شائعة
- ظلال ثقيلة داكنة على نص الجسم. تطمس أشكال الحروف. اترك الظلال للعناوين والتسميات القصيرة.
- نسيان الإزاحة الثانية.
text-shadow: 2px #000غير صالحة؛ الإزاحتان مطلوبتان. - تمويه سالب. غير صالح ويُسقط التصريح كله.
- توقع أن يشغل الظل مساحة. يُطلى فقط؛ الظلال الكبيرة قد تتداخل مع السطر التالي أو تُقص بـ
overflow: hidden. - تأثيرات التوهج على خلفيات فاتحة. التوهج الفاتح على الأبيض غير مرئي. التوهج يحتاج إلى خلفية داكنة.
الأسئلة الشائعة
ما صيغة text-shadow؟
text-shadow: offset-x offset-y blur-radius color;، مثلًا text-shadow: 2px 2px 4px rgb(0 0 0 / 40%);. الإزاحتان مطلوبتان؛ والتمويه افتراضيًا 0، واللون افتراضيًا لون النص.
كيف أضيف أكثر من ظل للنص؟
افصل بين الظلال بفواصل: text-shadow: 0 0 4px #fff, 0 0 12px #2563eb;. يُرسم الظل الأول فوق الظلال التي تليه.
كيف أصنع تأثير توهج على النص؟
استخدم ظلالًا بلا إزاحة مع تمويه، وغالبًا عدة ظلال بتمويه متزايد: text-shadow: 0 0 4px #60a5fa, 0 0 12px #2563eb;. على خلفية داكنة يبدو كتوهج نيون.
هل لـ text-shadow قيمة انتشار spread مثل box-shadow؟
لا. لا يوجد في text-shadow انتشار ولا الكلمة المفتاحية inset. لتسميك الظل حول الحروف، كدّس عدة ظلال أو استخدم -webkit-text-stroke لحد خارجي.
هل تؤثر text-shadow على التخطيط؟
لا. الظل يُطلى فقط؛ لا يشغل مساحة ولا يحرّك المحتوى المحيط، لذلك قد يتداخل الظل الكبير مع العناصر المجاورة.