PDA

View Full Version : سوال: id با class چه فرقی می کنه؟



bacheweb
دوشنبه 28 بهمن 1387, 02:43 صبح
سلام
من می خواستم ببینم id با class چه فرقی می کنه؟
نحوه ساختن آنها از طریق کدهای css را بلدم و به نحوه استفاده از آنها نیز آشنایی دارم.

ولی در خیلی از مواقع می توانم از هر دوی آنها استفاده کنم! حالا کدام بهتره و لود کدام زودتر؟
در کل چه فرق اساسی دارند؟

as13851365
دوشنبه 28 بهمن 1387, 08:08 صبح
با ID می تونی به المنت مورد نظر دسترسی داشته باشی

با Class می تونی المنت مورد نظر را تنظیم کنی ( تنظیمات در فایل CSS می تونه باشه یا در خود صفحه )

emad_67
دوشنبه 28 بهمن 1387, 11:06 صبح
سلام
من می خواستم ببینم id با class چه فرقی می کنه؟
نحوه ساختن آنها از طریق کدهای css را بلدم و به نحوه استفاده از آنها نیز آشنایی دارم.

ولی در خیلی از مواقع می توانم از هر دوی آنها استفاده کنم! حالا کدام بهتره و لود کدام زودتر؟
در کل چه فرق اساسی دارند؟

با Class می تونی المنت مورد نظر را تنظیم کنی ( تنظیمات در فایل CSS می تونه باشه یا در خود صفحه )
ID یک شناسه رو برای یک المان مشخص می کنه و از لحالظ تنظیم پارامتر های css با class فرقی نداره، چون همه پارامتر هایی که میتونید به وسیله ID به المان نسبت بدید رو به وسیله class هم میتونید.
id اصولا برای المان هایی در صفحه به کار میره که فقط یکی از اون ها موجود هست مثل header، footer و ... و نمیشه به دو المان در یک صفحه یک id یکسان رو نسبت داد. اما class برای مواردی خوبه که میخوهیم اون کلاس رو به چندین المان در یک صفحه نسبت بدیم.
تفاوت دیگه این دو در این هست که شما برای یک امان میتونید 2 کلاس همزمان بهش نسبت بدید:


class="test1 test2"

اما در مورد id همچین چیزی ممکن نیست.
همونظور که جناب as13851365 گفتن شما میتونی با استفاده از java script و داشتن id اون المان به اون دسترسی پیدا کنید که در class ممکن نیست.

bacheweb
دوشنبه 28 بهمن 1387, 12:47 عصر
با توجه به صحبت های دوستان می شه نتیجه گرفت که اگر قرار باشه از java script استفاده نکنیم می شه فقط از class استفاده کرد.
حالا یه سوال:
اگر یه المان داشته باشیم که فقط یک بار استفاده می شه اگر با class بسازیمش مشکل به وجود میات؟

emad_67
دوشنبه 28 بهمن 1387, 14:29 عصر
با توجه به صحبت های دوستان می شه نتیجه گرفت که اگر قرار باشه از java script استفاده نکنیم می شه فقط از class استفاده کرد.
استفاده نکردن از جاوااسکریپت دلیل بر این نمیشه که شما فقط از class استفاده کنی. اون جاوا اسکریپت رو در بالا فقط جهت تفاوت بین id و class اوردم. شما میتونی به یک المان یک id نسبت بدی تا با جاوااسکریپت به اون دست پیدا کنی ولی اصلا css ئی در کار نباشه. پس نمیشه گفت فقط به المان هایی که در جاوا اسکریپت نیاز داریم یک id بدیم و بقیه رو هم class

اگر یه المان داشته باشیم که فقط یک بار استفاده می شه اگر با class بسازیمش مشکل به وجود میات؟
خیر مشکلی پیش نمیاد، اما من خودم ترجیح می دم المان هایی رو که فقط یک نمونه ازشون در صفحه هست رو با id کد css رو نسبت بدم.

smhnaji
دوشنبه 28 بهمن 1387, 21:27 عصر
همون‌طوری که می‌دونیم برای تعیین CSS ِ المنت‌ها و مشخص کردن این‌که کدوم المنت، از کدوم CSS استفاده کنه، از id و class استفاده می‌شه.



شباهت id و class
هم میشه از این استفاده کرد، هم میشه از اون یکی استفاده کرد. یعنی این جوری نیست که id یه کاری بکنه که class نتونه بکنه (یا برعکس)
تفاوت id و class
class برای این درنظر گرفته شده که به یک سری از المنت‌های html، یک مجموعه CSS خاص (یک بلاک CSS خاص) رو نسبت بدیم. (مثلا برای همه‌ی منوهای سایت از کلاس navigation استفاده می‌کنیم، یا برای همه‌ی پست‌هایی که توی یه وبلاگ زده میشه از کلاس post استفاده می‌کنیم).
اما id برای این درنظر گرفته شده که به یک المنت خاص، یک بلاک CSS رو اختصاص بدیم. (مثلا عکس header سایت که فقط یه عکس خاص هست idش رو بذاریم header-image، یا برای div ای که فوتر سایت رو دربر می‌گیره از آی‌دی ِ footer استفاده کنیم).

سوال: آیا میشه فقط از یه کدوم از اینا استفاده کنم؟
بله. میشه. تو می‌تونی هم برای (سری المنت‌ها) و هم برای (المنت‌های خاص) فقط از id (یا فقط از class) استفاده کنی اما همون‌طوری که گفتم اینا هر کدوم برای یه منظوری هستن.

امیدوارم جواب سوالت رو گرفته باشی :)