اولویت در اعمال استایل به یک تگ

پرسیده شده
فعالیت 1471 روز پیش
دیده شده 871 بار
0

سلام استاد خسته نباشید.در این جلسه ی تابع تعریف کردید به نام message که 2تا پارامتر میگرفت و پارامتر دومی $cssClass بود که مقدار پیش فرض info داشت.تو قسمتی که مربوط به موفقیت آمیز بودن ثبت نام کاربر بود از این تابع برای نمایش یک پیام استفاده کردید و پارامتر دوم رو success وارد کردید و گفتید که برای این کلاس success استایل دلخواه خودتون رو مشخص کنید که پیام موفقیت آمیز بودن ثبت نام کاربر به رنگ مثلا سبز نمایش داده بشه،اما چون تگ div که پیغام رو نمایش میده به صورت inline استایل دهی شده استایل مربوط به کلاس success(در صورتی که ست شده باشه)رو اعمال نمیکنه،میخواستم بدونم تکنیکی وجود داره که این مشکل برطرف بشه یا اینکه مشکل کلا از اینه که یا باید کلاس css  تعریف بشه یا به صورت inline استایل دهی بشه.چون خودم ی کاری کردم که به نظرم جالب نیست،اینکه در فایل css مربوطه تمام استایل های کلاس success رو important! کردم.


 

فایل پیوست

سیدعلی میرعربشاهی
سیدعلی میرعربشاهی

1 اردیبهشت 99

2
حذف شده

یکی از راهکارهای همین important هست که توصیه نمیشه. اگر پروژه بزرگ شه این important ها داستان میشه و اولویت ها رو به هم میزنه.

کلاس هایی که سلکتورشون کاملتر و جزئی تر تعریف شده باشه اولویت بالاتری دارند. در صورت یکسان بودن سلکتورها کلاسی که بعدتر تعریف شده باشه اولویتش بالاتره.

وقتی می گم سلکتور کاملتر منظورم اینه که مثلا این سلکتور:

div > p > span.name

اولویت اعمالش بالاتر از اینه:

p > span.name

چون دقیقتر و جزئی تر تعریف شده.

 

کلا هم اینلاین رو توصیه نمیشه استفاده کنید. توی ویدیوها اشاره کردم.

 

فایل پیوست

لقمان آوند

توسط

لقمان آوند

1 اردیبهشت 99