شروع سریع

ورود یا ساخت حساب جدید

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

مسئولیت حفظ اطلاعات حساب کاربری و استفاده صحیح از آن بر عهده کاربر است. هر گونه فعالیت انجام شده با حساب کاربری شما، به عنوان فعالیت شما تلقی خواهد شد. در صورت مشاهده هرگونه دسترسی غیرمجاز، لطفاً سریعاً به تیم پشتیبانی اطلاع دهید.

۲ پرداخت و صورتحساب

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

۳ پشتیبانی و تیکت

برای دریافت پشتیبانی، از بخش تیکت‌ها استفاده کنید و اطلاعات لازم را به صورت دقیق وارد نمایید. تیم پشتیبانی در ساعات کاری پاسخگوی شما خواهد بود. لطفاً از ایجاد تیکت‌های تکراری خودداری کنید و صبور باشید.

۴ حریم خصوصی

اطلاعات کاربران صرفاً برای ارائه خدمات استفاده می‌شود و از دسترسی غیرمجاز محافظت خواهد شد. ما متعهد به حفظ محرمانگی اطلاعات شما هستیم و هیچ‌گاه اطلاعات شخصی شما را بدون رضایت به اشخاص ثالث ارائه نخواهیم داد.

۵ تغییرات قوانین

این قوانین ممکن است به‌روزرسانی شود؛ آخرین نسخه همیشه در همین صفحه منتشر خواهد شد. توصیه می‌شود به صورت دوره‌ای این صفحه را مطالعه کنید. در صورت تغییرات عمده، از طریق ایمیل یا اعلان داخل سیستم به شما اطلاع خواهیم داد.

امن سریع پشتیبانی ۲۴/۷
توسعه فرانت‌اند

CSS @scope: اسکوپ واقعی استایل‌ها

ویژگی جدید CSS @scope راهی استاندارد و مدرن برای محدود کردن استایل‌ها به یک بخش مشخص از DOM ارائه می‌دهد. این قابلیت بدون نیاز به CSS-in-JS، BEM یا Shadow DOM، مشکل قدیمی...

1405/01/13 1 دقیقه مطالعه 702 بازدید
CSS @scope: اسکوپ واقعی استایل‌ها

چرا @scope مهم است؟

یکی از قدیمی‌ترین مشکلات CSS این بود که:

  • استایل‌ها global هستند
  • هر تغییری می‌تواند روی بخش‌های ناخواسته‌تر اثر بگذارد
  • مدیریت پروژه‌های بزرگ سخت می‌شود
  • نیاز به معماری‌هایی مثل BEM، OOCSS، ITCSS
  • نیاز به راه‌حل‌های پیچیده مثل CSS Modules، Tailwind، یا Shadow DOM

حالا CSS به‌صورت Native اسکوپ‌بندی واقعی را اضافه کرده است.

@scope چیست؟

دستور جدیدی در CSS است که اجازه می‌دهد:

  • مجموعه‌ای از قوانین CSS فقط روی یک بخش خاص اعمال شوند
  • یا حتی بر اساس یک عنصر ورودی (root) یا خروجی (scope boundary) محدود شوند

ساختار پایه:

@scope (.card) {
  h3 {
    color: red;
  }
}

در این مثال، فقط h3‌هایی که در داخل .card قرار دارند قرمز می‌شوند.

قابلیت‌های کلیدی @scope

۱. اسکوپ‌بندی واقعی بدون نیاز به کلاس‌های اضافی

دیگر لازم نیست برای جلوگیری از تداخل استایل‌ها نام‌گذاری‌های عجیب استفاده کنید:

بدون BEM:

@scope (.form-section) {
  label { font-weight: 600; }
}

۲. تعریف Root و Boundary

می‌توانید بگویید استایل‌ها از کجا شروع و کجا تمام شوند.

@scope (.container to .stop-here) {
  p { color: blue; }
}

استایل‌ها روی

‌های داخل .container اعمال می‌شوند

اما فقط تا قبل از .stop-here.

چند مثال کاربردی

۱. اسکوپ مخصوص کامپوننت‌ها (بدون JS!)

@scope (.product-card) {
  .price { color: green; }
  .title { font-size: 1.4rem; }
}

۲. جلوگیری از نشت استایل یک بخش به کل صفحه

@scope (.admin-panel) {
  button { padding: 12px; }
}

دیگر این دکمه‌ها بیرون از .admin-panel تغییر نمی‌کنند.

۳. استایل‌دهی فرم‌ها با اسکوپ مستقل

@scope (form.login) {
  input { border-color: #007aff; }
}

تفاوت @scope با Shadow DOM



@scope قرار نیست جایگزین Shadow DOM شود، بلکه سطح میانگینی ارائه می‌دهد:

  • ساده‌تر
  • قابل فهم‌تر
  • بدون نیاز به ساختار جدید DOM

پشتیبانی مرورگرها (۲۰۲۶)

پشتیبانی تقریباً کامل در:

  • Chrome
  • Edge
  • Safari 17+
  • Firefox (فعال به‌صورت پیش‌فرض از ۲۰۲۵)

بنابراین امروز کاملاً قابل استفاده در پروژه‌های واقعی است.

بهترین کاربردهای @scope

  • طراحی کامپوننت‌ها در HTML/CSS خام
  • پروژه‌های بدون فریم‌ورک
  • معماری CSS مقیاس‌پذیر
  • صفحات بزرگ با کامپوننت‌های تکراری
  • جلوگیری از تداخل استایل‌های لایه‌های مختلف
  • جایگزینی طبیعی برای BEM یا CSS Modules در برخی سناریوها

مزایای @scope نسبت به روش‌های قدیمی

مزیت‌ها

  • ساده
  • طبیعی و استاندارد
  • بدون تنظیمات Build
  • خوانایی بالا
  • کاهش نیاز به پیش‌پردازنده‌ها و معماری‌های پیچیده
  • بهبود مدیریت پروژه‌های بزرگ

محدودیت‌ها

  • مثل Shadow DOM کاملاً ایزوله نیست
  • نیاز به توجه دقیق در انتخاب root/boundary

جمع‌بندی

CSS @scope یکی از مهم‌ترین پیشرفت‌های CSS در یک دهه اخیر است.

برای اولین بار می‌توانیم:

  • استایل‌ها را بدون hack
  • بدون naming convention سخت
  • بدون CSS-in-JS
  • بدون Shadow DOM

به یک محدوده‌ی مشخص محدود کنیم.

این قابلیت طراحی کامپوننت‌ها را بسیار ساده‌تر، تمیزتر و قابل‌پیش‌بینی‌تر می‌کند.

واکنش به این مقاله

اشتراک پریمیوم مجله

جدیدترین ترفندها، نکات مدیریت وبسایت‌ها، مدیریت کسب‌و‌کار و مدیریت فردی با پریمیوم.💡

۱ ماه 99,000 تومان
50%− ۱۲ ماه 999,000 499,000 تومان
اشتراک‌گذاری این مقاله:
دیدگاه‌ها 0
۰ / ۲۰۰۰

هنوز دیدگاهی ثبت نشده

اولین نفری باشید که نظر می‌دهد!

🎧
پشتیبانی آنلاین
پاسخگویی سریع
به "طراحستان" خوش آمدید
قبل از شروع چت لطفا توجه بفرمایید

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

در حال بارگذاری...
APPROVED
Logo

ماموریت ما

ما در طراحستان باور داریم که خلاقیت مرز نمی‌شناسد.

هدف ما خلق ابزارهایی است که ایده‌های شما را به واقعیت تبدیل کنند. ما پلی هستیم میان رویاهای شما و دنیای دیجیتال، تا با قدرت تکنولوژی، آینده‌ای روشن‌تر بسازیم.