טימינג באָאָצטראַפּ
קאַסטאַמייז Bootstrap 4 מיט אונדזער נייַ געבויט-אין סאַסס וועריאַבאַלז פֿאַר גלאבאלע סטיל פּרעפֿערענצן פֿאַר גרינג טימינג און קאָמפּאָנענט ענדערונגען.
אין Bootstrap 3, טימינג איז לאַרגעלי געטריבן דורך וועריאַבאַל אָוווערריידז אין ווייניקער, מנהג CSS און אַ באַזונדער טעמע סטילעשעעט וואָס מיר ינקלודעד אין אונדזער dist
טעקעס. מיט עטלעכע מי, איר קענען גאָר רידיזיין די קוק פון Bootstrap 3 אָן רירנדיק די האַרץ טעקעס. Bootstrap 4 גיט אַ באַקאַנט, אָבער אַ ביסל אַנדערש צוגאַנג.
איצט, טימינג איז אַטשיווד דורך סאַס וועריאַבאַלז, סאַס מאַפּס און מנהג קסס. עס איז ניט מער דעדאַקייטאַד טעמע סטילשעעט; אַנשטאָט, איר קענען געבן די געבויט-אין טעמע צו לייגן גראַדיענץ, שאַדאָוז און מער.
ניצן אונדזער מקור סאַסס טעקעס צו נוצן וועריאַבאַלז, מאַפּס, מיקסינס און מער.
ווען מעגלעך, ויסמיידן מאָדיפיצירן Bootstrap ס האַרץ טעקעס. פֿאַר Sass, דאָס מיינט צו שאַפֿן דיין אייגענע סטילעשעעט וואָס ימפּאָרץ Bootstrap אַזוי איר קענען מאָדיפיצירן און פאַרברייטערן עס. אויב איר נוצן אַ פּעקל פאַרוואַלטער ווי npm, איר וועט האָבן אַ טעקע סטרוקטור וואָס קוקט ווי דאָס:
אויב איר האָט דאַונלאָודיד אונדזער מקור טעקעס און טאָן ניט נוצן אַ פּעקל פאַרוואַלטער, איר וועט וועלן צו מאַניואַלי סעטאַפּ עפּעס ענלעך צו די סטרוקטור, און האַלטן די מקור טעקעס פון Bootstrap באַזונדער פון דיין אייגענע.
אין דיין custom.scss
, איר וועט אַרייַנפיר באָאָטסטראַפּ ס מקור סאַס טעקעס. איר האָבן צוויי אָפּציעס: אַרייַננעמען אַלע באָאָטסטראַפּ, אָדער קלייַבן די פּאַרץ איר דאַרפֿן. מיר מוטיקן די יענער, כאָטש זיין אַווער אַז עס זענען עטלעכע רעקווירעמענץ און דיפּענדאַנסיז צווישן אונדזער קאַמפּאָונאַנץ. איר אויך דאַרפֿן צו אַרייַננעמען עטלעכע דזשאַוואַסקריפּט פֿאַר אונדזער פּלוגינס.
מיט דעם סעטאַפּ אין פּלאַץ, איר קענען אָנהייבן צו מאָדיפיצירן קיין פון די סאַסס וועריאַבאַלז און מאַפּס אין דיין custom.scss
. איר קענט אויך אָנהייבן צו לייגן פּאַרץ פון Bootstrap אונטער די // Optional
אָפּטיילונג ווי דארף. מיר פֿאָרשלאָגן ניצן די פול אַרייַנפיר אָנלייגן פון אונדזער bootstrap.scss
טעקע ווי דיין סטאַרטינג פונט.
יעדער Sass בייַטעוודיק אין Bootstrap 4 כולל די !default
פאָן וואָס אַלאַוז איר צו אָווועררייד די פעליקייַט ווערט פון די בייַטעוודיק אין דיין אייגענע Sass אָן מאָדיפיצירן די מקור קאָד פון Bootstrap. נאָכמאַכן און פּאַפּ וועריאַבאַלז ווי דארף, מאָדיפיצירן זייער וואַלועס און באַזייַטיקן די !default
פאָן. אויב אַ בייַטעוודיק איז שוין אַסיינד, עס וועט נישט זיין שייַעך-אַסיינד דורך די פעליקייַט וואַלועס אין Bootstrap.
וועריאַבאַל אָוווערריידז אין דער זעלביקער סאַסס טעקע קענען קומען איידער אָדער נאָך די פעליקייַט וועריאַבאַלז. אָבער, ווען אָוווערריידינג אַריבער Sass טעקעס, דיין אָוווערריידז מוזן קומען איידער איר אַרייַנפיר באָאָטסטראַפּ ס סאַס טעקעס.
דאָ ס אַ ביישפּיל וואָס ענדערונגען די background-color
און color
פֿאַר די <body>
ווען ימפּאָרטינג און קאַמפּיילינג Bootstrap דורך npm:
איבערחזרן ווי נייטיק פֿאַר קיין בייַטעוודיק אין Bootstrap, אַרייַנגערעכנט די גלאבאלע אָפּציעס אונטן.
Bootstrap 4 כולל אַ האַנדפול פון סאַס מאַפּס, שליסל ווערט פּערז וואָס מאַכן עס גרינגער צו דזשענערייט משפחות פון פֿאַרבונדענע CSS. מיר נוצן Sass מאַפּס פֿאַר אונדזער פארבן, גריד ברעאַקפּאָינץ, און מער. פּונקט ווי סאַס וועריאַבאַלז, אַלע סאַס מאַפּס אַרייַננעמען די !default
פאָן און קענען זיין אָווועררידאַן און עקסטענדעד.
עטלעכע פון אונדזער סאַס מאַפּס זענען מערדזשד אין ליידיק אָנעס דורך פעליקייַט. דאָס איז געטאן צו לאָזן גרינג יקספּאַנשאַן פון אַ געגעבן Sass מאַפּע, אָבער קומט אין די פּרייַז פון מאכן רימוווינג זאכן פון אַ מאַפּע אַ ביסל מער שווער.
צו מאָדיפיצירן אַ יגזיסטינג קאָליר אין אונדזער $theme-colors
מאַפּע, לייג די פאלגענדע צו דיין מנהג Sass טעקע:
צו לייגן אַ נייַע קאָליר צו $theme-colors
, לייג די נייַע שליסל און ווערט:
צו באַזייַטיקן פארבן פון $theme-colors
, אָדער קיין אנדערע מאַפּע, נוצן map-remove
:
באָאָטסטראַפּ אַסומז די בייַזייַן פון עטלעכע ספּעציפיש שליסלען אין Sass מאַפּס ווי מיר געוויינט און פאַרברייטערן די זיך. ווען איר קאַסטאַמייז די ינקלודעד מאַפּס, איר קען טרעפן ערראָרס ווען אַ ספּעציפיש סאַסס מאַפּע ס שליסל איז געניצט.
פֿאַר בייַשפּיל, מיר נוצן די primary
, success
, און danger
שליסלען פֿון $theme-colors
פֿאַר לינקס, קנעפּלעך און פאָרעם שטאַטן. ריפּלייסינג די וואַלועס פון די שליסלען זאָל נישט פאָרשטעלן קיין ישוז, אָבער רימוווינג זיי קען פאַרשאַפן סאַסס זאַמלונג ישוז. אין די ינסטאַנסיז, איר דאַרפֿן צו מאָדיפיצירן די Sass קאָד וואָס ניצט די וואַלועס.
באָאָטסטראַפּ ניצט עטלעכע סאַס פאַנגקשאַנז, אָבער בלויז אַ סאַבסעט איז אָנווענדלעך צו אַלגעמיין טימינג. מיר האָבן אַרייַנגערעכנט דריי פאַנגקשאַנז צו באַקומען וואַלועס פון די קאָליר מאַפּס:
דאָס אַלאַוז איר צו קלייַבן איין קאָליר פון אַ Sass מאַפּע פיל ווי איר וואָלט נוצן אַ קאָליר בייַטעוודיק פון v3.
מיר אויך האָבן אן אנדער פונקציע צו באַקומען אַ באַזונדער קאָליר פון די $theme-colors
מאַפּע. נעגאַטיוו לעוועלס וואַלועס וועט לייטאַן די קאָליר, בשעת העכער לעוועלס וועט דאַרקאַן.
אין פיר, איר'ד רופן די פֿונקציע און פאָרן אין צוויי פּאַראַמעטערס: די נאָמען פון די קאָליר פון $theme-colors
(למשל, ערשטיק אָדער געפאַר) און אַ נומעריק מדרגה.
נאָך פאַנגקשאַנז קענען זיין מוסיף אין דער צוקונפֿט אָדער דיין אייגענע מנהג Sass צו שאַפֿן מדרגה פאַנגקשאַנז פֿאַר נאָך סאַס מאַפּס, אָדער אפילו דזשאַנעריק אויב איר ווילט צו זיין מער ווערבאָוס.
איין נאָך פונקציע וואָס מיר אַרייַננעמען אין Bootstrap איז די קאָליר קאַנטראַסט פונקציע, color-yiq
. עס ניצט די YIQ קאָליר פּלאַץ צו אויטאָמאַטיש צוריקקומען אַ ליכט ( #fff
) אָדער טונקל ( #111
) קאַנטראַסט קאָליר באזירט אויף די ספּעסיפיעד באַזע קאָליר. די פֿונקציע איז ספּעציעל נוציק פֿאַר מיקסינס אָדער לופּס ווו איר דזשענערייט קייפל קלאסן.
פֿאַר בייַשפּיל, צו דזשענערייט קאָליר סוואַטשיז פון אונדזער $theme-colors
מאַפּע:
עס קענען אויך זיין געניצט פֿאַר איין-אַוועק קאַנטראַסט באדערפענישן:
איר קענט אויך ספּעציפיצירן אַ באַזע קאָליר מיט אונדזער קאָליר מאַפּע פאַנגקשאַנז:
קאַסטאַמייז Bootstrap 4 מיט אונדזער געבויט-אין מנהג וועריאַבאַלז טעקע און לייכט באַשטימען גלאבאלע CSS פּרעפֿערענצן מיט נייַע $enable-*
Sass וועריאַבאַלז. אָווועררייד אַ וועריאַבאַל ווערט און ריקאָמפּילע מיט npm run test
ווי דארף.
איר קענען געפֿינען און קאַסטאַמייז די וועריאַבאַלז פֿאַר שליסל גלאבאלע אָפּציעס אין אונדזער _variables.scss
טעקע.
וואַריאַבלע | וואַלועס | באַשרייַבונג |
---|---|---|
$spacer |
1rem (פעליקייַט), אָדער קיין ווערט> 0 |
ספּעציפיצירט די פעליקייַט ספּייסער ווערט צו פּראָגראַממאַטיק דזשענערייט אונדזער ספּייסער יוטילאַטיז . |
$enable-rounded |
true (פעליקייַט) אָדערfalse |
ינייבאַלז פּרעדעפינעד border-radius סטיילז אויף פאַרשידן קאַמפּאָונאַנץ. |
$enable-shadows |
true אָדער false (פעליקייַט) |
ינייבאַלז פּרעדעפינעד box-shadow סטיילז אויף פאַרשידן קאַמפּאָונאַנץ. |
$enable-gradients |
true אָדער false (פעליקייַט) |
ינייבאַלז פּרעדעפינעד גראַדיענץ דורך background-image סטיילז אויף פאַרשידן קאַמפּאָונאַנץ. |
$enable-transitions |
true (פעליקייַט) אָדערfalse |
ינייבאַלז פּרעדעפינעד transition ס אויף פאַרשידן קאַמפּאָונאַנץ. |
$enable-hover-media-query |
true אָדער false (פעליקייַט) |
דיפּרישיייטיד |
$enable-grid-classes |
true (פעליקייַט) אָדערfalse |
ינייבאַלז די דור פון קסס קלאסן פֿאַר די גריד סיסטעם (למשל, .container , .row , .col-md-1 , אאז"ו ו). |
$enable-caret |
true (פעליקייַט) אָדערfalse |
ינייבאַלז פּסעוודאָ עלעמענט קאַרעט אויף .dropdown-toggle . |
$enable-print-styles |
true (פעליקייַט) אָדערfalse |
ינייבאַלז סטיילז פֿאַר אָפּטימיזינג דרוקן. |
פילע פון באָאָטסטראַפּ ס פאַרשידן קאַמפּאָונאַנץ און יוטילאַטיז זענען געבויט דורך אַ סעריע פון פארבן דיפיינד אין אַ סאַס מאַפּע. די מאַפּע קענען זיין לאָודיד אין Sass צו געשווינד דזשענערייט אַ סעריע פון רולסעץ.
אַלע פֿאַרבן בנימצא אין Bootstrap 4, זענען בנימצא ווי סאַס וועריאַבאַלז און אַ סאַס מאַפּע אין אונדזער scss/_variables.scss
טעקע. דאָס וועט זיין יקספּאַנדיד אין סאַבסאַקוואַנט מינערווערטיק ריליסיז צו לייגן נאָך שיידז, פיל ווי די גרייסקאַלע פּאַליטרע מיר שוין אַרייַננעמען.
דאָ ס ווי איר קענען נוצן די אין דיין Sass:
קאָליר נוצן קלאסן זענען אויך בנימצא פֿאַר באַשטעטיקן color
און background-color
.
אין דער צוקונפֿט, מיר צילן צו צושטעלן Sass מאַפּס און וועריאַבאַלז פֿאַר שיידז פון יעדער קאָליר ווי מיר האָבן געטאן מיט די גרייסקאַלע פארבן אונטן.
מיר נוצן אַ סאַבסעט פון אַלע פארבן צו שאַפֿן אַ קלענערער קאָליר פּאַליטרע פֿאַר דזשענערייטינג קאָליר סקימז, אויך בנימצא ווי Sass וועריאַבאַלז און אַ Sass מאַפּע אין אונדזער scss/_variables.scss
טעקע.
אַ ברייט גאַנג פון גרוי וועריאַבאַלז און אַ סאַס מאַפּע scss/_variables.scss
פֿאַר קאָנסיסטענט שיידז פון גרוי אין דיין פּרויעקט.
אין _variables.scss
, איר וועט געפֿינען אונדזער קאָליר וועריאַבאַלז און Sass מאַפּע. דאָ ס אַ ביישפּיל פון די $colors
Sass מאַפּע:
לייג, אַראָפּנעמען אָדער מאָדיפיצירן וואַלועס אין דער מאַפּע צו דערהייַנטיקן ווי זיי זענען געניצט אין פילע אנדערע קאַמפּאָונאַנץ. צום באַדויערן אין דער צייט, ניט יעדער קאָמפּאָנענט ניצט דעם Sass מאַפּע. צוקונפֿט דערהייַנטיקונגען וועלן שטרעבן צו פֿאַרבעסערן דעם. ביז דעמאָלט, פּלאַן צו נוצן די ${color}
וועריאַבאַלז און דעם Sass מאַפּע.
פילע פון Bootstrap ס קאַמפּאָונאַנץ און יוטילאַטיז זענען געבויט מיט @each
לופּס וואָס יטערייט איבער אַ Sass מאַפּע. דאָס איז ספּעציעל נוציק פֿאַר דזשענערייטינג וועריאַנץ פון אַ קאָמפּאָנענט דורך אונדזער $theme-colors
און קריייטינג אָפּרופיק וועריאַנץ פֿאַר יעדער ברייקפּוינט. ווען איר קאַסטאַמייז די סאַס מאַפּס און ריקאָמפּילע, איר וועט אויטאָמאַטיש זען דיין ענדערונגען שפיגלט אין די לופּס.
פילע פון באָאָטסטראַפּ ס קאַמפּאָונאַנץ זענען געבויט מיט אַ באַזע-מאָדיפיער קלאַס צוגאַנג. דאָס מיינט אַז דער מערהייט פון די סטילינג איז קאַנטיינד צו אַ באַזע קלאַס (למשל, .btn
) בשעת נוסח ווערייישאַנז זענען קאַנפיינד צו מאָדיפיער קלאסן (למשל, .btn-danger
). די מאָדיפיער קלאסן זענען געבויט פֿון דער $theme-colors
מאַפּע צו קאַסטאַמייז די נומער און נאָמען פון אונדזער מאָדיפיער קלאסן.
דאָ זענען צוויי ביישפילן פון ווי מיר שלייף איבער די $theme-colors
מאַפּע צו דזשענערייט מאָדיפיערס צו די .alert
קאָמפּאָנענט און אַלע אונדזער .bg-*
הינטערגרונט יוטילאַטיז.
די סאַס לופּס זענען אויך נישט לימיטעד צו קאָליר מאַפּס. איר קענען אויך דזשענערייט אָפּרופיק ווערייישאַנז פון דיין קאַמפּאָונאַנץ אָדער יוטילאַטיז. נעמען פֿאַר בייַשפּיל אונדזער אָפּרופיק טעקסט אַליינמאַנט יוטילאַטיז ווו מיר מישן אַ @each
שלייף פֿאַר די $grid-breakpoints
סאַסס מאַפּע מיט אַ מידיאַ אָנפֿרעג.
אויב איר דאַרפֿן צו מאָדיפיצירן דיין $grid-breakpoints
, דיין ענדערונגען וועלן צולייגן צו אַלע די לופּס יטערייטינג איבער די מאַפּע.
Bootstrap 4 ינקלודז אַרום צוויי טוץ CSS מנהג פּראָפּערטיעס (וועריאַבאַלז) אין זיין קאַמפּיילד CSS. די צושטעלן גרינג אַקסעס צו קאַמאַנלי געוויינט וואַלועס ווי אונדזער טעמע פארבן, ברעאַקפּאָינץ און ערשטיק שריפֿט סטאַקס ווען איר אַרבעט אין דיין בלעטערער ס ינספּעקטאָר, אַ קאָד זאַמדקאַסטן אָדער אַלגעמיין פּראָוטאַטייפּ.
דאָ זענען די וועריאַבאַלז מיר אַרייַננעמען (טאָן אַז די :root
איז פארלאנגט). זיי זענען ליגן אין אונדזער _root.scss
טעקע.
CSS וועריאַבאַלז פאָרשלאָגן ענלעך בייגיקייַט צו די וועריאַבאַלז פון Sass, אָבער אָן די נויט פֿאַר זאַמלונג איידער זיי געדינט צו דעם בלעטערער. פֿאַר בייַשפּיל, דאָ מיר רעסעטטינג אונדזער בלאַט ס שריפֿט און לינק סטיילז מיט CSS וועריאַבאַלז.
איר קענט אויך נוצן אונדזער ברייקפּוינט וועריאַבאַלז אין דיין מידיאַ קוויריז: