حالت آفلاین — محتوا از حافظهٔ کش نمایش داده می‌شود
آموزش CSS از صفر؛ طراحی صفحه با Flexbox و Grid

پیش‌بینی font-size در CSS؛ ارث‌بری اندازه نوشته

رنگ و تایپوگرافی فارسی با CSS · 0٪

اندازه متن با font-size تنظیم می‌شه. واحد px یک اندازه مشخص برای این تمرین‌ها می‌ده و کار مقایسه نتیجه رو ساده می‌کنه. بعضی ویژگی‌های متنی از والد به فرزند می‌رسن؛ به این رفتار ارث‌بری می‌گیم. اگه ظرف روی ۲۴ پیکسل باشه، متن‌های داخلش هم معمولاً همین اندازه رو می‌گیرن، مگر اینکه یک قانون مستقیم برای خود اون عنصر مقدار دیگری تعیین کنه.

توی مثال، span اول اندازه والد رو می‌گیره و span دوم قانون مخصوص خودش رو داره. خطای رایج اینه که تصور کنیم اندازه والد همیشه با اندازه فرزند جمع می‌شه. مقدار ۱۶ پیکسل روی فرزند یعنی اندازه نهایی همون ۱۶ پیکسل؛ اینجا جمع و ضربی انجام نمی‌دیم. برای پاسخ تمرین اول والد هر متن رو پیدا کن و بعد دنبال قانون مستقیم روی خود متن بگرد. ارتفاع خط، فاصله بیرونی و اندازه جعبه موضوع‌های جدا هستن و از روی عدد font-size به‌تنهایی تعیین نمی‌شن.

✍️ مثال حل‌شده:

<div class="label"><span>بزرگ</span><span class="tiny">کوچک</span></div>
<style>.label { font-size: 24px; } .tiny { font-size: 16px; }</style>

حالا نوبت توئه: در .group اندازه ۲۲ پیکسل است و .small اندازه ۱۴ پیکسل دارد. اندازه نهایی span بدون کلاس و span.small را به همین ترتیب انتخاب کن. هیچ قانون مستقیم دیگری برای این دو span وجود ندارد؛ عددها با هم جمع نمی‌شوند.

فعالیت شما

در .group اندازه ۲۲ پیکسل است و .small اندازه ۱۴ پیکسل دارد. اندازه نهایی span بدون کلاس و span.small را به همین ترتیب انتخاب کن. هیچ قانون مستقیم دیگری برای این دو span وجود ندارد؛ عددها با هم جمع نمی‌شوند.

مطالعهٔ این گام برای همه آزاد است

برای پاسخ‌دادن، بررسی پاسخ، ثبت پیشرفت و استفاده از دستیار باید شرایط شرکت در فعالیت‌ها را داشته باشید.

برای انجام فعالیت وارد شوید

برای انجام فعالیت‌ها ابتدا این دوره‌های پیش‌نیاز را تکمیل کنید:

کد اولیهٔ فعالیت

<!doctype html>
<html lang="fa" dir="rtl">
<head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>تمرین CSS</title></head>
<body>
<div class="group"><span>متن اول</span><span class="small">متن دوم</span></div>
</body>
</html>

ظاهر صفحه (CSS)

body{margin:0;padding:16px;font-family:Tahoma,Arial,sans-serif;direction:rtl;color:#1f2937;background:#f3f4f6}*{box-sizing:content-box}
.group{font-size:22px}.small{font-size:14px}

گزینه‌های پیش‌بینی خروجی

  1. ۲۲ و ۳۶ پیکسل
  2. ۲۲ و ۱۴ پیکسل
  3. هر دو ۲۲ پیکسل