در یکی از مطالب قدیمیتر تفاوت پراپرتیهای transform و left/right را برای ایجاد انیمیشن در CSS بررسی کردیم. و دیدیم که مرورگر برای render کردن تغییرات در صفحه، چند مرحله (style - layout - paint - composite) را طی میکند.
اما در بعضی شرایط، تغییر ظاهر یک عنصر، بر روی سایر عناصر هم تاثیر میگذارد و مرورگر را مجبور به انجام محاسبات اضافه برای سایر عناصر میکند.
با استفاده از پراپرتی جدید contain در CSS میتوانیم عملیات style و layout و paint را فقط به یک بخش از صفحه محدود کنیم.
https://developers.google.com/web/updates/2016/06/css-containment
#quicktip #css #performance
@ProGraphs
اما در بعضی شرایط، تغییر ظاهر یک عنصر، بر روی سایر عناصر هم تاثیر میگذارد و مرورگر را مجبور به انجام محاسبات اضافه برای سایر عناصر میکند.
با استفاده از پراپرتی جدید contain در CSS میتوانیم عملیات style و layout و paint را فقط به یک بخش از صفحه محدود کنیم.
https://developers.google.com/web/updates/2016/06/css-containment
#quicktip #css #performance
@ProGraphs
یه ابزار مناسب دولوپرهایی که به حجم بالای پروژههای جاوااسکریپتی حساسند 😄
https://bundlephobia.com/
#tool #performance
@ProGraphs
https://bundlephobia.com/
#tool #performance
@ProGraphs
Bundlephobia
Bundlephobia | Size of npm dependencies
Bundlephobia helps you find the performance impact of npm packages. Find the size of any javascript package and its effect on your frontend bundle.
در این کد میدانیم که پراپرتی width در یک transition تغییر خواهد کرد.
بنابراین از will-change استفاده کردهایم تا مرورگر را از این موضوع با خبر کنیم.
آیا این کار تاثیری در عملکرد transition دارد؟
#interviewquestion #css #performance
@ProGraphs
بنابراین از will-change استفاده کردهایم تا مرورگر را از این موضوع با خبر کنیم.
آیا این کار تاثیری در عملکرد transition دارد؟
#interviewquestion #css #performance
@ProGraphs
🔺یه ابزار جالب برای تهیهی عکس از performance reportهای گوگل کروم 👌🏻
https://github.com/ilicmarko/devtools-timeline-images
#link #devtools #performance #performancereport
@ProGraphs
https://github.com/ilicmarko/devtools-timeline-images
#link #devtools #performance #performancereport
@ProGraphs
میدونیم که تغییر پراپرتی box-shadow با CSS جزو انیمیشنهای نسبتا سنگین محسوب میشه و میتونه باعث کند شدن انیمیشن بشه.
اما با یه ترفند جالب میتونیم box-shadow یه عنصر رو خیلی روانتر animate کنیم.
به این صورت که یه pseudo element به اندازهی خود عنصر تعریف میکنیم و box-shadow رو به این pseudo element میدیم. حالا کافیه opacity این pseudo element رو تغییر بدیم (به کد داخل عکس دقت کنید).
در واقع با این ترفند به جای پراپرتی box-shadow، پراپرتی opacity رو تغییر دادیم (animate کردن پراپرتی opacity برای مرورگر سادهتره)
کد کامل این ترفند رو میتونید اینجا ببینید.
ترفندهای مشابه برای تغییر بهینهتر طول و عرض عنصر هم وجود داره که در مطالب بعدی بررسی میکنیم :)
#quicktip #css #performance #trick
@ProGraphs
اما با یه ترفند جالب میتونیم box-shadow یه عنصر رو خیلی روانتر animate کنیم.
به این صورت که یه pseudo element به اندازهی خود عنصر تعریف میکنیم و box-shadow رو به این pseudo element میدیم. حالا کافیه opacity این pseudo element رو تغییر بدیم (به کد داخل عکس دقت کنید).
در واقع با این ترفند به جای پراپرتی box-shadow، پراپرتی opacity رو تغییر دادیم (animate کردن پراپرتی opacity برای مرورگر سادهتره)
کد کامل این ترفند رو میتونید اینجا ببینید.
ترفندهای مشابه برای تغییر بهینهتر طول و عرض عنصر هم وجود داره که در مطالب بعدی بررسی میکنیم :)
#quicktip #css #performance #trick
@ProGraphs