Menu
flag Ar iconالعربيةdown icon

Inline CSS: السمة style و3 طرق لإضافة CSS

تضع Inline CSS التصريحات مباشرة على العنصر عبر السمة style. تعلّم الصيغة، ومتى تكون الأنماط المضمّنة الخيار الصحيح، وكيف تتغلب على ملفات الأنماط، وكيف تقارن بـ CSS الداخلية والخارجية.

تحتوي هذه الصفحة على محررات قابلة للتشغيل - حرّر، شغّل، وشاهد النتيجة فوراً.

ما هي Inline CSS

Inline CSS هي CSS تُكتب مباشرة على عنصر HTML عبر السمة style. قيمتها قائمة من التصريحات بالشكل property: value;، وتنطبق على ذلك العنصر فقط.

لا يوجد محدد ولا أقواس معقوصة: العنصر الذي يحمل السمة هو الهدف. افصل بين التصريحات بفواصل منقوطة. الفاصلة المنقوطة الأخيرة اختيارية، لكن إبقاءها يجعل إضافة التصريح التالي آمنة.

الصيغة

<element style="property: value; property: value;">
الجزءمثالملاحظات
السمةstyle="..."سمة عامة: مسموحة على كل عناصر HTML
التصريحcolor: #2563eb;الصيغة نفسها داخل قاعدة في ملف الأنماط
عدة تصريحاتpadding: 8px; border: 1px solid #e5e7eb;يُفصل بينها بـ ;
علامات تنصيص داخليةstyle="font-family: 'Courier New', monospace;"استخدم علامات تنصيص مفردة داخل السمة المحاطة بعلامات مزدوجة

كل ما ليس تصريحًا غير مسموح. لا مكان لـ :hover و::before و@media والمحددات في السمة style.

الطرق الثلاث لإضافة CSS إلى HTML

تصل CSS إلى الصفحة بثلاث طرق. تشرح هذه الصفحة الطريقة الأولى، ولـ CSS الخارجية والداخلية صفحتها الخاصة.

الطريقةأين توجد CSSالنطاقالاستخدام المعتاد
المضمّنة (Inline)السمة style على عنصر واحدذلك العنصرقيم فردية، وقيم يضعها JavaScript
الداخلية (Internal)عنصر <style> في الصفحةتلك الصفحةعروض صفحة واحدة، قوالب البريد الإلكتروني، CSS الحرجة
الخارجية (External)ملف .css مربوط عبر <link>كل صفحة تربطهتنسيق موقع كامل

الفقرة نفسها منسقة بالطرق الثلاث (الملف الخارجي معروض كتعليق، لأن المعاينة لا تملك ملفًا ثانيًا لتحميله):

تحتفظ الفقرة الثالثة بالحشو ونصف قطر الزوايا من القاعدة .note وتستبدل الخلفية فقط، لأن النمط المضمّن يضبط تلك الخاصية وحدها.

لماذا تفوز الأنماط المضمّنة

حين تضبط قاعدة في ملف الأنماط ونمط مضمّن الخاصية نفسها، يفوز النمط المضمّن. لا يهم مدى خصوصية المحدد: حتى محدد المعرّف ID يخسر.

الاستثناء الوحيد هو !important. التصريح في ملف الأنماط الموسوم بـ !important يتغلب على التصريح المضمّن العادي، و!important المضمّنة تتغلب على الاثنين. لهذا السبب تجعل الأنماط المضمّنة صيانة الموقع صعبة: لتغييرها من ملف الأنماط تحتاج إلى !important، وهذا يبدأ سباقًا تصاعديًا. تشرح صفحة !important الترتيب الكامل.

متى تكون Inline CSS الأداة الصحيحة

تناسب الأنماط المضمّنة الحالات التي تكون فيها القيمة بيانات لا تصميمًا: تتغير من عنصر لآخر ويكتبها قالب أو JavaScript.

المظهر (الألوان، الارتفاع، نصف قطر الزوايا) موجود في ملف الأنماط. العرض وحده، الذي يختلف من شريط لآخر، مضمّن. يكتب JavaScript السمة نفسها عبر element.style:

بعد النقر يصبح HTML الفقرة style="color: rgb(245, 158, 11); font-weight: bold;". أسماء الخصائص التي تحتوي على شرطة تصبح بصيغة camelCase في JavaScript (font-weight تصبح fontWeight).

غالبًا ما يكون متغير CSS الحل الوسط الأنظف: اضبط المتغير وحده مضمّنًا، style="--progress: 35%"، ودع ملف الأنماط يستخدمه. راجع متغيرات CSS.

أين تقصر Inline CSS

  • لا حالات ولا عناصر زائفة. لا يمكنك كتابة :hover أو :focus أو ::before في السمة style.
  • لا استعلامات وسائط. العرض المضمّن لا يمكن أن يتغير على الهاتف.
  • التكرار. عشرة أزرار بالنمط المضمّن نفسه تعني عشرة أماكن للتعديل.
  • صعوبة التجاوز. وحدها !important في ملف الأنماط تتغلب عليها.
  • سياسة أمان المحتوى (CSP). سياسة CSP صارمة من دون 'unsafe-inline' في style-src تحجب سمات style المكتوبة في HTML.

أخطاء شائعة

  • كتابة محدد أو أقواس داخل style. يُتجاهل style="p { color: red }". التصريحات وحدها مكانها هناك.
  • استخدام = بدل :. الصواب color: red، لا color=red.
  • تداخل علامات التنصيص المزدوجة. style="font-family: "Arial"" ينهي السمة مبكرًا. استخدم علامات مفردة في الداخل.
  • نسيان الوحدات. يُتجاهل style="width: 200"؛ اكتب 200px. الطول 0 هو الوحيد الذي يمكن حذف وحدته.
  • تنسيق موقع كامل بأنماط مضمّنة. انقل الأنماط المتكررة إلى فئة في ملف الأنماط، واترك الأنماط المضمّنة للقيم الخاصة بكل عنصر.

الأسئلة الشائعة

ما هي Inline CSS؟

Inline CSS هي CSS مكتوبة في السمة style للعنصر، مثل <p style="color: red;">. تنطبق التصريحات على ذلك العنصر وحده، ومن دون أي محدد.

ما الطرق الثلاث لإضافة CSS إلى HTML؟

المضمّنة (inline) عبر السمة style على العنصر؛ والداخلية (internal) عبر عنصر <style> في الصفحة؛ والخارجية (external) عبر ملف .css منفصل يُربط بـ <link rel="stylesheet" href="styles.css"> داخل <head>. الملفات الخارجية هي الخيار المعتاد لموقع كامل.

هل تتغلب Inline CSS على CSS الخارجية؟

نعم، في معظم الحالات. التصريح في السمة style يتغلب على أي محدد في ملف الأنماط مهما كانت خصوصيته. الطريقة الوحيدة كي يفوز ملف الأنماط هي !important، و!important المضمّنة تتغلب على ذلك أيضًا.

هل استخدام Inline CSS ممارسة سيئة؟

لتنسيق موقع كامل، نعم: تكرر نفسها، ولا تدعم :hover ولا استعلامات الوسائط، ويصعب تجاوزها. لكنها مناسبة للقيم الفردية التي يضعها JavaScript أو قالب، مثل عرض شريط التقدم أو لون يختاره المستخدم.

هل يمكن استخدام hover في Inline CSS؟

لا. السمة style تقبل التصريحات فقط، فلا يمكن كتابة الفئات الزائفة مثل :hover ولا العناصر الزائفة مثل ::before ولا قواعد @media فيها. ضعها في عنصر <style> أو في ملف أنماط.

Coddy programming languages illustration

تعلّم البرمجة مع Coddy

ابدأ الآن