تخطَّ إلى المحتوى الرئيسي
Niquelao الوصولية على الويب وتطوير الواجهات الأمامية بالعربية: معايير WCAG، وعناصر واجهة قابلة للوصول، وإضافات لفايرفوكس، مشروحة بأكواد حقيقية.

بعض الروابط في هذا الموقع هي روابط تابعة: إذا اشتريت من خلالها فقد نكسب عمولة دون أي تكلفة إضافية عليك. هذا لا يؤثر أبدًا على ما نوصي به. راجع إفصاحنا عن الروابط التابعة للتفاصيل. إفصاح عن التسويق بالعمولة.

نيكيلاو » أرشيف المدونة » تصميم دورة CSS المتقدمة

» أرشيف المدونة » تنسيق دورة CSS المتقدمة Niquelao تنسيق دورة CSS المتقدمة 8 نوفمبر 2009، بقلم Rumoroso قبل بضعة أيام كنت في سرقسطة أُدرّس دورة حول CSS المتقدمة (مُدرجة في كتالوج دورات CTIC). وكما هو منطقي، وخاصة لأنها دورة حول أوراق الأنماط والتقنيات المتقدمة، أعددت العرض التقديمي في rumoslide (كما يسميه 95% من المستخدمين، وفي النهاية سيُعرف بهذا الاسم). المسألة أن طول المنهج (أو ضيق الوقت) جعلني أبقى متلهفاً لذكر بعض التفاصيل حول الأنماط التي استخدمتها في العرض التقديمي. ولهذا السبب تحديداً شرعت في كتابة هذا المقال (وكذلك لاستئناف عادة الكتابة الدورية في المدونة). وكما هو منطقي، البداية هي البداية، لذا اليوم يأتي دور الغلاف: ما أريد التعليق عليه في الغلاف هو ما فعلته بعنوان العرض التقديمي. كانت فكرتي إبراز كلتا الكلمتين (CSS و avanzado)، محاولاً تحقيق ذلك بتأكيد فردي كافٍ لكل منهما، مع الحرص على ألا تفقدا ترابطهما. ولذلك، من بين أمور أخرى، لعبت بحجم الخطوط وألوانها (كبير وفاتح مقابل أصغر وداكن) وبموضعها (تراكب جزئي). أولاً، كود HTML الذي استخدمته:

CSS Avanzado

ثم CSS وشرحها: h1 { font-size: 7em; color: #ffc8a3; line-height: .8; font-style: italic; margin: .5em 0 .2em 20%; border-bottom: 3px solid; position: relative; overflow: hidden; } كانت الفكرة تنسيق حروف CSS في العنوان أولاً. وبما أن باقي النص مُضمَّن في span، يمكن تطبيق نمط عام على h1 ثم تعويض التأثير عليه. وهكذا، أعلنت حجم خط لافت بما يكفي (7em)، ولوناً يتناسق بشكل مناسب مع باقي الأنماط المستخدمة ولا يكون مفرطاً في الحدّة، وارتفاع السطر، والنمط المائل. كما طبّقت عليه هوامش، مع الأخذ في الاعتبار أنني أردت فصله عن اليسار بنسبة 20% من العرض الكلي. وأخيراً وضعت له خطاً سفلياً بسماكة 3px (يرث اللون من الخط). إلى جانب هذه الأنماط، وبما أنني حققت تراكب الكلمات بالتموضع المطلق (سأذكر ذلك لاحقاً)، لجأت إلى تهيئة إحداثيات العناصر التابعة للعنوان بتموضعها نسبياً. وأضفت التحكم في الفائض (overflow: hidden) لاحقاً (لأنني رأيت أن النتيجة أصبحت أنيقة) بعد تنسيق باقي العنوان. وبذلك يتحقق أن الجزء السفلي من كلمة avanzado يخفي عند بروزه على حدود h1. ثم نسّقت كلمة avanzado: h1 :first-child { font-size: .5em; font-style: normal; color: #222; position: absolute; top: 60%; left: 15%; opacity: 0.75; -moz-opacity: 0.75; -ms-filter: alpha(opacity=75); } لتجنب الترميز الإضافي لعبت بالمحددات. مصطلح avanzado موجود في أول عنصر تابع لـ h1، لذا يتم التحديد عبر الفئة الزائفة :first-child. أولاً، تغيير خصائص الخط (تصغير الحجم، تغيير اللون، وإزالة الميل). أما التراكب ففعلته عبر التموضع المطلق (تُؤخذ الإحداثيات بالنسبة لموضع h1 بعد إعلان التموضع النسبي له). وأخيراً أضفت لمسة إضافية باللعب بشفافيته (لجأت إلى الخصائص ذات البادئات المحددة التي تتيح ظهوره بشكل صحيح في أحدث إصدارات المتصفحات). والآن السؤال: كيف حققت تأثير التدرج الأبيض؟ الجواب بسيط ويستند إلى الكود التالي: h1 span + span { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: transparent url(img/degrada.png) left bottom repeat-x; } الـ span الفارغ الذي أضفته (والذي سيكون قد بدا غريباً للبعض بالتأكيد) هو المسؤول عن هذا التأثير. في الواقع الفكرة بسيطة. يمكن تحقيق التأثير بوضع صورة png فوق النص بتدرج لوني يمتد من الأبيض إلى الشفاف (الأبيض بسبب خلفية الصفحة). ولذلك حددت الـ span عبر محدد سياقي (فهو الـ span الذي يأتي بعد span آخر، أي span + span)، ووضعته مطلقاً وجعلته يشغل 100% من عرض وارتفاع العنوان (عند تموضع الـ span، يصبح يقبل الأبعاد). ثم أضفت صورة التدرج كخلفية محاذاة في الجزء السفلي (وبما أنها صورة ضيقة، جعلتها تتكرر على المحور x). وانتهى الأمر… باقي الأنماط المطبقة على الغلاف (التذييل والشعار) تبقى ثابتة عبر شرائح العرض التقديمي. عموماً هي بسيطة إلى حد كبير، لذا سأعلّق عليها سريعاً (ربما سأفصّلها عندما أذكر أنماط أقسام أخرى في مقالات لاحقة). أقول إن التذييل حاوية عامة تتضمن قائمة (أزلت منها النقاط). وضعت له لون خلفية حدّياً قريباً من برتقالي CTIC وصورة (أيضاً كخلفية) موضوعة على اليمين. كما وضعته fixed في الجزء السفلي من الشاشة لأنني لم أرد أن يتحرك مع التمرير العمودي (وقد أفادني هذا كمثال خلال الدورة). أما الشعار، فهو svg مُضمَّن في عنصر object. ما فعلته هو تموضعه مطلقاً في الأعلى وإبقاؤه كذلك طوال العرض التقديمي. قريباً سأعلّق على بعض الأمثلة الأخرى للأنماط التي طبقتها خلال العرض التقديمي، مثل الطريقة التي حققت بها الخلفية ثنائية اللون مع حروف CSS، إلخ. تنسيق دورة CSS المتقدمة التصنيف: CSS —> 3 تعليقات تنسيق دورة CSS المتقدمة 8 نوفمبر 2009 […] النص الكامل في Niquelao: تنسيق دورة CSS المتقدمة […] Niquelao » أرشيف المدونة » لمسة أخرى من الأناقة في دورة CSS 11 نوفمبر 2009 […] كما فعلت في المدخل السابق (تنسيق دورة CSS المتقدمة)، سأواصل التعليق على بعض الأنماط التي استخدمتها في العرض التقديمي لدورة CSS لسرقسطة[…] لمسة أخرى من الأناقة في دورة CSS 12 نوفمبر 2009 […] كما فعلت في المدخل السابق (تنسيق دورة CSS المتقدمة)، سأواصل التعليق على بعض الأنماط التي استخدمتها في العرض التقديمي لدورة CSS […] يمكنك متابعة التعليقات بفضل خلاصة RSS 2.0. كما يمكنك إرسال trackback من موقعك. المقال السابق: The best… made with CSS المقال التالي: لمسة أخرى من الأناقة في دورة CSS —> —> —> هذا العمل مرخّص بموجب رخصة Creative Commons.

P.S. A few readers have asked which superposición de accesibilidad (overlay) we actually reach for — it's accessiBe; if you want the current details.


¿Cumplir WCAG sin tocar el código?

Superposición de IA que promete cumplimiento WCAG en 48 horas