حل شده

مشکل با important در CSS

بازدید34.6kپست ها2آخرین فعالیت5 سال پیش
2
2

سلام

من یه کتابخونه دارم ازش استفاده میکنم که تو کد هاش که مربوط به استایل میشه important داره و من میخوام اینو تغییر بدم ولی چون imporant داره واسه منو نشون نمیده! چیکار کنم؟

2 پاسخ

1

سلام

اگر شما تو کدهای CSS خودتون یک property مثلا background-color رو red تعریف کرده باشید از نوع !important و برنامه نویس کتابخونه همین پراپرتی رو blue تعریف کرده باشه از نوع !important اینجا باز هم دومورد هست که باید چک کنید.

۱- CSS Specificity

هر چی selector شما دقیق تر باشه اولویتش بیشتره مثال:

*               /* a=0 b=0 c=0 -> specificity =   0 */
LI              /* a=0 b=0 c=1 -> specificity =   1 */
UL LI           /* a=0 b=0 c=2 -> specificity =   2 */
UL OL+LI        /* a=0 b=0 c=3 -> specificity =   3 */
H1 + *[REL=up]  /* a=0 b=1 c=1 -> specificity =  11 */
UL OL LI.red    /* a=0 b=1 c=3 -> specificity =  13 */
LI.red.level    /* a=0 b=2 c=1 -> specificity =  21 */
#x34y           /* a=1 b=0 c=0 -> specificity = 100 */
#s12:not(FOO)   /* a=1 b=0 c=1 -> specificity = 101 */

در صورتی که اولویت ها هم یکی باشند اونوقت ترتیب چک میشه.

۲- ترتیب Rule

هر Rule ای که آخر تعریف شده باشه اولیوت پیدا میکنه یعنی اگر تمام شرایط یکسان باشند در آخر اینمورد بررسی میشه.


پس تو مورد شما اگر نمیتونید ترتیب رو تغییر بدید(اگر کد کتابخونه بعد از کدهای شما اجرا میشن) میتونید Specificity کد رو بیشتر کنید. مثلا اگر .container هست شما میتونید بنویسید div.container.
<br>
<br>
<br>

اطلاعات بیشتر:

https://www.w3.org/TR/selectors-3/#specificity

https://specifishity.com/

https://specificity.keegan.st/

آخرین ویرایش: 18-01-2019 ???? 19:58، توسط رضا رمضانپور
0

سلام تو css اونی که آخر تعریف میشه ارجعیت داره. یعنی حتما اون کدی که اون نوشته بعد از کد شما میاد بخاطر همین برای اون اعمال میشه. ئسباید کد شما بعد از کد اون باشه تا override بشه

سوال برنامه نویسی دارید؟

ندونستن عیب نیست، نپرسیدن چرا!

خوش آمدید

برای طرح سوال، ایجاد بحث و فعالیت در سایت نیاز است ابتدا وارد حساب کاربری خود شوید. در صورتی که هنوز عضو سایت نیستید میتوانید در عرض تنها چند ثانیه ثبت نام کنید.