Skip to main content Skip to docs navigation

الـ Bootstrap مدعوم بنظام ألوان واسع يقوم بتنسيق الأنماط والمكونات الخاصة بنا. وهذا يتيح تخصيصاً وتوسيعاً أكثر شمولاً لأي مشروع.

الألوان

تمت الإضافة في الإصدار v5.3.0

لقد استمرت لوحة ألوان الـ Bootstrap في التوسع وأصبحت أكثر دقة في الإصدار v5.3.0. لقد أضفنا متغيرات جديدة لألوان النصوص والخلفيات secondary و tertiary بالإضافة إلى {color}-bg-subtle و {color}-border-subtle و {color}-text-emphasis لألوان السمة الخاصة بنا. هذه الألوان الجديدة متاحة من خلال متغيرات Sass و CSS (ولكن ليس من خلال خرائط الألوان أو فئات الأدوات المساعدة) بهدف صريح هو تسهيل التخصيص عبر أنماط ألوان متعددة مثل الفاتح والمظلم. يتم تعيين هذه المتغيرات الجديدة عالمياً على :root وهي متكيفة مع وضع الألوان المظلم الجديد بينما تظل ألوان السمة الأصلية دون تغيير.

توفر الألوان التي تنتهي بـ -rgb قيم red, green, blue لاستخدامها في أنماط ألوان rgb() و rgba(). على سبيل المثال، rgba(var(--bs-secondary-bg-rgb), .5).

تنبيه! هناك بعض الارتباك المحتمل فيما يتعلق بألواننا الجديدة secondary و tertiary ، ولون السمة secondary الحالي، بالإضافة إلى ألوان السمة الفاتحة والمظلمة. توقع أن يتم تسوية هذا الأمر في الإصدار v6.

الوصفالعينةالمتغيرات

Body — اللون الأمامي الافتراضي (color) والخلفية، بما في ذلك المكونات.

 
--bs-body-color
--bs-body-color-rgb
 
--bs-body-bg
--bs-body-bg-rgb

Secondary — استخدم خيار color للنصوص الأكثر فاتحة. استخدم خيار bg للفواصل وللإشارة إلى حالات المكونات المعطلة.

 
--bs-secondary-color
--bs-secondary-color-rgb
 
--bs-secondary-bg
--bs-secondary-bg-rgb

Tertiary — استخدم خيار color لنصوص أكثر فاتحة. استخدم خيار bg لتنسيق خلفيات حالات التحويم (hover)، واللمسات الجمالية، والآبار (wells).

 
--bs-tertiary-color
--bs-tertiary-color-rgb
 
--bs-tertiary-bg
--bs-tertiary-bg-rgb

Emphasis — للنصوص ذات التباين العالي. لا ينطبق على الخلفيات.

 
--bs-emphasis-color
--bs-emphasis-color-rgb

Border — لحدود المكونات، والفواصل، والقواعد. استخدم --bs-border-color-translucent للمزج مع الخلفيات باستخدام قيمة ()rgba.

 
--bs-border-color
--bs-border-color-rgb

Primary — لون السمة الرئيسي، يستخدم للروابط التشعبية، وأنماط التركيز، وحالات المكونات والنماذج النشطة.

 
--bs-primary
--bs-primary-rgb
 
--bs-primary-bg-subtle
 
--bs-primary-border-subtle
نص تجريبي
--bs-primary-text-emphasis

Success — لون السمة المستخدم للإجراءات والمعلومات الإيجابية أو الناجحة.

 
--bs-success
--bs-success-rgb
 
--bs-success-bg-subtle
 
--bs-success-border-subtle
نص تجريبي
--bs-success-text-emphasis

Danger — لون السمة المستخدم للأخطاء والإجراءات الخطيرة.

 
--bs-danger
--bs-danger-rgb
 
--bs-danger-bg-subtle
 
--bs-danger-border-subtle
نص تجريبي
--bs-danger-text-emphasis

Warning — لون السمة المستخدم لرسائل التحذير غير المدمرة.

 
--bs-warning
--bs-warning-rgb
 
--bs-warning-bg-subtle
 
--bs-warning-border-subtle
نص تجريبي
--bs-warning-text-emphasis

Info — لون السمة المستخدم للمحتوى المحايد والمعلوماتي.

 
--bs-info
--bs-info-rgb
 
--bs-info-bg-subtle
 
--bs-info-border-subtle
نص تجريبي
--bs-info-text-emphasis

Light — خيار سمة إضافي للألوان ذات التباين الأقل.

 
--bs-light
--bs-light-rgb
 
--bs-light-bg-subtle
 
--bs-light-border-subtle
نص تجريبي
--bs-light-text-emphasis

Dark — خيار سمة إضافي للألوان ذات التباين الأعلى.

 
--bs-dark
--bs-dark-rgb
 
--bs-dark-bg-subtle
 
--bs-dark-border-subtle
نص تجريبي
--bs-dark-text-emphasis

استخدام الألوان الجديدة

يمكن الوصول إلى هذه الألوان الجديدة عبر متغيرات الـ CSS والفئات (classes) المساعدة مثل --bs-primary-bg-subtle و .bg-primary-subtle مما يتيح لك إنشاء قواعد الـ CSS الخاصة بك باستخدام المتغيرات، أو تطبيق الأنماط بسرعة عبر الفئات (classes). تم بناء الأدوات المساعدة باستخدام متغيرات الـ CSS المرتبطة باللون، وبما أننا نقوم بتخصيص متغيرات الـ CSS هذه للوضع المظلم، فإنها تكون متكيفة مع وضع الألوان بشكل افتراضي.

Example element with utilities
html
<div class="p-3 text-primary-emphasis bg-primary-subtle border border-primary-subtle rounded-3">
  Example element with utilities
</div>

ألوان السمة (Theme colors)

نستخدم مجموعة فرعية من جميع الألوان لإنشاء لوحة ألوان أصغر لتوليد مخططات الألوان، وهي متاحة أيضاً كمتغيرات Sass وخريطة (map) Sass في ملف scss/_variables.scss الخاص بـ Bootstrap.

Primary
Secondary
Success
Danger
Warning
Info
Light
Dark

جميع هذه الألوان متاحة كخريطة (map) Sass، $theme-colors.

$theme-colors: (
  "primary":    $primary,
  "secondary":  $secondary,
  "success":    $success,
  "info":       $info,
  "warning":    $warning,
  "danger":     $danger,
  "light":      $light,
  "dark":       $dark
);

Check out our Sass maps and loops docs for how to modify these colors.

جميع الألوان

جميع ألوان الـ Bootstrap متاحة كمتغيرات Sass وخريطة (map) Sass في ملف scss/_variables.scss. ولتجنب زيادة أحجام الملفات، لا نقوم بإنشاء فئات (classes) للنصوص أو ألوان الخلفية لكل متغير من هذه المتغيرات. بدلاً من ذلك، نختار مجموعة فرعية من هذه الألوان لـ لوحة ألوان السمة.

تأكد من مراقبة نسب التباين أثناء تخصيص الألوان. كما هو موضح أدناه، أضفنا ثلاث نسب تباين لكل لون من الألوان الرئيسية—واحدة لألوان العينة الحالية، وواحدة مقابل اللون الأبيض، وواحدة مقابل اللون الأسود.

$blue#0d6efd
$blue-100
$blue-200
$blue-300
$blue-400
$blue-500
$blue-600
$blue-700
$blue-800
$blue-900
$indigo#6610f2
$indigo-100
$indigo-200
$indigo-300
$indigo-400
$indigo-500
$indigo-600
$indigo-700
$indigo-800
$indigo-900
$purple#6f42c1
$purple-100
$purple-200
$purple-300
$purple-400
$purple-500
$purple-600
$purple-700
$purple-800
$purple-900
$pink#d63384
$pink-100
$pink-200
$pink-300
$pink-400
$pink-500
$pink-600
$pink-700
$pink-800
$pink-900
$red#dc3545
$red-100
$red-200
$red-300
$red-400
$red-500
$red-600
$red-700
$red-800
$red-900
$orange#fd7e14
$orange-100
$orange-200
$orange-300
$orange-400
$orange-500
$orange-600
$orange-700
$orange-800
$orange-900
$yellow#ffc107
$yellow-100
$yellow-200
$yellow-300
$yellow-400
$yellow-500
$yellow-600
$yellow-700
$yellow-800
$yellow-900
$green#198754
$green-100
$green-200
$green-300
$green-400
$green-500
$green-600
$green-700
$green-800
$green-900
$teal#20c997
$teal-100
$teal-200
$teal-300
$teal-400
$teal-500
$teal-600
$teal-700
$teal-800
$teal-900
$cyan#0dcaf0
$cyan-100
$cyan-200
$cyan-300
$cyan-400
$cyan-500
$cyan-600
$cyan-700
$cyan-800
$cyan-900
$gray-500#adb5bd
$gray-100
$gray-200
$gray-300
$gray-400
$gray-500
$gray-600
$gray-700
$gray-800
$gray-900

$black #000

$white #fff

ملاحظات حول الـ Sass

لا يمكن للـ Sass توليد المتغيرات برمجياً، لذا قمنا بإنشاء متغيرات لكل درجة تفتيح (tint) وتغميق (shade) يدوياً. نحن نحدد القيمة المتوسطة (على سبيل المثال $blue-500) ونستخدم دوال ألوان مخصصة لتفتيح (lighten) أو تغميق (darken) ألواننا عبر دالة الألوان mix() الخاصة بالـ Sass.

استخدام mix() ليس هو نفسه استخدام lighten() و darken()؛ حيث تقوم الأولى بدمج اللون المحدد مع الأبيض أو الأسود، بينما تقوم الثانية فقط بتعديل قيمة السطوع لكل لون. والنتيجة هي مجموعة ألوان أكثر اكتمالاً، كما هو موضح في عرض CodePen هذا.

تستخدم الدوال tint-color() و shade-color() دالة mix() جنباً إلى جنب مع المتغير $theme-color-interval الخاص بنا، والذي يحدد قيمة مئوية متدرجة لكل لون مختلط ننتجه. راجع ملفي scss/_functions.scss و scss/_variables.scss للحصول على الكود المصدري الكامل.

خرائط الـ Sass للألوان

تتضمن ملفات الـ Sass المصدرية لـ Bootstrap ثلاث خرائط (maps) لمساعدتك في التكرار بسرعة وسهولة عبر قائمة من الألوان وقيم الـ hex الخاصة بها.

  • $colors تسرد جميع ألواننا الأساسية المتاحة (500)
  • $theme-colors تسرد جميع ألوان السمة المسماة دلالياً (موضحة أدناه)
  • $grays تسرد جميع درجات التفتيح والتغميق للون الرمادي

داخل scss/_variables.scss ، ستجد متغيرات ألوان الـ Bootstrap وخريطة (map) الـ Sass. إليك مثال على خريطة $colors الـ Sass:

$colors: (
  "blue":       $blue,
  "indigo":     $indigo,
  "purple":     $purple,
  "pink":       $pink,
  "red":        $red,
  "orange":     $orange,
  "yellow":     $yellow,
  "green":      $green,
  "teal":       $teal,
  "cyan":       $cyan,
  "black":      $black,
  "white":      $white,
  "gray":       $gray-600,
  "gray-dark":  $gray-800
);

قم بإضافة أو إزالة أو تعديل القيم داخل الخريطة (map) لتحديث كيفية استخدامها في العديد من المكونات الأخرى. لسوء الحظ، في الوقت الحالي، لا يستخدم كل مكون خريطة الـ Sass هذه. ستسعى التحديثات المستقبلية إلى تحسين ذلك. وحتى ذلك الحين، خطط لاستخدام متغيرات ${color} وهذه الخريطة (map) الـ Sass.

مثال

إليك كيفية استخدام هذه المتغيرات في الـ Sass الخاص بك:

.alpha { color: $purple; }
.beta {
  color: $yellow-300;
  background-color: $indigo-900;
}

فئات (classes) الأدوات المساعدة لـ اللون و الخلفية متاحة أيضاً لتعيين color و background-color باستخدام قيم الألوان 500.

توليد الأدوات المساعدة (Generating utilities)

تمت الإضافة في الإصدار v5.1.0

لا يتضمن الـ Bootstrap أدوات مساعدة لـ color و background-color لكل متغير لون، ولكن يمكنك توليد هذه الأدوات بنفسك باستخدام utility API وخرائط الـ Sass الموسعة التي تمت إضافتها في الإصدار v5.1.0.

  1. للبدء، تأكد من استيراد الدوال (functions)، والمتغيرات (variables)، والمزجات (mixins)، والأدوات المساعدة (utilities) الخاصة بنا.
  2. استخدم الدالة (function) map-merge-multiple() لدمج عدة خرائط (maps) Sass معاً بسرعة في خريطة (map) جديدة.
  3. ادمج هذه الخريطة المجمعة الجديدة لتوسيع أي أداة مساعدة باسم فئة (class) بتنسيق {color}-{level}.

إليك مثال يقوم بتوليد أدوات مساعدة لألوان النصوص (على سبيل المثال .text-purple-500) باستخدام الخطوات المذكورة أعلاه.

@import "bootstrap/scss/functions";
@import "bootstrap/scss/variables";
@import "bootstrap/scss/variables-dark";
@import "bootstrap/scss/maps";
@import "bootstrap/scss/mixins";
@import "bootstrap/scss/utilities";

$all-colors: map-merge-multiple($blues, $indigos, $purples, $pinks, $reds, $oranges, $yellows, $greens, $teals, $cyans);

$utilities: map-merge(
  $utilities,
  (
    "color": map-merge(
      map-get($utilities, "color"),
      (
        values: map-merge(
          map-get(map-get($utilities, "color"), "values"),
          (
            $all-colors
          ),
        ),
      ),
    ),
  )
);

@import "bootstrap/scss/utilities/api";

سيؤدي هذا إلى توليد أدوات مساعدة جديدة .text-{color}-{level} لكل لون ومستوى. يمكنك القيام بنفس الشيء لأي أداة مساعدة أو خاصية أخرى أيضاً.