آموزش رایگان CSS

استفاده از font face در CSS برای اضافه کردن فونت‌های سفارشی: راهنمای کامل

1403/08/16 21:48 محراب حسن زاده
استفاده از font face در CSS برای اضافه کردن فونت‌های سفارشی: راهنمای کامل

@font-face یکی از قابلیت‌های CSS است که به شما اجازه می‌دهد فونت‌های سفارشی را به وب‌سایت خود اضافه کنید. با استفاده از این ویژگی، دیگر نیازی به استفاده از فونت‌های پیش‌فرض مرورگرها ندارید و می‌توانید فونت‌های دلخواه و متنوعی را به طراحی خود اضافه کنید. در این مقاله، به نحوه استفاده از @font-face، ساختار آن و نکات مربوط به استفاده بهینه از فونت‌های سفارشی می‌پردازیم.

 

مفهوم @font-face و کاربرد آن در CSS

@font-face به شما امکان می‌دهد که فونت‌های سفارشی را از منابع خارجی (مانند فایل‌های محلی یا سرورهای دیگر) بارگذاری و در وب‌سایت خود استفاده کنید. این ویژگی به خصوص در طراحی‌هایی که نیاز به فونت خاص دارند بسیار کاربردی است.

ساختار کلی @font-face به صورت زیر است:



@font-face {
  font-family: 'CustomFont';
  src: url('fonts/CustomFont.woff2') format('woff2'),
       url('fonts/CustomFont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

 

در اینجا:

  • font-family نامی دلخواه برای فونت تعیین می‌کند که می‌توانید در استایل‌های CSS از آن استفاده کنید.

  • src مسیر فایل فونت را مشخص می‌کند که می‌تواند محلی یا از طریق URL باشد.

  • font-weight و font-style ویژگی‌هایی هستند که نوع وزن و استایل فونت را تعیین می‌کنند.

 

فرمت‌های رایج فونت‌ها برای وب

برای استفاده از فونت‌های سفارشی، باید به چندین فرمت مختلف فونت توجه کنید تا مرورگرهای مختلف به درستی آن‌ها را شناسایی کنند. برخی از فرمت‌های رایج عبارت‌اند از:

  • WOFF و WOFF2: این فرمت‌ها بهینه‌ترین فرمت‌ها برای استفاده در وب هستند و توسط اکثر مرورگرها پشتیبانی می‌شوند.

  • TTF (TrueType Font): این فرمت توسط بسیاری از مرورگرها پشتیبانی می‌شود اما نسبت به WOFF و WOFF2 حجم بیشتری دارد.

  • EOT (Embedded OpenType): این فرمت توسط اینترنت اکسپلورر پشتیبانی می‌شود و در پروژه‌های مدرن کمتر استفاده می‌شود.

  • SVG: این فرمت برای فونت‌های قدیمی‌تر و مرورگرهایی که SVG را پشتیبانی می‌کنند، به کار می‌رود و معمولاً برای آیکون‌ها استفاده می‌شود.

 

مثال کاربردی از @font-face برای بارگذاری فونت‌های سفارشی

در اینجا نمونه‌ای از تعریف @font-face برای فونت سفارشی و استفاده از آن در عناصر مختلف ارائه شده است:



@font-face {
  font-family: 'MyCustomFont';
  src: url('fonts/MyCustomFont.woff2') format('woff2'),
       url('fonts/MyCustomFont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

body {
  font-family: 'MyCustomFont', Arial, sans-serif;
}

 

در اینجا:

  • MyCustomFont به عنوان فونت پیش‌فرض برای body تعریف شده است و اگر به هر دلیلی این فونت بارگذاری نشود، فونت‌های Arial و sans-serif به عنوان جایگزین استفاده می‌شوند.

 

تعریف چندین وزن و استایل برای یک فونت

اگر یک فونت سفارشی شامل وزن‌ها و استایل‌های مختلف مانند Bold یا Italic باشد، می‌توانید از چندین @font-face برای تعریف هر یک از این استایل‌ها استفاده کنید.



@font-face {
  font-family: 'MyCustomFont';
  src: url('fonts/MyCustomFont-Regular.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'MyCustomFont';
  src: url('fonts/MyCustomFont-Bold.woff2') format('woff2');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'MyCustomFont';
  src: url('fonts/MyCustomFont-Italic.woff2') format('woff2');
  font-weight: normal;
  font-style: italic;
}

 

در اینجا:

  • وزن و استایل‌های مختلف (Bold و Italic) برای MyCustomFont تعریف شده‌اند و در صورت نیاز می‌توانید در CSS از آن‌ها استفاده کنید.

 

نحوه استفاده از فونت سفارشی در عناصر مختلف

پس از تعریف فونت در @font-face، می‌توانید آن را به سادگی در CSS به عنوان مقدار font-family به کار ببرید.



h1 {
  font-family: 'MyCustomFont', sans-serif;
}

p {
  font-family: 'MyCustomFont', Arial, sans-serif;
  font-weight: bold;
}

 

در اینجا:

  • MyCustomFont به عنوان فونت سفارشی برای عنوان h1 و پاراگراف p استفاده می‌شود.

 

نکات و بهترین شیوه‌ها برای استفاده از @font-face در CSS

 

بهینه‌سازی و کاهش حجم فایل‌های فونت

  • از فرمت‌های WOFF2 و WOFF به دلیل بهینه‌بودن آن‌ها برای وب استفاده کنید.

  • فایل‌های فونت را فشرده‌سازی کنید و مطمئن شوید که فقط وزن‌ها و استایل‌های مورد نیاز خود را بارگذاری می‌کنید.

 

استفاده از فرمت‌های جایگزین برای مرورگرهای قدیمی

برای اطمینان از سازگاری با مرورگرهای قدیمی‌تر، می‌توانید فرمت‌های EOT و SVG را نیز اضافه کنید:



@font-face {
  font-family: 'MyCustomFont';
  src: url('fonts/MyCustomFont.eot'); /* برای IE */
  src: url('fonts/MyCustomFont.woff2') format('woff2'),
       url('fonts/MyCustomFont.woff') format('woff'),
       url('fonts/MyCustomFont.ttf') format('truetype'),
       url('fonts/MyCustomFont.svg#MyCustomFont') format('svg');
}

 

استفاده از فونت‌های fallback

همیشه یک فونت جایگزین (مانند sans-serif یا Arial) تعریف کنید تا در صورتی که فونت سفارشی به هر دلیلی بارگذاری نشد، متن همچنان به خوبی نمایش داده شود.



body {
  font-family: 'MyCustomFont', Arial, sans-serif;
}

 

استفاده از lazy loading برای فونت‌ها

برای بهبود زمان بارگذاری صفحه، از تکنیک‌های lazy loading یا تاخیر در بارگذاری فونت‌ها استفاده کنید. برخی ابزارهای فونت مانند Google Fonts این امکان را فراهم می‌کنند.

 

نتیجه‌گیری

ویژگی @font-face در CSS یکی از ابزارهای قدرتمند برای افزودن فونت‌های سفارشی به وب‌سایت شما است. با استفاده از این ویژگی، می‌توانید به طراحی سایت خود ظاهری منحصر به فرد ببخشید و تجربه کاربری بهتری ایجاد کنید. با رعایت نکات بهینه‌سازی و استفاده از فرمت‌های مناسب، می‌توانید از فونت‌های سفارشی به طور کارآمد و سازگار با مرورگرهای مختلف بهره ببرید.

پرسش و پاسخ

نظری یافت نشد

مطالب مشابه

آموزش فیلتر کردن داده‌ها در PHP با توابع filter_var و preg_match
1405/05/13 21:29

آموزش فیلتر کردن داده‌ها در PHP با توابع filter_var و preg_match

مطالعه بیشتر
درک و استفاده از Watchers در Vue.js | آموزش Watch با مثال کاربردی
1404/09/28 22:00

درک و استفاده از Watchers در Vue.js | آموزش Watch با مثال کاربردی

مطالعه بیشتر
آموزش جامع مدیریت خطاها در PHP بر اساس استانداردهای گوگل
1405/05/01 20:23

آموزش جامع مدیریت خطاها در PHP بر اساس استانداردهای گوگل

مطالعه بیشتر
آموزش کامل تفاوت echo و print در PHP به زبان ساده
1405/03/21 01:11

آموزش کامل تفاوت echo و print در PHP به زبان ساده

مطالعه بیشتر
آموزش کامل و اصولی اتصال PHP به پایگاه داده MySQL (به روش PDO و MySQLi)
1405/05/04 23:34

آموزش کامل و اصولی اتصال PHP به پایگاه داده MySQL (به روش PDO و MySQLi)

مطالعه بیشتر
آموزش HTML: اولین گام برای طراحی سایت و سئو حرفه‌ای
1402/05/18 00:00

آموزش HTML: اولین گام برای طراحی سایت و سئو حرفه‌ای

مطالعه بیشتر
عملگرها و عبارات محاسباتی در جاوا اسکریپت: نحوه استفاده و کاربردهای مختلف
1402/06/28 00:20

عملگرها و عبارات محاسباتی در جاوا اسکریپت: نحوه استفاده و کاربردهای مختلف

مطالعه بیشتر
آموزش جامع برنامه‌نویسی شی‌گرا (OOP) در PHP بر اساس استانداردهای گوگل
1405/05/15 00:33

آموزش جامع برنامه‌نویسی شی‌گرا (OOP) در PHP بر اساس استانداردهای گوگل

مطالعه بیشتر
آموزش ساخت دیتابیس و جدول برای پروژه PHP طبق استاندارد گوگل
1405/05/04 23:38

آموزش ساخت دیتابیس و جدول برای پروژه PHP طبق استاندارد گوگل

مطالعه بیشتر
آموزش کامل ساخت و افزودن تقویم فارسی به Input (کامل و استاندارد)
1405/03/14 00:07

آموزش کامل ساخت و افزودن تقویم فارسی به Input (کامل و استاندارد)

مطالعه بیشتر
پیمایش اشیاء و آرایه‌ها در جاوا اسکریپت: راهنمای کامل برای Object.keys، Object.values، for...in و for...of
1403/07/04 18:12

پیمایش اشیاء و آرایه‌ها در جاوا اسکریپت: راهنمای کامل برای Object.keys، Object.values، for...in و for...of

مطالعه بیشتر
آموزش لیست‌ها در CSS: طراحی و استایل‌دهی ساده برای لیست‌های HTML
1402/06/10 17:47

آموزش لیست‌ها در CSS: طراحی و استایل‌دهی ساده برای لیست‌های HTML

مطالعه بیشتر

تمامی حقوق معتلق به ناشر سایت است و کپی از آن پیگرد قانونی دارد