الفرق بين المراجعتين لصفحة: «Sass/selector unify»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>()selector_unify</code> في Sass}}</noinclude> تعيد الدالة <code>selector_unify()</code> نسخة جديدة...' |
ط استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}' |
||
(7 مراجعات متوسطة بواسطة 3 مستخدمين غير معروضة) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code>()selector_unify</code> في Sass}}</noinclude> | <noinclude>{{DISPLAYTITLE: الدالة <code>()selector_unify</code> في Sass}}</noinclude> | ||
توحِّد الدالة <code>selector_unify()</code> اثنين من المحدِّدات في محدِّد واحد يطابق فقط العناصر المتطابقة في كلا هذين المحدّدين. تعيد الدالة القيمة العدميَّة <code>null</code> إن لم يكن هناك تطابق بين المحدِّدين. | |||
كما هو الحال مع توحيد المحدِّدات الذي تُنجزه القاعدة <code>[[Sass/@ rules#.D8.A7.D9.84.D9.82.D8.A7.D8.B9.D8.AF.D8.A9 .E2.80.8E.40extend|extend@]]</code>، فإنَّ هذا لا يضمن أن المحدِّد الناتج باستعمال هذه الدالة سيُطابق جميع العناصر المتطابقة بين المُحدّدين المُمرَّرين. إذا وُحِّد مثلًا المحدِّد <code>.a .b</code> مع المحدِّد <code>.x .y</code>، فستعيد الدالة المحدِّد <code>.a .x .b.y, .x .a .b.y</code> وليس المحدِّد <code>.a.x .b.y</code>. هذا يُجنِّب النتاتج الطويلة والكبيرة في حين أنَّه يطابق جميع العناصر التي يُحتمل أن تكون مفيدةً. | |||
</ | |||
== البنية العامة == | == البنية العامة == | ||
<syntaxhighlight lang="sass"> | <syntaxhighlight lang="sass"> | ||
selector_unify($ | selector_unify($selector1, $selector2) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== المعاملات == | == المعاملات == | ||
=== <code>$ | === <code>$selector1</code> === | ||
المُحدّد الأول المراد توحيده. يمكن أن يكون عبارةً عن سلسلة نصيَّة، أو قائمة من سلاسل نصيَّة، أو قائمة من قوائم من سلاسل نصيَّة كما تُعاد باستعمال الرمز <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>. | |||
=== <code>$ | === <code>$selector2</code> === | ||
المُحدّد الثاني المراد توحيده. يمكن أن يكون عبارةً عن سلسلة نصيَّة، أو قائمة من سلاسل نصيَّة، أو قائمة من قوائم من سلاسل نصيَّة كما تُعاد باستعمال الرمز <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>. | |||
== القيم المعادة == | == القيم المعادة == | ||
قائمة من قوائم | تُعاد قائمة من قوائم من سلاسل نصيَّة التي تمثل نتيجة التوحيد، أو القيمة العدميَّة <code>null</code> في حالة عدم حدوث التوحيد. ويكون تنسيقها بنفس تنسيق المحدّد المُعاد باستعمال الرمز <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>. | ||
== أمثلة == | |||
أمثلة نموذجية عن استخدام الدالة <code>selector_unify()</code>:<syntaxhighlight lang="sass"> | |||
selector_unify(".a", ".b"); // .a.b | |||
selector_unify(".a .b", ".x .y"); // .a .x .b.y, .x .a .b.y | |||
selector_unify(".a.b", ".b.c"); // .a.b.c | |||
selector_unify("#a", "#b"); // null | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== انظر أيضًا == | == انظر أيضًا == | ||
* الدالة <code>[[Sass/selector append|selector_append()]]</code>: تضيف | * الدالة <code>[[Sass/selector append|selector_append()]]</code>: تضيف المحدِّدات إلى بعضها بعضًا دون مسافات بينها. | ||
* الدالة <code>[[Sass/selector nest|selector_nest()]]</code>: تُشعّب | * الدالة <code>[[Sass/selector nest|selector_nest()]]</code>: تُشعّب المحدِّدات. | ||
* الدالة <code>[[Sass/selector | * الدالة <code>[[Sass/selector replace|selector_replace()]]</code>: تبدِّل محدِّد معين مع محدِّد آخر في المحدِّد المعطى. | ||
* الدالة <code>[[Sass/selector extend|selector_extend()]]</code>: توسّع محدِّدًا معيَّنًا. | |||
* الدالة <code>[[Sass/is superselector|is_superselector()]]</code>: تتحقَّق ما إذا كان المحدِّد فائقًا. | |||
== مصادر == | == مصادر == | ||
* [https://sass-lang.com/documentation/Sass/Script/Functions.html#selector_unify-instance_method قسم الدالة selector_unify في صفحة الدوال في توثيق Sass الرسمي. | * [https://sass-lang.com/documentation/Sass/Script/Functions.html#selector_unify-instance_method قسم الدالة selector_unify في صفحة الدوال في توثيق Sass الرسمي]. | ||
[[تصنيف:Sass]] | [[تصنيف:Sass|{{SUBPAGENAME}}]] | ||
[[تصنيف: Sass Function]] | [[تصنيف: Sass Function|{{SUBPAGENAME}}]] |
المراجعة الحالية بتاريخ 07:01، 20 مايو 2018
توحِّد الدالة selector_unify()
اثنين من المحدِّدات في محدِّد واحد يطابق فقط العناصر المتطابقة في كلا هذين المحدّدين. تعيد الدالة القيمة العدميَّة null
إن لم يكن هناك تطابق بين المحدِّدين.
كما هو الحال مع توحيد المحدِّدات الذي تُنجزه القاعدة extend@
، فإنَّ هذا لا يضمن أن المحدِّد الناتج باستعمال هذه الدالة سيُطابق جميع العناصر المتطابقة بين المُحدّدين المُمرَّرين. إذا وُحِّد مثلًا المحدِّد .a .b
مع المحدِّد .x .y
، فستعيد الدالة المحدِّد .a .x .b.y, .x .a .b.y
وليس المحدِّد .a.x .b.y
. هذا يُجنِّب النتاتج الطويلة والكبيرة في حين أنَّه يطابق جميع العناصر التي يُحتمل أن تكون مفيدةً.
البنية العامة
selector_unify($selector1, $selector2)
المعاملات
$selector1
المُحدّد الأول المراد توحيده. يمكن أن يكون عبارةً عن سلسلة نصيَّة، أو قائمة من سلاسل نصيَّة، أو قائمة من قوائم من سلاسل نصيَّة كما تُعاد باستعمال الرمز &
.
$selector2
المُحدّد الثاني المراد توحيده. يمكن أن يكون عبارةً عن سلسلة نصيَّة، أو قائمة من سلاسل نصيَّة، أو قائمة من قوائم من سلاسل نصيَّة كما تُعاد باستعمال الرمز &
.
القيم المعادة
تُعاد قائمة من قوائم من سلاسل نصيَّة التي تمثل نتيجة التوحيد، أو القيمة العدميَّة null
في حالة عدم حدوث التوحيد. ويكون تنسيقها بنفس تنسيق المحدّد المُعاد باستعمال الرمز &
.
أمثلة
أمثلة نموذجية عن استخدام الدالة selector_unify()
:
selector_unify(".a", ".b"); // .a.b
selector_unify(".a .b", ".x .y"); // .a .x .b.y, .x .a .b.y
selector_unify(".a.b", ".b.c"); // .a.b.c
selector_unify("#a", "#b"); // null
انظر أيضًا
- الدالة
selector_append()
: تضيف المحدِّدات إلى بعضها بعضًا دون مسافات بينها. - الدالة
selector_nest()
: تُشعّب المحدِّدات. - الدالة
selector_replace()
: تبدِّل محدِّد معين مع محدِّد آخر في المحدِّد المعطى. - الدالة
selector_extend()
: توسّع محدِّدًا معيَّنًا. - الدالة
is_superselector()
: تتحقَّق ما إذا كان المحدِّد فائقًا.