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

آشنایی با Inheritance در CSS: اصول وراثت و مدیریت استایل‌ها

1403/08/12 19:59 محراب حسن زاده
آشنایی با Inheritance در CSS: اصول وراثت و مدیریت استایل‌ها

وراثت (Inheritance) یکی از مفاهیم مهم در CSS است که به شما امکان می‌دهد استایل‌های خاصی را از یک عنصر به فرزندان آن منتقل کنید. با درک صحیح از وراثت در CSS، می‌توانید کدهای مرتب‌تر و خواناتری ایجاد کرده و در عین حال، حجم کدهای CSS را کاهش دهید. این مقاله به شما کمک می‌کند تا با مفهوم وراثت، نحوه عملکرد آن و نحوه کنترل وراثت در CSS آشنا شوید.

 

مفهوم Inheritance در CSS

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

 

ویژگی‌های قابل وراثت و غیرقابل وراثت در CSS

در CSS، برخی از ویژگی‌ها به صورت پیش‌فرض به فرزندان ارث می‌رسند، اما برخی دیگر از ویژگی‌ها فقط در صورت تعریف صریح، به فرزندان اعمال می‌شوند.

 

ویژگی‌های قابل وراثت (Inherited Properties)

این ویژگی‌ها به طور پیش‌فرض از عنصر والد به فرزندان منتقل می‌شوند. برخی از ویژگی‌های وراثتی عبارت‌اند از:

  • color: رنگ متن

  • font-family: نوع فونت

  • font-size: اندازه فونت

  • text-align: ترازبندی متن

  • line-height: ارتفاع خط

  • visibility: وضوح



.parent {
  color: red;
}

.child {
  /* به صورت خودکار رنگ قرمز از والد به فرزند منتقل می‌شود */
}

 

در اینجا:

  • رنگ متن child به دلیل وراثت، قرمز خواهد بود.

 

ویژگی‌های غیرقابل وراثت (Non-inherited Properties)

این ویژگی‌ها به طور پیش‌فرض به فرزندان منتقل نمی‌شوند و فقط در صورتی که به صورت خاص برای آن‌ها تعریف شده باشند، اعمال می‌شوند. برخی از ویژگی‌های غیروراثتی عبارت‌اند از:

  • background-color: رنگ پس‌زمینه

  • border: حاشیه

  • margin: فاصله بیرونی

  • padding: فاصله داخلی

  • height و width: ارتفاع و عرض



.parent {
  background-color: yellow;
}

.child {
  /* بدون تعریف خاصی برای پس‌زمینه، رنگ پس‌زمینه فرزند به صورت پیش‌فرض سفید خواهد بود */
}

 

در اینجا:

  • background-color از parent به child منتقل نمی‌شود و child همچنان پس‌زمینه پیش‌فرض خواهد داشت.

 

استفاده از کلمه کلیدی inherit

با استفاده از inherit می‌توانید به طور دستی ویژگی‌های خاصی را از عنصر والد به فرزندان منتقل کنید، حتی اگر آن ویژگی به صورت پیش‌فرض غیرقابل وراثت باشد.



.parent {
  background-color: lightblue;
}

.child {
  background-color: inherit;
}

 

در اینجا:

  • child رنگ پس‌زمینه والد (یعنی lightblue) را به دلیل استفاده از inherit به ارث می‌برد.

مثال برای اعمال inherit در ویژگی غیرقابل وراثت



.parent {
  padding: 20px;
}

.child {
  padding: inherit;
}

 

در اینجا:

  • child از ویژگی padding والد استفاده می‌کند و دارای 20 پیکسل padding خواهد بود.

 

استفاده از initial و unset در وراثت

CSS همچنین کلمه‌های کلیدی initial و unset را ارائه می‌دهد که به شما کنترل بیشتری در مدیریت وراثت و مقداردهی ویژگی‌ها می‌دهد.

  • initial: ویژگی را به مقدار اولیه آن بازمی‌گرداند، گویی که هرگز تنظیم نشده است.



.child {
  color: initial; /* رنگ متن به مقدار اولیه مرورگر بازمی‌گردد */
}

 

  • unset: در صورت وراثتی بودن ویژگی، آن را از والد به ارث می‌برد و در غیر این صورت به مقدار اولیه بازمی‌گردد.



.child {
  color: unset; /* اگر ویژگی قابل وراثت باشد، ارث می‌برد، در غیر این صورت به مقدار اولیه تنظیم می‌شود */
}

 

کاربردهای رایج Inheritance در CSS

تنظیم فونت برای کل صفحه

با استفاده از وراثت، می‌توانید نوع فونت را برای کل صفحه به صورت یکجا تنظیم کنید و از تکرار بی‌مورد جلوگیری کنید.



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

h1, p, a {
  /* همه این عناصر از font-family والد ارث می‌برند */
}

 

در اینجا:

  • تمامی عناصر h1، p و a به طور خودکار از فونت Arial استفاده می‌کنند.

 

تنظیم رنگ متن برای چندین عنصر

به جای تنظیم رنگ برای هر عنصر به صورت جداگانه، می‌توانید آن را در والد تعریف کنید و اجازه دهید به فرزندان به ارث برسد.



Copy code
.container {
  color: #333;
}

.container h1, .container p, .container a {
  /* همه این عناصر رنگ متن را از والد دریافت می‌کنند */
}

 

در اینجا:

  • رنگ متن تمامی عناصر h1، p و a درون container به طور خودکار به #333 تنظیم می‌شود.

 

نکات و بهترین شیوه‌ها برای استفاده از Inheritance در CSS

  • استفاده از وراثت برای کاهش کدهای تکراری: با تنظیم ویژگی‌های وراثتی مانند color، font-size و font-family در والد، می‌توانید از کدهای تکراری و اضافه جلوگیری کنید.

  • استفاده از inherit برای ویژگی‌های غیرقابل وراثت: در مواقعی که نیاز به وراثت یک ویژگی غیرقابل وراثت دارید، از کلمه کلیدی inherit استفاده کنید.

  • استفاده از initial برای بازنشانی ویژگی‌ها: در مواقعی که نیاز به بازنشانی ویژگی به مقدار اولیه مرورگر دارید، از initial استفاده کنید.

  • مدیریت وراثت با unset: از unset زمانی استفاده کنید که می‌خواهید بسته به نوع ویژگی، آن را به مقدار اولیه یا وراثتی تنظیم کنید.

 

نتیجه‌گیری

مفهوم وراثت (Inheritance) در CSS یکی از اصول مهم برای بهینه‌سازی و سازمان‌دهی کدهای CSS است. با استفاده از این ویژگی می‌توانید استایل‌های خود را به طور منظم‌تر و کارآمدتری مدیریت کنید. با درک صحیح از ویژگی‌های وراثتی و کنترل آن‌ها با کلمات کلیدی inherit، initial و unset، می‌توانید کدهای مرتب‌تر و قابل نگهداری‌تری ایجاد کنید و تجربه بهتری برای توسعه وب داشته باشید.

پرسش و پاسخ

نظری یافت نشد

مطالب مشابه

آموزش Event Handling و v-on در Vue.js | مدیریت رویدادها با مثال کاربردی
1404/09/22 00:17

آموزش Event Handling و v-on در Vue.js | مدیریت رویدادها با مثال کاربردی

مطالعه بیشتر
آموزش سیر تا پیاز تاریخ و زمان در PHP (استاندارد گوگل)
1405/04/27 21:58

آموزش سیر تا پیاز تاریخ و زمان در PHP (استاندارد گوگل)

مطالعه بیشتر
آموزش کامل استفاده از float، clear، text و font در CSS برای طراحی وب: راهنمای جامع
1402/06/06 23:51

آموزش کامل استفاده از float، clear، text و font در CSS برای طراحی وب: راهنمای جامع

مطالعه بیشتر
تفاوت Session و Cookie در PHP؛ راهنمای جامع و کاربردی طبق استاندارد گوگل
1405/05/01 20:14

تفاوت Session و Cookie در PHP؛ راهنمای جامع و کاربردی طبق استاندارد گوگل

مطالعه بیشتر
آموزش اضافه کردن ویدئو و صدا به وب‌سایت: نحوه استفاده از تگ‌های video و audio در HTML
1402/05/23 23:10

آموزش اضافه کردن ویدئو و صدا به وب‌سایت: نحوه استفاده از تگ‌های video و audio در HTML

مطالعه بیشتر
آموزش کامل ساخت فرم در HTML: از المان‌ها تا نکات سئو
1402/05/21 23:48

آموزش کامل ساخت فرم در HTML: از المان‌ها تا نکات سئو

مطالعه بیشتر
آموزش کامنت‌گذاری در PHP بر اساس استاندارد گوگل و Clean Code
1405/03/21 01:15

آموزش کامنت‌گذاری در PHP بر اساس استاندارد گوگل و Clean Code

مطالعه بیشتر
کاربرد تگ‌های meta، title و keywords در سئو: راهنمای جامع بهینه‌سازی وب‌سایت
1402/05/25 00:16

کاربرد تگ‌های meta، title و keywords در سئو: راهنمای جامع بهینه‌سازی وب‌سایت

مطالعه بیشتر
آموزش تغییر المان‌های DOM: ویرایش متن، سبک‌ها و کلاس‌ها در جاوا اسکریپت - راهنمای کامل با مثال‌ها
1403/08/02 21:01

آموزش تغییر المان‌های DOM: ویرایش متن، سبک‌ها و کلاس‌ها در جاوا اسکریپت - راهنمای کامل با مثال‌ها

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

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

مطالعه بیشتر
آموزش کامل دستورات شرطی در PHP: راهنمای جامع if، else و elseif
1405/04/04 00:05

آموزش کامل دستورات شرطی در PHP: راهنمای جامع if، else و elseif

مطالعه بیشتر
نصب Vue.js و ایجاد پروژه ساده: آموزش گام‌به‌گام راه‌اندازی Vue
1402/06/28 00:41

نصب Vue.js و ایجاد پروژه ساده: آموزش گام‌به‌گام راه‌اندازی Vue

مطالعه بیشتر

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