خطوط الويب في CSS
تعرف بالفعل font-family والحجم والوزن. خطوط الويب تحمّل حرفًا غير موجود بالضرورة على جهاز الزائر — أعلنه بـ @font-face ثم استخدم اسم العائلة كأي خط آخر، مع إنهاء هادئ باحتياطي.
أجزاء @font-face
📊 @font-face بنظرة واحدة
| الجزء | دوره اليومي |
|---|---|
font-family |
الاسم الذي تخترعه ثم تستخدمه في CSS |
src |
أين تعيش ملفات الخط (url(...) وغالبًا format(...)) |
font-weight / font-style |
أي وجه يمثله هذا الملف (regular، bold، italic…) |
font-display |
كيف يتصرف النص أثناء تحميل الخط (مثل swap) |
فكّر بخطوتين هادئتين: سجّل الوجه بـ @font-face، ثم استدعِ نفس اسم العائلة في قواعدك العادية. تخطي أي خطوة يترك مكدسًا لا يجد الملف المخصص.
@font-face بسيط
أعطِ الوجه اسمًا واضحًا ووجّه src إلى ملف خط على موقعك (أو CDN).
@font-face أساسي
css@font-face {
font-family: "Site Sans";
src: url("/fonts/site-sans.woff2") format("woff2");
font-weight: 400;
font-style: normal;
}
قدّم أكثر من تنسيق
المتصفحات الحديثة تفضّل woff2. سرد woff بعده يغطي متصفحات أقدم. ضع أفضل تنسيق أولًا.
woff2 ثم woff
css@font-face {
font-family: "Site Sans";
src:
url("/fonts/site-sans.woff2") format("woff2"),
url("/fonts/site-sans.woff") format("woff");
font-weight: 400;
font-style: normal;
}
font-display — أظهر النص أسرع
font-display: swap يدع المتصفح يعرض نصًا احتياطيًا أولًا ثم يستبدل خط الويب عند وصوله — غالبًا أفضل من فجوة طويلة غير مرئية.
Display swap
css@font-face {
font-family: "Site Sans";
src: url("/fonts/site-sans.woff2") format("woff2");
font-weight: 400;
font-style: normal;
font-display: swap;
}
استخدم العائلة التي أعلنتها
بعد @font-face، استدعِ نفس اسم font-family في قواعدك — وأبقِ احتياطيًا عامًا.
تطبيق العائلة المخصصة
cssbody {
font-family: "Site Sans", system-ui, "Segoe UI", sans-serif;
font-size: 1rem;
line-height: 1.6;
}
عادة هادئة للاستضافة الذاتية
استضف الأوزان التي تحتاجها فقط، فضّل woff2، اضبط font-display، ودائمًا أبقِ مكدس نظام/عام.
عنوان بوجه bold محمّل
css@font-face {
font-family: "Site Sans";
src: url("/fonts/site-sans-bold.woff2") format("woff2");
font-weight: 700;
font-style: normal;
font-display: swap;
}
h1 {
font-family: "Site Sans", Georgia, serif;
font-weight: 700;
}
جرّب بنفسك
- اكتب كتلة
@font-faceباسمfont-familyمخصص وsrcمن نوعwoff2. - أضف سطر
srcثاني لـwoff. - اضبط
font-display: swap. - طبّق
"Your Name", sans-serifعلىbody. - إن كان لديك ملف bold، أضف
@font-faceمنفصلًا للوزن700— ثم استخدمfont-weight: 700على عنوان.
أخطاء شائعة
- إعلان
@font-faceدون استخدام نفس اسم العائلة فيfont-family - تخطي مكدس الاحتياطي (مظهر مكسور إن فشل الملف)
- تحميل أوزان وأنماط كثيرة لا تستخدمها (صفحات بطيئة)
- ترك النص غير مرئي طويلًا بلا استراتيجية
font-display - خلط هذا الدرس مع text-shadow / التأثيرات (تأتي تاليًا)
ملخص
@font-faceيسجّل اسم عائلة مخصصة ويشير إلى ملفات الخط- فضّل
woff2، واختياريًا احتط بـwoff font-display: swapغالبًا يبقي النص مقروءًا أثناء التحميل- استخدم نفس اسم العائلة في CSS مع احتياطي نظام/عام
- حمّل الوجوه التي تحتاجها فقط؛ تأثيرات مثل text-shadow درس لاحق
🧠 اختبر معرفتك
اختبر معرفتك
تحدى نفسك مع هذا الاختبار التفاعلي واكتشف مدى فهمك للموضوع
📝 التعليمات
- اقرأ كل سؤال بعناية
- اختر أفضل إجابة لكل سؤال
- يمكنك إعادة الاختبار عدة مرات كما تريد
- سيتم عرض تقدمك في الأعلى