View Full Version : اپراتورهای قابل استفاده در CSS
tux-world
سه شنبه 03 دی 1392, 13:04 عصر
سلام اطلاعاتی در مورد اپراتورهایی از قبیل + و ~ میخواستم و اینکه از اینها به صورت مکرر تا چه حد میشه استفاده کرد.مثل کد زیر
.row_1 ul> li+li+li+li+li+li
Javidhb
سه شنبه 03 دی 1392, 22:51 عصر
< =>برای انتخاب فرزندان یک المنت استفاده میشه.
+ => برای انتخاب یک المنتی که کنار المنت اصلی هست و
~ =>برای فیلتر و انتخاب المنتهایی که عبارت خاصی توی یکی از attributeهاشون دارن.
با مثال خیلی واضح ترن:
دمــو (http://jsfiddle.net/f7ZRH/3/)
لیست کامل انتخابگرها (http://www.w3schools.com/cssref/css_selectors.asp)
هیچ محدودیتی برای تعداد استفاده ندارید... اما برای اینکه کار خودتون راحتتر بشه بهتر همیشه از یه الگویی استفاده کنید که با انتخابگرهای کمتر به خاستتون برسید.
tux-world
چهارشنبه 04 دی 1392, 09:25 صبح
ممنون دوست عزیز. تو همون لینکی که دادید p1 + p تو css منظورمه. بعد اون آی دی p1 تگ آخری که نوشتید:
<p id='p6'>6</p>
کنار المنت اصلی نیست. بینشون یه div نوشته شده. من این منظورتون رو نفهمیدم
مورد دیگه در مورد این کد:
p[id~=idToolani]{
color: green;
}
خوب اگه ما قسمتی از id رو بنویسیم این درست کار نمیکنه. در واقع مجبوریم خودش رو عینا بنویسیم پس چه لزومی به استفاده از ~ رو گذاشتن ؟
Javidhb
چهارشنبه 04 دی 1392, 10:51 صبح
در مورد +:
بعد p1 المنت بعدی p2 هست... p6 رو همینجوری الکی اون ته گذاشتم! اون p هایی که رنگشون سیاه(3 و 6)، یعنی هیچ استایل روشون انجام نشده.
#p1 + p{
color: red;
}
میاد فقط یدونه p که حتما بعد از p1 قرار گرفته باشه رو انتخاب و رنگش رو قرمز میکنه=> توی مثال ما میشه p2
نگفتیم p2 .. گفتیم اولین p که بعد از p1 باشه... حالا ممکنه ما p6 رو بزاریم بعد از p1 و با همین css ایندفعه p6 رنگش قرمز میشه...
از نظر css اولین p که بعد از p1 باشه باید رنگش قرمز بشه.
اما در مورد سوال دومتون ... باید ازتون معذرت بخام... خیلی مثال بدی زدم!! :) ببخشید
دمـو (http://jsfiddle.net/Ls2LF/)
p[class~=class1]{
color: blue;
}
میگه که بین تمام p ها بگرد و اونایی که توی خاصیت class خودشون عبارت 'class1' رو دارن رو انتخاب و رنگشون رو آبی کن.
مثلا
<p class='class1 class3'>6</p>
دوتا کلاس داره... که یکیشون 'class1' هست... پس انتخاب و رنگش آبی میشه.
بجای گشتن توی class یه المنت میتونید توی خاصیت title, alt و ... دنبال یه عبارت خاص بگردید و انتخابتون رو انجام بدید.
tux-world
جمعه 06 دی 1392, 00:04 صبح
در مورد مثال دوم فکر میکنم نیازی به اینگونه استراحت نیست میشه راحت با کلاس و یا آیدی اینکار رو کرد. اون طوری که مثال زدید برای کلاس۱ و کلاس۲. به نظرم هنوز اینکه رو نمیتونم هضم کنم. چون اینطوری لقمه رو دور سر چرخوندن میشه. برای اینکه یه تیکه عبارت رو چک کنیم از $ استفاده میشه خوب. میشه بیشتر توضیح بدی؟ ممنون میشم.دستتون درد نکنه
Javidhb
جمعه 06 دی 1392, 11:17 صبح
در مورد مثال دوم فکر میکنم نیازی به اینگونه استراحت نیست میشه راحت با کلاس و یا آیدی اینکار رو کرد. اون طوری که مثال زدید برای کلاس۱ و کلاس۲. به نظرم هنوز اینکه رو نمیتونم هضم کنم. چون اینطوری لقمه رو دور سر چرخوندن میشه. برای اینکه یه تیکه عبارت رو چک کنیم از $ استفاده میشه خوب. میشه بیشتر توضیح بدی؟ ممنون میشم.دستتون درد نکنه
اکثر مواقع احتیاجی به استفاده از این انتخابگرها پیدا نمیکنید... همونطور که گفتید میشه راحتتر این انتخاب ها رو انجام داد... اما بعضی مواقع بخاطر پیچیدگی ساحتار html مجبور میشید که از این انتخابگرها استفاده کنید... در واقع اینجور انتخابگرها برای روز مبادا هستن!
از $ اگه منظورتون رو درست فهمیده باشم..
به این مثال نیگا کنید:
img[src$=".jpg"]{
display:none;
}
اینجوری تمام img هایی که سورشون عکسهایی با پسوند jpg. هست رو فقط انتخاب و بعد display:none رو براشون اعمال میکنه.
در واقعه $ میگه که آخر اون attribute (مثال بالا src) که مد نظر ماست کلمه مورد نظرمون باشه.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.