أوراق الأنماط المتتالية

لغة وصفية لأنماط صفحات الويب

صفحات التنسيق النمطية (بالإنجليزية: Cascading Style Sheets)‏ اختصارًا: سي إس إس (بالإنجليزية: CSS)‏؛ هي لغة تنسيق لصفحات الويب تهتم بشكل وتصميم المواقع، صممت خصيصا لفصل التنسيق (الألوان - الخطوط - الأزرار....) عن محتوى المستند المكتوب (بلغة مثلا لغة توصيف النص الفائق (بالإنجليزية: HTML)‏) وينطبق ذلك على الألوان والخطوط والصور والخلفيات التي تستخدم في الصفحات، بمرونة وسهولة تامة.

أوراق الأنماط المتتالية
الشعار
معلومات عامة
التصنيف
ظهرت في
17 ديسمبر 1996 عدل القيمة على Wikidata
التطوير
المطور
الإصدار الأول
17 ديسمبر 1996 عدل القيمة على Wikidata
المستودع
متفرقات
امتدادات الملفات
css عدل القيمة على Wikidata
مواقع الويب

هذه التقنية تعنى بالمظهر الكلي لصفحات مواقع الويب من ألوان وصور وغيره. ويمكن إضافته للصفحة بعدة طرق أفضلها التضمين الخارجي بكتابة شفرة السي إس إس في ملف منفصل. وقد تم تطويرها لتصل حاليا إلى سي إس إس 3 والذي أضيف إليه عدة إضافات لم تكن متاحة في الإصدار السابق وكان إنجازها يتم فقط بـجي كويري.

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

مميزات تقنية سي إس إس

عدل

تهدف تقنية سي إس إس إلى فصل محتوى الصفحات عن مظهرها بحيث يعطي عدة مكاسب:

  • جعل الصفحة أبسط وتفيد فقط ما عملت من أجله بحيث تشمل المحتوى، أما الشكل فيكون في ملف الأنماط السي إس إس.
  • جعل الصفحة قابلة للتعامل مع عدة متصفحات أو شاشات عرض مختلفة ويمكن معالجة كل جهاز (حاسوب أو حتى هاتف نقال) أو متصفح على حدة وبالتالي قابلية استخدام أكبر.
  • يمكن وضع عدة مظاهر كل مظهر يلبي حاجة كل قارئ فمثلا يمكن ضمان قابلية الاستخدام لذوي الاحتياجات الخاصة أو وضع عدة ألوان لتلبية أذواق شتى.
  • يمكن لملف الأنماط أن يتم تضمينه في عدة صفحات وبالتالي عند تغيير شكل العرض فإنك تحتاج لتعديل ملف واحد فقط وهذا يعني وقت أقل وتعديل أكبر وأشمل.

بنية شيفرات سي إس إس

عدل

تتألف هذه الشيفرة من مجموعة من القواعد (بالإنجليزية: rules)‏، والتي تتألف بدورها من مُحدِّد (بالإنجليزية: selector)‏ ثم قائمة بالخاصيات والقيم المُسنَدة إليها. فمثلًا لو أردنا تحديد جميع الفقرات (العنصر <p>) في مستند HTML وتحويل لونها إلى الأحمر (عبر الخاصية color) فسنكتب الشيفرة الآتية:


p {
  color: red;
}

شفرة السي إس إس هي مجموعة من التعريفات لكل عنصر، وبالتالي يمكن أن يكون لدينا 100 تعريف لـ 100 عنصر وهكذا

كل تعريف يبدأ باسم أو بتعريف العنصر (كـ id أو class العنصر)

فمثلا لنأخذ العنصر div

الذي يكتب بإتش تي إم إل كـ :

<div id="ar_wiki">اهلا وسهلا بالويكي العربي</div>

سنقوم بإعطاء هذا العنصر لونا أزرق، كما نرى بالأعلى أن عنصر ديف تم تعيين المعرف (id) ب‍ar_wiki وبالتالي يتم كتابته كـ #ar_wiki بصفحة الأنماط

لأن كل عنصر يتم تعريفه بـdiv يكون قبله (#) وأي عنصر يتم تعريفه بclass يكون قبله نقطة (.) عند كتابته بصفحة الأنماط.

وبالتالي يكون الشكل التالي هو التعريف لإعطاء العنصر اللون الأزرق:

#ar_wiki { color:blue; }

والتالي هو شرح الشفرة:

  • #ar_wiki: تعريف العنصر المراد تطبيق التنسيق عليه، وهو ما تم تعريف بصفحة الإتش تي إم إل لعنصر div.
  • {...} كل تنسيق يتم إحاطته بهذه الأقواس المعكوفة لتوضيح تنسيق كل عنصر على حده.
  • color: هي صفة التنسيق المراد تطبيقه على العنصر، وهنا تم وضع color أي اللون.
  • (:): توضع النقطتين الرئيسيتين لتوضح إن ما بعدها هو قيمة الصفة، وبالتالي هي فاصل بين الصفة وقيمتها.
  • blue: قيمة للصفة وهنا تم وضع القيمة blue أي الأزرق للصفة color اللون.
  • (;): يتم وضع النقطة المنقوطة بعد القيمة لإخبار المعالج أن القيمة انتهت وما سيأتي بعدها هو صفة أخرى وهكذا.

تعريف الصفة class وإضافة خواص لها

تكون هذه الخاصية لمجموعة من العناصر في الصفحة مثلاً

.myclass { color:red; font-size:20px; }
<p class="myclass">يمكن تكرار هذه الخاصية بالصفحة لعناصر متعددة</p>
<p class="myclass">هذا سطر اخر بنفس الخاصية</p>

الناتج سيكون تغير لون الفقرة إلى اللون الأحمر وضبط الخط إلى مقاس 20px

الخلفيات

عدل
الخاصية الوصف
background الخاصية background المختصرة في CSS تسمح لنا بتعديل خيارات تنسيق الخلفية كلها دفعةً واحدةً، بما في ذلك اللون أو الصورة، والمبدأ والحجم، وطريقة التكرار، وغير ذلك من الميزات.

يمكن استخدام الخاصية background لضبط قيم خاصية أو أكثر من الخاصيات الآتية: background-clip، و background-color، و background-image، و background-origin، وbackground-position، و background-repeat، و background-size، و background-attachment.

background-attachment تُحدِّد إذا كان موضع الصورة (المُحدَّدة عبر الخاصية background-image) ثابتًا (fixed) ضمن إطار العرض (viewport) أو كان سيُمرَّر عند التمرير في العنصر (أو الصفحة) الحاوي له.
background-blend-mode تصف كيف يجب أن تمتزج صور الخلفية مع بعضها بعضًا ومع لون الخلفية المُحدَّد للعنصر.
background-clip تُحدِّد كيف أين ستتوقف خلفية العنصر على حدود العنصر، سواء كانت الخلفية لونًا <color> أو صورة <image>.
background-color تضبط لون الخلفية لأحد العناصر، ويكون لون الخلفية قيمةً لونيةً <color>.
background-image تضبط صورةً أو أكثر على أنها خلفية للعنصر.
background-origin تُحدِّد مبدأ صورة الخلفية المُحدَّدة عبر الخاصية background-image.
background-position تضبط الموضع المبدئي لكل صورة خلفية، وذلك نسبةً إلى المبدأ المُعرَّف في الخاصية background-origin.
background-repeat تُعرِّف كيف ستتكرر صورة الخلفية؛ إذ يمكن أن تتكرر صورة الخلفية على المحور الأفقي، أو على المحور الرأسي، أو على كلا المحوري، ويمكن ألّا تتكرر أبدًا.
background-size تُحدِّد أبعاد صورة الخلفية للعنصر؛ ويمكن أن تُترَك الأبعاد الابتدائية للصورة، أو تُغيّر إلى أبعاد جديدة، أو يمكن ملء المساحة المتوافرة بها مع الحفاظ على نسبة الأبعاد.
box-shadow تصف تأثير الظلال على العنصر، ويمكن إضافة ظل أو أكثر باستخدام هذه الخاصية.

الإطارات

عدل

شكل الإطار

عدل
الخاصية الوصف
border الخاصية border في CSS هي خاصية مختصرة تؤدي إلى ضبط قيم الخاصيات التي تتحكم بإطار العنصر في آنٍ واحد، وهي: border-color و border-style و border-width، وكما في جميع الخاصيات المختصرة، أيّ قيمة غير مُحدِّدة سيُعاد ضبطها إلى قيمتها الابتدائية، أضف إلى ذلك أنَّ الخاصية border لا يمكن أن تُستخدَم لتحديد قيمة للخاصية border-image وإنما ستضبِط قيمتها إلى القيمة الابتدائية none.
border-bottom الخاصية border-bottom في CSS هي خاصية مختصرة تؤدي إلى ضبط قيم الخاصيات border-bottom-color و border-bottom-style و border-bottom-width، هذه الخاصيات تصف كيفية عرض الإطار border السفلي للعنصر.
border-bottom-color تُحدِّد لون الإطار السفلي الخاص بالعنصر. لاحظ أنَّه في أغلبية الحالات يُفضَّل استخدام خاصيات CSS المختصرة مثل border-color أو border-bottom.
border-bottom-style تُحدِّد شكل خط الإطار السفلي الخاص بالعنصر.
border-bottom-width تضبط عرض الإطار السفلي للعنصر.
border-color تُحدِّد لون إطار العنصر على جميع وجوهه: العلوي (border-top-color) والأيمن (border-right-color) والسفلي (border-bottom-color) والأيسر (border-left-color).
border-image تسمح برسم صورة على إطار العنصر، وهذا يجعل إنشاء عناصر لها مظهر مخصص أمرًا سهلًا. ستُستخدَم الخاصية border-image بدلًا من أشكال الإطارات التي يمكن تعريفها عبر الخاصية border-style.
border-image-outset تُحدِّد كم ستمتد صورة الإطار بعد الحافة الخارجية للإطار.
border-image-repeat تُعرِّف كيفية عرض الجزء الأوسط من صورة الإطار لكي تُطابِق أبعاد الإطار. ويمكن استخدام قيمة واحدة لهذه الخاصية لضبط سلوك جميع الحواف، أو يمكن تحديد قيمتين لضبط سلوك الحواف الأفقية والرأسية كلًا على حدة.
border-image-slice تُقسِّم الصورة المُحدَّدة عبر الخاصية border-image-source إلى تسع مناطق: الأركان الأربعة، والحواف الأربع، والوسط.
border-image-source تُعرِّف صورةً <image> لتُستخدَم بدلًا من الإطار، وإذا ضُبِطَت هذه الخاصية إلى none، فسيُستخدَم الشكل المُعرَّف في الخاصية border-style.
border-image-width تُعرِّف عرض صورة الإطار بتحديد بعدها عن حافة الإطار الخارجية، وإذا كانت قيمة الخاصية border-image-width أكبر من قيمة الخاصية border-width، فستمتد صورة الإطار إلى ما بعد حافة الحاشية (padding) أو حافة المحتوى (content).
border-left الخاصية border-left في CSS هي خاصية مختصرة تؤدي إلى ضبط قيم الخاصيات border-left-color و border-left-style و border-left-width، هذه الخاصيات تصف كيفية عرض الإطارborder الأيسر للعنصر.
border-left-color تُحدِّد لون الإطار الأيسر الخاص بالعنصر. لاحظ أنَّه في أغلبية الحالات يُفضَّل استخدام خاصيات CSS المختصرة مثل border-color أو border-left.
border-left-style تُحدِّد شكل خط الإطار الأيسر الخاص بالعنصر.
border-left-width تضبط عرض الإطار الأيسر للعنصر.
border-right الخاصية border-right في CSS هي خاصية مختصرة تؤدي إلى ضبط قيم الخاصيات border-right-color و border-right-style و border-right-width، هذه الخاصيات تصف كيفية عرض الإطار border الأيمن للعنصر.
border-right-color تُحدِّد لون الإطار الأيمن الخاص بالعنصر. لاحظ أنَّه في أغلبية الحالات يُفضَّل استخدام خاصيات CSS المختصرة مثل border-color أو border-right.
border-right-style تُحدِّد شكل خط الإطار الأيمن الخاص بالعنصر.
border-right-width تضبط عرض الإطار الأيمن للعنصر.
border-style تُحدِّد شكل خط الإطار الخاص بالعنصر لجميع وجوهه (الأيمن والأيسر والعلوي والسفلي).
border-top الخاصية border-top في CSS هي خاصية مختصرة تؤدي إلى ضبط قيم الخاصيات border-top-color و border-top-style و border-top-width، هذه الخاصيات تصف كيفية عرض الإطارborder العلوي للعنصر.
border-top-color تُحدِّد لون الإطار العلوي الخاص بالعنصر. لاحظ أنَّه في أغلبية الحالات يُفضَّل استخدام خاصيات CSS المختصرة مثل border-color أو border-top.
border-top-style تُحدِّد شكل خط الإطار العلوي الخاص بالعنصر.
border-top-width تضبط عرض الإطار العلوي للعنصر.
border-width الخاصية border-width المختصرة في CSS تضبط عرض إطار العنصر على جميع وجوهه: العلوي (border-top-width) والأيمن (border-right-width) والسفلي (border-bottom-width) والأيسر (border-left-width).

برمجته وتحريره

عدل

سي إس إس هي تقنية لتطوير الويب وكما أغلب التقنيات للويب، هذه التقنية نصية، أي أن البرامج النصية كالمفكرة في ويندوز أو جي إديت في واجهة جنوم لينكس جنو، يمكنك الكتابة بها بكل سهولة.

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

إصداراته

عدل

الإصدار العامل حاليا من تقنية سي إس إس هو الإصدار 3، الذي صمم ليتعامل مع إتش تي إم إل5

المتصفحات والدعم الخاص فيه

عدل

تدعم متصفحات ويب المواصفة بدرجات مختلفة من الكفاءة والتوافقية؛ فبينما يدعم كل من فايرفوكس ومتصفح أوبرا المواصفة بدرجة معقولة، وبالنسبة لمتصفح إنترنت إكسبلورر فيتوقع منه نسخة جديدة معدلة لتناسب وتلبي احتياجات الويب حاليا ومايكروسوفت أعلنت عند طرحها إصدارا جديدا من متصفح إنترنت إكسبلورر (IE7) مشتملا على الكثير من الإضافات التي تجعل تصفح الإنترنت أكثر أمانا، ومنها تطبيقات مضادة لبرامج التجسس (spyware) والفيروسات ومواقع الاحتيال حيث تم بالفعل إصدار النسخة السابعة من متصفح إنترنت إكسبلورر وتم بعده إصدار نسخة جديدة تحمل الرقم 8 وفي وقتٍ لاحق تم إصدار نسخة باسم مايكروسوفت إيدج تزامنا مع إصدار ويندوز 10.

مراجع

عدل

وصلات خارجية

عدل