الفرق بين المراجعتين لصفحة: «Sass/is superselector»

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>()is_superselector</code> في Sass}}</noinclude> تعيد الدالة <code>selector_nest()‎</code> محدّدًا جد...'
 
لا ملخص تعديل
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>()is_superselector</code> في Sass}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>()is_superselector</code> في Sass}}</noinclude>
تعيد الدالة <code>selector_nest()‎</code> محدّدًا جديدًا مع تشعيب جميع المحددات الموجودة في <code>‎$selectors</code> في بعضها البعض كما لو كانت متشعّبة في ملف الأنماط هكذا ‎<code><nowiki>$selector1 {$selector2 {...}}</nowiki></code>.
تحدّد الدالة <code>selector_nest()‎</code> ما إذا كان <code>‎$super</code> محدّدًا فائقًا (superselector) للمحدد<code>$sub</code>. هذا يعني أنّ <code>‎$super</code> يُطابق جميع العناصر التي يطابقها<code>‎$sub</code> ، بالإضافة إلى عناصر أخرى. عمومًا، تميل المحددات الأبسط إلى أن تكون محدّدات فائقة للمحددات الأكثر تعقيدًا.
 
على عكس معظم دوال المحددات ، فإن الدالة <code>is_superselector()‎</code> تسمح باستخدام المُحدّد الأبوي <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code> في أي مُحدد ما عدا الأول.


== البنية العامة ==
== البنية العامة ==
<syntaxhighlight lang="sass">
<syntaxhighlight lang="sass">
is_superselector($selectors...)
is_superselector($super, $sub)
</syntaxhighlight>
</syntaxhighlight>


سطر 12: سطر 10:


=== <code>‎$selectors</code> ===
=== <code>‎$selectors</code> ===
المحددات التي ستُشعّب. يجب أن يُمرّر محدد واحد على الأقل. يمكن أن تكون كل واحدة منها عبارة عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تمت إعادتها من قبل <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.
المحدد الفائق المحتمل. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تمت إعادتها من قبل <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.
 
=== <code>‎$sub</code> ===
المُحدّد التحتي (subselector) المحتمل. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تمت إعادتها من قبل <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.


== القيم المعادة ==
== القيم المعادة ==
قائمة من قوائم السلاسل النصية التي تمثل نتيجة تشعيب المحددات <code>‎$selectors</code>. وتكون بنفس التنسيق الذي يكون لمحدّد تعيده <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.
القيمة <code>true</code> أو <code>false</code>.


== أمثلة ==
== أمثلة ==
مثال عن استخدام الدالة <code>selector_nest()‎</code>:<syntaxhighlight lang="sass">
مثال عن استخدام الدالة <code>is_superselector()‎</code>:<syntaxhighlight lang="sass">
selector-nest(".foo", ".bar", ".baz") // .foo .bar .baz
is-superselector(".foo", ".foo.bar") // true
selector-nest(".a .foo", ".b .bar") // .a .foo .b .bar
is-superselector(".foo.bar", ".foo") // false
selector-nest(".foo", "&.bar") // .foo.bar
is-superselector(".bar", ".foo .bar") // true
is-superselector(".foo .bar", ".bar") // false
</syntaxhighlight>
</syntaxhighlight>



مراجعة 10:23، 22 أبريل 2018

تحدّد الدالة selector_nest()‎ ما إذا كان ‎$super محدّدًا فائقًا (superselector) للمحدد‎$sub. هذا يعني أنّ ‎$super يُطابق جميع العناصر التي يطابقها‎$sub ، بالإضافة إلى عناصر أخرى. عمومًا، تميل المحددات الأبسط إلى أن تكون محدّدات فائقة للمحددات الأكثر تعقيدًا.

البنية العامة

is_superselector($super, $sub)

المعاملات

‎$selectors

المحدد الفائق المحتمل. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تمت إعادتها من قبل &.

‎$sub

المُحدّد التحتي (subselector) المحتمل. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تمت إعادتها من قبل &.

القيم المعادة

القيمة true أو false.

أمثلة

مثال عن استخدام الدالة is_superselector()‎:

is-superselector(".foo", ".foo.bar") // true
is-superselector(".foo.bar", ".foo") // false
is-superselector(".bar", ".foo .bar") // true
is-superselector(".foo .bar", ".bar") // false

انظر أيضًا

مصادر