يمكنك دمج العديد من خصائص CSS ذات الصلة في خاصية واحدة لتوفير الوقت والجهد.
خذ بعين الاعتبار القاعدة التالية للهوامش (تعمل اختصارات الحشو والحدود بنفس الطريقة):
div.foo (الهامش العلوي: 1em؛ الهامش الأيمن: 1.5em؛ الهامش السفلي: 2em؛ الهامش الأيسر: 2.5em؛)
يمكن كتابة هذه القاعدة بإيجاز أكثر:
div.foo ( الهامش: 1em 1.5em 2em 2.5em; )
يمكن أن تحتوي القيمة المختصرة على أقل من أربعة معانٍ، وفقًا للقائمة أدناه. يتم ترتيب النتائج حسب عدد القيم المقدمة:
اختصارات الحدود لمختلف الخصائص |
ومن الجدير بالذكر أيضًا أنه يمكنك أيضًا تعيين قيم خاصية الحدود لحد واحد فقط من عنصر مثل هذا: عرض الحدود اليسرى: 2 بكسل؛ نمط الحدود اليسرى: صلب؛ لون الحدود اليسرى: أسود؛ |
اختصارات لبعض خصائص الهوامش والحشو والحدود | كل هذا يعمل بنفس الطريقة الموضحة أعلاه في قسم "الاختيار بين خاصية واحدة وقيمة مختصرة". |
اختصارات الخطوط | باستخدام سطر اختصار واحد، يمكنك تحديد حجم الخط ووزنه ونمطه وعائلته وارتفاع الخط. على سبيل المثال، خذ بعين الاعتبار الكود التالي: حجم الخط: 1.5em؛ ارتفاع الخط: 200%؛ وزن الخط: غامق؛ نمط الخط: مائل؛ عائلة الخط: جورجيا، "Times New Roman"، serif يمكنك تحديد كل هذا بالسطر التالي:الخط: 1.5em/200% غامق ومائل Georgia،"Times New Roman"،serif؛ |
اختصار للخلفية | باستخدام سطر واحد من CSS، يمكنك تحديد لون الخلفية وصورة الخلفية وتكرار الصورة وموضع الصورة. لنأخذ الكود التالي: لون الخلفية: #000؛ صورة الخلفية: url(image.gif); تكرار الخلفية: عدم التكرار؛ موضع الخلفية: أعلى اليسار؛ ويمكن تمثيل ذلك باستخدام الاختصار التالي:الخلفية:#000 url(image.gif) بدون تكرار أعلى اليسار؛ |
اختصارات للقوائم | في هذه الحالة، قصة مماثلة مع خصائص القوائميسمح لك بتعيين قيم الخصائص لنوع علامة القائمة وموضعها وصورةها على سطر واحد. لنأخذ الكود التالي: نوع نمط القائمة: دائرة؛ قائمة نمط الموقف: داخل؛ صورة نمط القائمة: url(bullet.gif) ؛ وهذا يعادل ما يلي:نمط القائمة: دائرة داخل url(bullet.gif); |
هناك ثلاث طرق لتطبيق CSS على مستند HTML:
يمكنك تطبيق ورقة أنماط على عنصر باستخدام سمة النمط كما يلي:
داخل هذه السمة، يتم سرد جميع خصائص CSS وقيمها.
تتمثل ميزة الأنماط المضمنة في أن المتصفح سيضطر إلى استخدام هذه الإعدادات. كافة الأنماط الأخرى المحددة في أوراق أنماط أخرى، أو حتى متداخلة بداخلها عنوان الوثيقة، سيتم تجاوزها بواسطة هذه الأنماط.
المشكلة الكبيرة في الأنماط المضمنة هي أنها تجعل الحفاظ على الأنماط أكثر صعوبة. يهدف استخدام CSS إلى فصل عرض المستند عن بنيته، ولكن الأنماط المضمنة تفعل العكس تمامًا - قواعد العرض المنتشرة في جميع أنحاء المستند.
بصرف النظر عن مشكلات الصيانة، فلن تحصل على أي فائدة من الجزء الأساسي في CSS: التتالي.
يتم وضع أوراق الأنماط المتداخلة في رأس المستند داخل عنصر النمط، كما في صفحة المثال التالية:
تتمثل ميزة أوراق الأنماط المتداخلة في أنك لا تحتاج إلى إضافة سمة نمط إلى كل فقرة - حيث يمكنك تصميمها جميعًا باستخدام تعريف واحد. وهذا يعني أيضًا أنه إذا كنت بحاجة إلى تغيير مظهر جميع الفقرات، فيمكن القيام بذلك في مكان واحد، ولكن كل هذا يقتصر على مستند واحد.
أوراق الأنماط الخارجية تعني وضع جميع تعريفات CSS في ملف منفصل، وحفظه بامتداد ملف CSS، ثم تطبيقه على مستندات HTML باستخدام العنصر وصلةفي عنوان الوثيقة. على سبيل المثال:
تسمح لك أوراق الأنماط الخارجية بتخزين كافة تعريفات التصميم في ملف واحد. وهذا يعني أنه يمكنك إجراء تغييرات على موقعك بالكامل عن طريق تغيير ملف واحد فقط. يمكن لمتصفح الويب بعد ذلك تنزيله مرة واحدة ثم تخزينه مؤقتًا لجميع المستندات الأخرى التي تشير إليه، مما يقلل من كمية المعلومات التي يقوم بتنزيلها.
هناك طريقة أخرى لاستيراد أوراق الأنماط الخارجية إلى ملفات HTML - عبارة @import. ويتم إدراجه في ورقة الأنماط المتداخلة، بنفس طريقة كود CSS المتداخل الموضح أعلاه. بناء الجملة هو كما يلي:
المفهومان الأساسيان لـ CSS هما ميراثو المتتالية. ميراثيشير إلى الطريقة التي يرث بها عنصر في ترميز HTML خصائص عناصره الأصلية (التي تحتوي عليه) ويمررها إلى أحفاده، بينما المتتاليةيتعامل مع إعلانات CSS التي يتم تطبيقها على المستند، وكيف تتجاوز القواعد المتعارضة بعضها البعض.
ميراثفي CSS، هي آلية يتم من خلالها تمرير خصائص معينة من عنصر سلف إلى العناصر التابعة له.
باستخدام الوراثة، يمكنك، على سبيل المثال، تحديد خصائص الخط لعناصر html أو النص، وسيتم توريثها لجميع العناصر الأخرى. يمكنك تحديد ألوان الخلفية والأمامية لعنصر حاوية معين، وسيتم توريث اللون الأمامي تلقائيًا للعناصر التابعة في تلك الحاوية.
كل عنصر في مستند HTML سوف يرث كافة الخصائص القابلة للتوريث من سلفه، باستثناء العنصر الجذر (html)، الذي ليس له سلف.
المتتاليةهي آلية تتحكم في النتيجة النهائية عند تطبيق عدة إعلانات CSS متعارضة على نفس العنصر. هناك ثلاثة مفاهيم رئيسية تتحكم في الترتيب الذي يتم به تطبيق إعلانات CSS:
أهميةهو الأكثر أهمية. إذا كان هناك إعلانان لهما نفس الأهمية، فإن خصوصية القواعد تحدد أيهما سيتم تطبيقه. إذا كانت القواعد لها نفس الخصوصية، فإن ترتيب الكود المصدري يتحكم في النتيجة.
أهميةيعتمد إعلان CSS على المكان الذي تم تعريفه فيه. سيتم تطبيق الإعلانات المتعارضة بالترتيب التالي، مع تجاوز الإعلانات اللاحقة للإعلانات السابقة:
أنماط وكيل المستخدمهي ورقة الأنماط المضمنة في المتصفح. يحتوي كل متصفح على قواعده الافتراضية الخاصة التي تحدد كيفية عرض عناصر HTML المتنوعة إذا لم يتم تحديد أي نمط من قبل المستخدم أو مصمم الصفحة. على سبيل المثال، عادةً ما تظهر الروابط التي لم تتم زيارتها باللون الأزرق وتحتها خط.
ورقة أنماط المستخدمهي ورقة أنماط محددة من قبل المستخدم. لا تدعم كافة المتصفحات أوراق أنماط المستخدم، ولكنها يمكن أن تكون مفيدة جدًا، خاصة للمستخدمين الذين يعانون من أنواع معينة من الإعاقات الوظيفية. على سبيل المثال، قد يكون لدى الشخص الذي يعاني من عسر القراءة ورقة أنماط تحدد خطوطًا وألوانًا معينة تجعل القراءة أسهل.
ورقة أنماط المؤلفهو ما يسمى عادة "ورقة الأنماط". هذه ورقة أنماط كتبها مؤلف المستند (أو على الأرجح مصمم الموقع) وأرفقها (أو أدرجها).
لكي تتمكن من تحويل إعلان عادي إلى إعلان مهم، عليك أن تضع التوجيه المهم بعده. كما ترون، فإن الإعلانات المهمة في ورقة أنماط المستخدم سوف تتداخل مع كل شيء آخر، وهذا أمر منطقي.
سيتم تطبيق العرض التقديمي الافتراضي للمتصفح فقط إذا لم يتم تجاوز هذه الإعلانات بواسطة أي ورقة أنماط مستخدم أو قواعد ورقة أنماط المؤلف، نظرًا لأن ورقة أنماط وكيل المستخدم لها الأولوية الدنيا.
النوعيةيتم تعريفه على أنه مقياس لمدى تحديد محدد لبعض القواعد. يمكن للمحدد منخفض الخصوصية أن يطابق العديد من العناصر (مثل *، الذي يطابق كل عنصر في المستند)، بينما يمكن أن يطابق المحدد عالي الخصوصية عنصرًا واحدًا فقط لكل صفحة (مثل #nav، الذي يطابق فقط عنصرًا بمعرف) مطابقة الملاحة).
يمكن حساب خصوصية المحدد بسهولة. إذا تعارض إعلانان أو أكثر لعنصر معين، وكانت جميع الإعلانات لها نفس الأهمية، فإن الإعلان الذي يحتوي على المحدد الأكثر تحديدًا سيكون له الأسبقية في القاعدة.
تشتمل الخصوصية على أربعة مكونات يمكن الإشارة إليها على أنها a وb وc وd. المكون أ هو الأكثر تمييزا، د هو الأقل.
مع القليل من الرياضيات، يمكنك الحصول على سلسلة من هذه المكونات الأربعة التي تحدد خصوصية أي قاعدة. لا تحتوي إعلانات CSS في سمة النمط على محدد، لذا ستكون خصوصيتها دائمًا 1,0,0,0 .
ويبين الجدول بعض الأمثلة.
محدد | أ | ب | ج | د | النوعية |
---|---|---|---|---|---|
h1 | 0 | 0 | 0 | 1 | 0,0,0,1 |
.foo | 0 | 0 | 1 | 0 | 0,0,1,0 |
#حاجِز | 0 | 1 | 0 | 0 | 0,1,0,0 |
html>head+body ul#nav *.home a:link | 0 | 1 | 2 | 5 | 0,1,2,5 |
تجدر الإشارة إلى أن الأحرف المتصلة (مثل > و+ و
ربما يعلم الجميع ذلك لغة البرمجةيحدد هيكل الوثيقة، و CSS(أوراق الأنماط المتتالية، أوراق الأنماط المتتالية) هي المسؤولة عن تصميم صفحة الويب، وموضع العناصر ومظهرها. يحدث أن HTML وCSS لا يتم استخدامهما بشكل منفصل. أي صفحة ويب هي في الأساس مزيج من كود HTML ورمز CSS. دون المعرفة الأساسية لهذه
التكنولوجيا، لن يكون من الممكن تخطيط أي مستند بكفاءة. لقد نظر الكثير منا في هذه التقنيات بمزيد من التفصيل. لكن على المستوى الشخصي، لم أتمكن مطلقًا من "فهم" كل حقائق وإمكانيات CSS. وبعد ذلك، سأحاول تسليط الضوء على أهم النقاط التي يجب أن تعرفها عن CSS.
الأنماط هي مجموعة من المعلمات التي تتحكم في مظهر العناصر وموضعها على صفحة الويب. أنظر إلى الصور أدناه لتفهم الفرق:
يبدو الكود المصدري لمثل هذا المستند كما يلي:
1 |
|
كود HTML نفسه لم يخضع لأية تغييرات والإضافة الوحيدة هي السطر . ويرتبط بملف تصميم خارجي يسمى style.css. محتويات هذا الملف مبينة أدناه:
1 | جسم( |
في الملف style.cssجميع معلمات التصميم لعلامات مثل، <الجسم >,
لاحظ أن العلامات نفسها مكتوبة كالمعتاد في كود HTML. وبما أنه يمكن الرجوع إلى ملف ورقة الأنماط من أي مستند ويب، فإن هذا يؤدي في النهاية إلى تقليل كمية البيانات المكررة. وبفضل فصل الكود والتصميم، تزداد مرونة إدارة نوع المستند وسرعة العمل على الموقع.
هناك عدة أنواع من الأنماط التي يمكن تطبيقها معًا على مستند واحد. هذه هي نمط المتصفح، وأسلوب المؤلف، وأسلوب المستخدم.
نمط المتصفح. يتم استخدام أنماط مماثلة عند استخدام لغة HTML "الخالصة".
أسلوب المستخدم.هذا هو النمط الذي يمكن لمستخدم الموقع تمكينه من خلال إعدادات المتصفح الخاص به. يتمتع هذا النمط بأولوية أعلى ويتجاوز التصميم الأصلي للمستند.
إذا كان هناك تعارض عند تغيير نمط نفس عنصر المستند، فإن نمط المستخدم له الأولوية القصوى، يليه أسلوب المؤلف ونمط المتصفح.
هناك عدة طرق لإضافة أنماط CSS إلى الصفحة:
عند استخدام الأنماط المرتبطة، يوجد وصف المحددات وقيمها في ملف منفصل، عادة بامتداد CSS، ويتم استخدام علامة لربط المستند بهذا الملف . يتم وضع هذه العلامة في حاوية
.يمكنك ربط هذه الأنماط على النحو التالي:
1 | "-//W3C//DTD XHTML 1.0 Strict//EN" href = "http://www.htmlbook.ru/main.ess" / > head > عنوان
h1
> |
وسيبدو ملف النمط هكذا:
1 | ح1 ( |
كما ترون من الكود أعلاه، تتم إضافة سجل إلى صفحة html لإخبار المتصفح بمكان الحصول على الأنماط منه. يحتوي ملف النمط نفسه على وصف للأنماط فقط. هذا الفصل بين أكواد html وcss يجعل من السهل تطوير مواقع الويب وصيانتها. يوصى بالالتزام بهذا النمط من التخطيط.
عند استخدام الأنماط العامة، يتم وصف خصائص CSS في المستند نفسه وتقع في رأس صفحة الويب. من حيث المرونة والإمكانيات، تعد طريقة إضافة النمط هذه أدنى من الطريقة السابقة، ولكنها تتيح لك أيضًا تخزين الأنماط في مكان واحد، في هذه الحالة مباشرة على الصفحة باستخدام حاوية