التنسيق بـ CSS
مُقدَّم| English | المعنى |
|---|---|
| padding/ˈpædɪŋ/ | الهامش الداخلي |
| border/ˈbɔːdə/ | الإطار |
| CSS/ˌsiː es ˈes/ | ورقة أنماط متداخلة |
| selector/sɪˈlektə/ | مُختار |
| declaration/ˌdekləˈreɪʃn/ | إعلان |
| the box model/ðə bɒks ˈmɒdl/ | نموذج الصندوق |
| margin/ˈmɑːdʒɪn/ | الهامش الخارجي |
| responsive design/rɪˈspɒnsɪv dɪˈzaɪn/ | التصميم المتجاوب |
| media query/ˈmiːdiːə ˈkwɪərɪ/ | استعلام الوسائط |
بطاقة حجم 320 بكسل تتجاوز شاشة بحجم 320 بكسل
- العرض المُعلن عن البطاقة ليس دائمًا إجمالي عرضها. يمكن أن تضيف Padding والحدود مسافة خارج عرض المحتوى.
- CSS يطبق قواعد العرض. Selector يختار العناصر؛ Declaration يمنح خاصية وقيمة، مثل
color: navy.
اذكر سبباً عملياً واحداً للاحتفاظ بقواعد عرض قابلة لإعادة الاستخدام في ملف تنسيقي.
Difficulty 3/5 · 200 coins + a small bonus on first completion today
مثال: "يسمح لنا ملف التنسيق المشترك بتحديث البطاقات المطابقة بشكل متسق دون تعديل كل عنصر HTML."
احسب كل جزء من الصندوق
- Box Model يتكون من Content و Padding و Border و Margin. Padding والحدود داخل الصندوق المرسوم؛ Margin يفصله عن الجيران.
- مع
content-box، عرض 320 بكسل، هامش داخلي 16 بكسل من كلا الجانبين، وهوامش خارجية 2 بكسل من كلا الجانبين يعطي 356 بكسل قبل الهامش الخارجي. معborder-box، يُدرج 320 بكسل المعلن ضمن ذلك الهامش الداخلي والحدود.
رتب مناطق نموذج الصندوق من المحتوى إلى الخارج.
Difficulty 3/5 · 200 coins + a small bonus on first completion today
الحشو والحد يحيطان بالمحتوى؛ الهامش يفصل الصندوق عن الجيران.
مع content-box، يكون عرض المحتوى 320 بكسل، وحواف اليمين/اليسار 16 بكسل لكل منها، وإطار اليمين/اليسار 2 بكسل لكل منها. ما هو العرض قبل الهوامش، بالبكسل؟
Difficulty 2/5 · 140 coins + a small bonus on first completion today
320 + 16 + 16 + 2 + 2 = 356 بكسل.
اجعل العرض مرناً
- التصميم المتجاوب يكيّف المحتوى والتخطيط حسب المساحة المتاحة. تملأ هذه البطاقة حاويتها حتى 400 بكسل، شاملاً الهامش الداخلي والحدود.
- استخدم القاعدة على عنصر له
class="card". لا يزال يجب التحقق من المحتوى الطويل غير المنكسر، وهامش الأب، والقواعد الأخرى؛ لا يمكن لإعلان واحد ضمان أن تتناسب الصفحة بأكملها.
.card {
box-sizing: border-box;
width: 100%;
max-width: 400px;
padding: 16px;
border: 2px solid currentColor;
overflow-wrap: anywhere;
}
داخل حاوية بحجم 280 بكسل، تكون هذه البطاقة بعرض 280 بكسل شاملاً هامشها الداخلي وحدودها. داخل حاوية بحجم 700 بكسل، تتوقف عند 400 بكسل. لا تزال هوامشها الخارجية مساحة إضافية.
يجب أن تمتلئ البطاقة المحشوة حاويتها حتى 400 بكسل بما في ذلك حدودها. أي مجموعة قواعد الأنسب؟
Difficulty 1/5 · 100 coins + a small bonus on first completion today
يشمل border-box الحشو والحدود في العرض المُعلَن. لا يزال layout الأبناء والمحتوى يحتاجان إلى اختبار.
غيّر التخطيط فقط عندما يحتاج إلى تغيير
- استعلام الوسائط يطبق قواعد تحت شرط معين. على سبيل المثال، غيّر عمودين إلى عمود واحد عندما يصبحان ضيقين جداً للقراءة.
- اختر نقطة الانقطاع بناءً على المحتوى، ثم اختبر عدة أبعاد ونصوص أكبر. لا تفترض أن جميع الهواتف أو أجهزة اللابتوب لها نفس العرض المفيد.
افحص القاعدة التي تربح فعلياً
- تأخذ السلسلة المتسلسلة في الاعتبار عوامل بما فيها الأصل والأهمية والطبقات قبل تحديدية المحدد. بالنسبة للقواعد المقابلة بشكل آخر، فإن المعرف (ID) أكثر تحديداً من الفئة (class)؛ والفئة أكثر تحديداً من محدد العنصر.
- عندما يكون للقواعد المقابلة نفس التحديدية، يمكن لترتيب المصدر اللاحق أن يحسم الأمر. استخدم أدوات مطور المتصفح لفحص القواعد المطابقة، وملف التنسيق المحمل، والقيم المحسوبة.
يشارك !important في السلسلة المتسلسلة؛ ولا يكسر CSS. تجنب استخدامه كإصلاح غير مفسر. تحقق من السبب أولاً: قد يفسر ملف تنسيق مفقود، أو إعلان غير صالح، أو قاعدة سائدة نتيجة غير متوقعة.
قاعدتان طبيعيتان من نفس المصدر والطبقة تستخدمان نفس المحدد .card وتحددان ألواناً متعارضة. لا توجد عوامل أخرى حاسمة مختلفة. أي لون يفوز؟
Difficulty 1/5 · 100 coins + a small bonus on first completion today
التساوي في الدقة لا يجعل الترتيب غير مهم. بالنسبة للقواعد المتكافئة المتعادلة، يحدد ترتيب المصدر اللاحق.
!important جزء من قواعد تدرج CSS، ولكن لا ينبغي استخدامه كحل مؤقت دون تفسير.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
الأهمية تؤثر على الأولوية. افحص التعارض واستخدمه بعمد بدلاً من الادعاء بأنه يكسر CSS.
طابق الملاحظة مع الفحص التالي المفيد.
Difficulty 2/5 · 140 coins + a small bonus on first completion today
افحص السبب الفعلي بدلاً من افتراض أن جميع الفشل ناتج عن الدقة.
اختبر الصندوق وتجربة القراءة
- جرب حاويات ضيقة وعريضة، وتركيز لوحة المفاتيح، وتكبير النص. تأكد من أن النص مقروء في كلا الموضوعين اللونيين وأن المحتوى يمكن أن يلتف.
- اشرح إصلاح تدفق زائد واحد باستخدام حساب الصندوق، وصراع تنسيقي واحد باستخدام القواعد المطابقة الفعلية.
احسب الصندوق بالكامل، وفضل الأحجام المرنة، ثم افحص السلسلة المتسلسلة. التحديدية مهم، ولكنه ليس العامل الحاسم الوحيد.
المصدر: W3C سلسلة متسلسلة لـ CSS.
تناسب بطاقة بحجم نص عادي لكنها تتجاوز الحدود عند تكبير النص. ماذا يجب أن تفعل؟
Difficulty 1/5 · 100 coins + a small bonus on first completion today
يشمل السلوك الاستجابة تغيير النصوص وقيود المحتوى، وليس لقطة شاشة واحدة فقط لواجهة المستخدم.