انتخابگر عمومی
انتخابگر عمومی (Universal Selector) در CSS یکی از قدرتمندترین ابزارها برای کنترل ظاهر کلی صفحات وب است. این انتخابگر با علامت *
نمایش داده میشود و تمامی عناصر HTML موجود در صفحه را هدف قرار میدهد. تصور کنید که میخواهید یک خانه بسازید: پیش از آنکه هر اتاق را جداگانه تزئین کنید، ابتدا دیوارهای کل خانه را رنگ پایه میزنید. انتخابگر عمومی نیز دقیقاً همین کار را در طراحی وب انجام میدهد؛ قبل از اعمال استایلهای خاص به هر المان، یک سبک پایه برای کل صفحه ایجاد میکند.
کاربرد این انتخابگر در فروشگاه آنلاین برای حذف فاصلههای پیشفرض و آماده کردن یک ساختار تمیز قبل از طراحی بسیار مهم است. در سایت خبری کمک میکند تا تیترها، پاراگرافها و لیستها از ابتدا ظاهر یکدستی داشته باشند. در وبلاگ شخصی یا پرتال دولتی نیز با ایجاد یک خط پایه یکسان، مدیریت استایلها سادهتر و توسعه پروژه سریعتر میشود.
در این آموزش پیشرفته، یاد میگیرید:
- انتخابگر عمومی چیست و چگونه کار میکند
- نحوه استفاده درست از آن در پروژههای واقعی
- تکنیکهای بهینهسازی و نکات نگهداری کد
- اشتباهات رایج و راهکارهای رفع آنها
مثل سازماندهی کتابخانه، این انتخابگر ابتدا همه کتابها (عناصر) را مرتب میکند تا بعد بتوانید بهسادگی هر کدام را در قفسه اختصاصی خود قرار دهید.
مثال پایه
css/* انتخابگر عمومی برای حذف فاصلههای پیشفرض همه عناصر */
* {
margin: 0; /* حذف حاشیههای پیشفرض */
padding: 0; /* حذف فاصله داخلی پیشفرض */
box-sizing: border-box; /* محاسبه اندازه با احتساب حاشیه و بوردر */
}
در این مثال از انتخابگر عمومی *
استفاده کردهایم تا یک ریست کلی روی همه عناصر صفحه اعمال شود.
margin: 0;
– مرورگرها به طور پیشفرض برای تگهایی مثلp
،h1
وul
فاصله بیرونی قرار میدهند. با صفر کردن آنها، کنترل کامل روی طراحی پیدا میکنید. مثلاً در سایت خبری با تیترهای متعدد، این کار باعث یکدست شدن فاصلهها میشود.padding: 0;
– این ویژگی فاصله داخلی المانها را حذف میکند. در فروشگاه آنلاین، لیست محصولات (ul
وli
) اغلب با padding پیشفرض نمایش داده میشوند که طراحی را به هم میریزد.box-sizing: border-box;
– این ویژگی پیشرفته کمک میکند تا محاسبه عرض و ارتفاع عناصر دقیق باشد، زیرا padding و border در اندازه نهایی لحاظ میشوند. در وبلاگ شخصی یا پرتال دولتی که طراحی واکنشگرا (Responsive) اهمیت دارد، این ویژگی مدیریت اندازهها را آسانتر میکند.
سوالی که مبتدیان میپرسند این است: «آیا استفاده از انتخابگر عمومی باعث کندی سایت میشود؟» پاسخ این است که برای تنظیمات سبک و پایه مانند margin و padding خیر، اما اگر روی همه عناصر سایهها، انیمیشنها یا ترنزیشنهای سنگین اعمال کنید، عملکرد مرورگر کاهش مییابد. بنابراین بهترین استفاده از انتخابگر عمومی، ریست و استانداردسازی اولیه است.
مثال کاربردی
css/* استفاده کاربردی از انتخابگر عمومی در وبلاگ شخصی یا فروشگاه */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: "Vazirmatn", sans-serif; /* فونت پایه کل سایت */
}
body {
background-color: #f8f9fa; /* پسزمینه روشن برای خوانایی بهتر */
}
.card {
background: white;
margin: 20px;
padding: 20px;
border-radius: 10px;
box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}
بهترین شیوهها و اشتباهات رایج:
بهترین شیوهها (Best Practices):
- استفاده در ابتدای فایل CSS – با این کار پایهای یکسان برای همه المانها ایجاد میکنید.
- طراحی Mobile-first – پس از ریست کلی، ابتدا برای نمایشگرهای کوچک طراحی کرده و سپس به سراغ بزرگترها بروید.
- سبک و سریع نگه داشتن – انتخابگر عمومی را فقط برای margin، padding، box-sizing و فونتهای عمومی استفاده کنید.
-
کد قابل نگهداری – پس از اعمال ریست، استایلهای خاص را با کلاسها و IDها مدیریت کنید.
اشتباهات رایج (Common Mistakes): -
اعمال افکتهای سنگین روی همه عناصر – مانند سایه و ترنزیشن که باعث کاهش سرعت میشود.
- اعتماد بیشازحد به انتخابگر عمومی برای رفع مشکلات – استفاده مداوم از
!important
باعث بینظمی میشود. - فراموشی طراحی واکنشگرا – ریست به تنهایی کافی نیست؛ باید Media Queryها را اضافه کنید.
- نداشتن ساختار ماژولار – اگر همه چیز را با
*
استایل دهید، مدیریت کد در پروژههای بزرگ سخت میشود.
نکته رفع اشکال (Debugging Tip): اگر بههمریختگی دیدید، در DevTools بلوک انتخابگر عمومی را موقتاً غیرفعال کنید تا مطمئن شوید مشکل از همین بخش است.
📊 مرجع سریع
Property/Method | Description | Example |
---|---|---|
* | انتخاب همه عناصر HTML | * { margin:0; } |
margin | حذف فاصله بیرونی پیشفرض | * { margin:0; } |
padding | حذف فاصله داخلی پیشفرض | * { padding:0; } |
box-sizing | کنترل محاسبه اندازه عنصر | * { box-sizing:border-box; } |
font-family | تنظیم فونت پایه برای کل صفحه | * { font-family:Vazirmatn,sans-serif; } |
خلاصه و گامهای بعدی:
انتخابگر عمومی *
نقطه شروعی قدرتمند برای استانداردسازی ظاهر سایت است. با حذف فاصلههای پیشفرض و تعیین فونت پایه، شما یک بوم تمیز ایجاد میکنید تا استایلهای خاص را بهراحتی اعمال کنید. مثل مرتبسازی کتابخانه قبل از برچسبگذاری کتابها، این انتخابگر همه چیز را برای کارهای بعدی آماده میکند.
نکات کلیدی:
*
روی همه عناصر HTML اثر میگذارد.- مناسب برای فروشگاه آنلاین، وبلاگ شخصی، سایت خبری و پرتال دولتی است.
-
بهتر است فقط برای ریست و پایهسازی استفاده شود.
ارتباط با HTML و JavaScript: -
HTML ساختار صفحه را فراهم میکند.
- CSS با انتخابگر عمومی ظاهر اولیه را یکسان میکند.
-
JavaScript میتواند روی DOM استانداردشده به راحتی عملیات انجام دهد.
گامهای بعدی برای یادگیری: -
یادگیری انتخابگرهای نوع، کلاس و ID
- تمرین با Media Queries برای واکنشگرایی
- پیادهسازی در پروژه واقعی برای افزایش تسلط
🧠 دانش خود را بیازمایید
آزمون دانش شما
درک خود از این موضوع را با سوالات کاربردی بسنجید.
📝 دستورالعملها
- هر سوال را با دقت بخوانید
- بهترین پاسخ را برای هر سوال انتخاب کنید
- میتوانید آزمون را هر چند بار که میخواهید تکرار کنید
- پیشرفت شما در بالا نمایش داده میشود