עובר ל-v4
Bootstrap 4 הוא שכתוב משמעותי של הפרויקט כולו. השינויים הבולטים ביותר מסוכמים להלן, ולאחר מכן שינויים ספציפיים יותר לרכיבים הרלוונטיים.
במעבר מבטא 3 לגרסה היציבה שלנו 4.0, אין שינויים פורצים, אבל יש כמה שינויים בולטים.
-
תיקנו כלי עזר להדפסה שבורים. בעבר, שימוש
.d-print-*
במחלקה היה מבטל באופן בלתי צפוי כל.d-*
מחלקה אחרת. כעת, הם תואמים את כלי העזר האחרים שלנו לתצוגה וחלים רק על המדיה הזו (@media print
). -
כלי עזר זמינים לתצוגת הדפסה מורחבים כדי להתאים לכלי עזר אחרים. בטא 3 ומעלה היו רק
block
,inline-block
,inline
וnone
. יציב v4 נוסףflex
,inline-flex
,table
,table-row
וtable-cell
. -
תיקנו עיבוד תצוגה מקדימה של הדפסה בדפדפנים עם סגנונות הדפסה חדשים המציינים
@page
size
.
אמנם בטא 2 ראתה את עיקר השינויים השבירים שלנו במהלך שלב הבטא, אבל עדיין יש לנו כמה שצריך לטפל בהם במהדורת בטא 3. שינויים אלה חלים אם אתה מעדכן לבטא 3 מ-Beta 2 או כל גרסה ישנה יותר של Bootstrap.
- הסר את
$thumbnail-transition
המשתנה שאינו בשימוש. לא העברנו שום דבר, אז זה היה רק קוד נוסף. - חבילת npm אינה כוללת עוד קבצים אחרים מלבד קבצי המקור וה-dist שלנו; אם הסתמכת עליהם והרצת את הסקריפטים שלנו דרך
node_modules
התיקיה, עליך להתאים את זרימת העבודה שלך.
-
כתב מחדש הן תיבות סימון ומכשירי רדיו מותאמים אישית והן ברירת מחדל. כעת, לשניהם יש מבנה HTML תואם (חיצוני
<div>
עם אח<input>
ו-<label>
) ואותם סגנונות פריסה (ברירת מחדל מוערמת, בשורה עם מחלקה משנה). זה מאפשר לנו לעצב את התווית בהתבסס על מצב הקלט, לפשט את התמיכהdisabled
בתכונה (בעבר דרשה מחלקה אב) ולתמוך טוב יותר באימות הטופס שלנו.כחלק מכך, שינינו את ה-CSS לניהול מספר
background-image
ים בתיבות סימון ומכשירי רדיו מותאמים אישית. בעבר,.custom-control-indicator
לרכיב שהוסר כעת היה צבע הרקע, השיפוע וסמל ה-SVG. התאמה אישית של שיפוע הרקע פירושה החלפת כל אלה בכל פעם שאתה צריך לשנות רק אחד. כעת, יש לנו.custom-control-label::before
עבור המילוי והשיפוע.custom-control-label::after
ומטפל בסמל.כדי לבצע צ'ק מותאם אישית מוטבע, הוסף
.custom-control-inline
. -
בורר מעודכן עבור קבוצות לחצנים מבוססות קלט. במקום
[data-toggle="buttons"] { }
עבור סגנון והתנהגות, אנו משתמשיםdata
בתכונה רק עבור התנהגויות JS ומסתמכים על.btn-group-toggle
מחלקה חדשה לסטיילינג. -
הוסר
.col-form-legend
לטובת משופר מעט.col-form-label
. בדרך זו.col-form-label-sm
וניתן.col-form-label-lg
להשתמש בו על<legend>
אלמנטים בקלות. -
קלט קבצים מותאמים אישית קיבלו שינוי
$custom-file-text
במשתנה Sass שלהם. זה כבר לא מפת Sass מקוננת וכעת מפעיל רק מחרוזת אחת -Browse
הכפתור מכיוון שהוא כעת האלמנט הפסאודו היחיד שנוצר מה-Sass שלנו. הטקסטChoose file
מגיע כעת מה-.custom-file-label
.
-
תוספים של קבוצת קלט הם כעת ספציפיים למיקום שלהם ביחס לקלט. ירדנו
.input-group-addon
ועבור.input-group-btn
שני שיעורים חדשים,.input-group-prepend
ו.input-group-append
. עליך להשתמש במפורש ב-append או prepend כעת, מה שמפשט הרבה מה-CSS שלנו. בתוך תוספת או תוספת, מקם את הכפתורים שלך כפי שהיו קיימים בכל מקום אחר, אך עטוף טקסט ב-.input-group-text
. -
סגנונות אימות נתמכים כעת, וכך גם מספר קלטים (אם כי ניתן לאמת רק קלט אחד לכל קבוצה).
-
שיעורי גודל חייבים להיות על האב
.input-group
ולא על רכיבי הטופס הבודדים.
בזמן בטא, אנו שואפים שלא יהיו שינויים פורצים. עם זאת, דברים לא תמיד הולכים כמתוכנן. להלן השינויים השבירה שיש לזכור בעת מעבר מבטא 1 לבטא 2.
- המשתנה הוסר
$badge-color
והשימוש בו ב-.badge
. אנו משתמשים בפונקציית ניגודיות צבע כדי לבחורcolor
בהתבסס עלbackground-color
, כך שהמשתנה מיותר. - שונה שם
grayscale()
הפונקציה לgray()
כדי למנוע התנגשות עםgrayscale
המסנן המקורי של CSS. - שונה שמות
.table-inverse
,.thead-inverse
, ו-.thead-default
ו.*-dark
,.*-light
התואמים את ערכות הצבעים שלנו בשימוש במקומות אחרים. - טבלאות רספונסיביות מייצרות כעת מחלקות עבור כל נקודת שבירה של רשת. זה נפרד מבטא 1 בכך
.table-responsive
שהשתמשת בו דומה יותר ל-.table-responsive-md
. כעת תוכל להשתמש.table-responsive
או.table-responsive-{sm,md,lg,xl}
לפי הצורך. - התמיכה ב-Bower הופסקה מכיוון שמנהל החבילות הוצאה משימוש עבור חלופות (למשל, Yarn או npm). לפרטים, ראה bower/bower#2298 .
- Bootstrap עדיין דורש jQuery 1.9.1 ומעלה, אבל מומלץ להשתמש בגרסה 3.x מכיוון שהדפדפנים הנתמכים של v3.x הם אלו שה-Bootstrap תומך בתוספת ל-v3.x יש כמה תיקוני אבטחה.
- הסירו את
.form-control-label
המחלקה שאינה בשימוש. אם אכן השתמשת במחלקה הזו, זה היה כפיל של.col-form-label
המחלקה שמרכזה את ה-A אנכית<label>
עם הקלט המשויך לה בפריסות טופס אופקיות. - שינה את ה-
color-yiq
mixin שכלל אתcolor
המאפיין לפונקציה שמחזירה ערך, ומאפשרת לך להשתמש בו עבור כל מאפיין CSS. לדוגמה, במקוםcolor-yiq(#000)
, היית כותבcolor: color-yiq(#000);
.
- הציג
pointer-events
שימוש חדש במודלים. החיצוני.modal-dialog
עובר דרך אירועים עםpointer-events: none
טיפול בקליקים מותאם אישית (מה שמאפשר פשוט להאזין בלחיצה.modal-backdrop
כלשהי), ולאחר מכן מנטרל את זה.modal-content
עםpointer-events: auto
.
להלן פריטי הכרטיסים הגדולים שתרצה להיות מודע אליהם בעת המעבר מ-v3 ל-v4.
- התמיכה ב-IE8, IE9 ו-iOS 6 הופסקה. v4 הוא כעת רק IE10+ ו- iOS 7+. עבור אתרים הזקוקים לאחד מאלה, השתמש ב-v3.
- נוספה תמיכה רשמית לדפדפן ו-WebView של Android v5.0 Lollipop. גרסאות קודמות של דפדפן אנדרואיד ושל WebView נותרו נתמכות באופן לא רשמי בלבד.
- Flexbox מופעל כברירת מחדל. באופן כללי זה אומר התרחקות מצפים ועוד על פני הרכיבים שלנו.
- עבר מפחות ל- Sass עבור קובצי ה-CSS המקור שלנו.
- עברה מ-
px
לrem
כיחידת ה-CSS הראשית שלנו, אם כי עדיין נעשה שימוש בפיקסלים עבור שאילתות מדיה והתנהגות רשת מכיוון שיציאות התצוגה של המכשיר אינן מושפעות מגודל הסוג. - גודל הגופן הגלובלי גדל מ-
14px
ל16px
. - שינו את שכבות הרשת כדי להוסיף אפשרות חמישית (התייחסות למכשירים קטנים יותר בתחתית
576px
ומתחת) והסירו את-xs
התיקונים ממחלקות אלו. דוגמה:.col-6.col-sm-4.col-md-3
. - החליף את ערכת הנושא האופציונלית הנפרדת באפשרויות הניתנות להגדרה באמצעות משתני SCSS (למשל,
$enable-gradients: true
). - בניית מערכת שעברה שיפוץ לשימוש בסדרה של סקריפטים npm במקום Grunt. ראה
package.json
עבור כל התסריטים, או הפרויקט שלנו Readme לצרכי פיתוח מקומיים. - שימוש לא מגיב ב-Bootstrap אינו נתמך עוד.
- הפסיק את ה-Customizer המקוון לטובת תיעוד הגדרה נרחב יותר ובנייה מותאמות אישית.
- נוספו עשרות מחלקות שירות חדשות עבור זוגות נפוצים של ערך נכסי CSS וקיצורי דרך למרווחי שוליים/ריפוד.
- הועבר ל-flexbox.
- נוספה תמיכה עבור flexbox ב-grid mixins ומחלקות מוגדרות מראש.
- כחלק מ-flexbox, כללה תמיכה במחלקות יישור אנכי ואופקי.
- שמות מחלקות רשת מעודכנים ושכבת רשת חדשה.
- נוספה
sm
שכבת רשת חדשה למטה768px
לשליטה פרטנית יותר. כעת יש לנוxs
,sm
,md
,lg
וxl
. זה גם אומר שכל שכבה עלתה רמה אחת (אז.col-md-6
ב-v3 הוא כעת.col-lg-6
ב-v4). xs
מחלקות רשת שונו כך שלא יחייבו את האינפקס כדי לייצג בצורה מדויקת יותר שהם מתחילים להחיל סגנונותmin-width: 0
בערך פיקסל מוגדר ולא. במקום.col-xs-6
, זה עכשיו.col-6
. כל שאר שכבות הרשת דורשות את התיקון (למשל,sm
).
- נוספה
- גדלי רשת, שילובים ומשתנים מעודכנים.
- למרזבי רשת יש כעת מפת Sass כך שתוכל לציין רוחב מרזב ספציפי בכל נקודת שבירה.
- תערובות רשת מעודכנות כדי להשתמש
make-col-ready
במיקסין הכנה ו-make-col
כדי להגדיר אתflex
ועבורmax-width
גודל עמודה בודדת. - שינו את נקודות השבירה של המדיה של מערכת הרשת ואת רוחבי המכולה כדי לקחת בחשבון את שכבת הרשת החדשה ולהבטיח שהעמודות מתחלקות באופן שווה
12
ברוחב המקסימלי שלהן. - נקודות עצירה של רשת ורוחב מיכל מטופלים כעת באמצעות מפות Sass (
$grid-breakpoints
ו$container-max-widths
) במקום קומץ משתנים נפרדים. אלה מחליפים את@screen-*
המשתנים לחלוטין ומאפשרים לך להתאים אישית את שכבות הרשת. - גם שאילתות המדיה השתנו. במקום לחזור על הצהרות שאילתות המדיה שלנו באותו ערך בכל פעם, כעת יש לנו
@include media-breakpoint-up/down/only
. עכשיו, במקום לכתוב@media (min-width: @screen-sm-min) { ... }
, אתה יכול לכתוב@include media-breakpoint-up(sm) { ... }
.
- נפלו לוחות, תמונות ממוזערות ובארות עבור רכיב חדש הכולל הכל, קלפים .
- הפיל את גופן הסמל של Glyphicons. אם אתה צריך סמלים, כמה אפשרויות הן:
- הגרסה במעלה הזרם של Glyphicons
- אוקטיקונים
- פונט מדהים
- עיין בדף הרחבה לקבלת רשימה של חלופות. יש לכם הצעות נוספות? אנא פתח נושא או יחסי ציבור.
- הורד את הפלאגין Affix jQuery.
- אנו ממליצים להשתמש
position: sticky
במקום זאת. עיין בערך HTML5 בבקשה לפרטים והמלצות ספציפיות לפולימילוי. הצעה אחת היא להשתמש@supports
בכלל ליישומו (למשל,@supports (position: sticky) { ... }
)/ - אם השתמשת ב-Afix כדי להחיל סגנונות נוספים שאינם
position
סגנונות, ייתכן שהפוליפילים לא יתמכו במקרה השימוש שלך. אפשרות אחת לשימושים כאלה היא ספריית הצד השלישי ScrollPos-Styler .
- אנו ממליצים להשתמש
- הורד את רכיב הביפר מכיוון שהוא בעצם היה כפתורים מותאמים מעט.
- שינתה כמעט את כל הרכיבים לשימוש יותר בבוררי כיתות לא מקוננים במקום בבוררי ילדים ספציפיים מדי.
רשימה זו מדגישה שינויים מרכזיים לפי רכיבים בין v3.xx ל-v4.0.0.
חדש ב-Bootstrap 4 הוא ה- Reboot , גיליון סגנונות חדש שמתבסס על Normalize עם סגנונות האיפוס הדעתניים שלנו. בוררים המופיעים בקובץ זה משתמשים רק באלמנטים - אין כאן מחלקות. זה מבודד את סגנונות האיפוס שלנו מסגנונות הרכיבים שלנו לגישה מודולרית יותר. כמה מהאיפוסים החשובים ביותר שזה כולל הם box-sizing: border-box
השינוי, מעבר מיחידות em
ליחידות rem
באלמנטים רבים, סגנונות קישור ואיפוסים רבים של רכיבי טופס.
- העביר את כל
.text-
כלי השירות_utilities.scss
לקובץ. - ירד
.page-header
מכיוון, מלבד הגבול, ניתן ליישם את כל הסגנונות שלו באמצעות כלי עזר. .dl-horizontal
הושמט. במקום זאת, השתמש.row
ב-On<dl>
והשתמש במחלקות עמודות רשת (או מיקסינס) על שלה<dt>
ועל<dd>
הילדים.- סגנון מותאם אישית
<blockquote>
עבר למחלקות -.blockquote
והשינוי.blockquote-reverse
. .list-inline
.list-inline-item
כעת דורש שהכיתה החדשה יחולו על פריטי רשימת הילדים שלה .
- שונה שם
.img-responsive
ל.img-fluid
. - שונה שם
.img-rounded
ל.rounded
- שונה שם
.img-circle
ל.rounded-circle
- כמעט כל המופעים של
>
הבורר הוסרו, כלומר טבלאות מקוננות יירשו סגנונות אוטומטית מהוריהם. זה מפשט מאוד את הבוררים וההתאמות האישיות הפוטנציאליות שלנו. - טבלאות רספונסיביות כבר לא דורשות אלמנט עטיפה. במקום זאת, פשוט שים את
.table-responsive
הימין על ה-<table>
. - השם שונה
.table-condensed
לעבור.table-sm
עקביות. - נוספה
.table-inverse
אפשרות חדשה. - נוספו משנה כותרות טבלה:
.thead-default
ו.thead-inverse
. - שמם של מחלקות קונטקסטואליות שינו
.table-
קידומת -. מכאן.active
,.success
,.warning
,.danger
ואל , , ו ..info
_ _.table-active
.table-success
.table-warning
.table-danger
.table-info
- הרכיב שהועבר מתאפס
_reboot.scss
לקובץ. - שונה שם
.control-label
ל.col-form-label
. - שונה שם
.input-lg
ול-.input-sm
ו.form-control-lg
,.form-control-sm
בהתאמה. - ירד
.form-group-*
שיעורים לשם הפשטות. השתמש.form-control-*
בשיעורים במקום זאת כעת. - הורד
.help-block
והחליף אותו.form-text
בטקסט עזרה ברמת הבלוק. לטקסט עזרה מוטבע ואפשרויות גמישות אחרות, השתמש במחלקות שירות כמו.text-muted
. - ירד
.radio-inline
ו.checkbox-inline
. - מאוחדים לתוך המעמדות
.checkbox
השונים ..radio
.form-check
.form-check-*
- טפסים אופקיים שעברו שיפוץ:
- הפיל את
.form-horizontal
דרישת הכיתה. .form-group
כבר לא מחיל סגנונות מה-.row
via mixin, ולכן.row
נדרש כעת עבור פריסות רשת אופקיות (למשל,<div class="form-group row">
).- נוספה
.col-form-label
מחלקה חדשה למרכז אנכי של תוויות עם.form-control
s. - התווסף חדש
.form-row
עבור פריסות טפסים קומפקטיות עם מחלקות הרשת (החלף את שלך.row
עבור a.form-row
ועבור).
- הפיל את
- נוספה תמיכה בטפסים מותאמים אישית (עבור תיבות סימון, מכשירי רדיו, בחירות וקלט קבצים).
- הוחלפו
.has-error
,.has-warning
ומחלקות.has-success
באימות טופס HTML5 באמצעות CSS:invalid
ו:valid
-פסאודו-מחלקות. - שונה שם
.form-control-static
ל.form-control-plaintext
.
- שונה שם
.btn-default
ל.btn-secondary
. - הורד את
.btn-xs
המחלקה לחלוטין מכיוון.btn-sm
שהוא יחסית קטן בהרבה משל v3. - תכונת הלחצן הסטטוסית של
button.js
התוסף jQuery בוטלה. זה כולל את השיטות$().button(string)
ו .$().button('reset')
אנו ממליצים להשתמש במעט JavaScript מותאם אישית במקום זאת, שתהיה לך יתרון להתנהג בדיוק כמו שאתה רוצה.- שים לב שהתכונות האחרות של התוסף (תיבות סימון לחצנים, מכשירי רדיו לחצנים, לחצני החלפה בודדת) נשמרו ב-v4.
- שנה את הלחצנים '
[disabled]
לכאשר:disabled
IE9+ תומך:disabled
. עם זאתfieldset[disabled]
הוא עדיין הכרחי מכיוון שערכות שדות מושבתות מקוריות עדיין עומסות ב-IE11 .
- שכתב רכיב עם flexbox.
- הוסר
.btn-group-justified
. כתחליף אתה יכול להשתמש<div class="btn-group d-flex" role="group"></div>
בתור עטיפה סביב אלמנטים עם.w-100
. - הורד את
.btn-group-xs
הכיתה לגמרי בגלל הסרה של.btn-xs
. - הוסר מרווח מפורש בין קבוצות לחצנים בסרגלי כלים של כפתורים; השתמש בכלי עזר לשוליים כעת.
- תיעוד משופר לשימוש עם רכיבים אחרים.
- עבר מבוררי הורים למחלקות יחיד עבור כל הרכיבים, השינויים וכו'.
- סגנונות נפתחים פשוטים כדי לא לשלוח יותר עם חיצים הפונה כלפי מעלה או מטה המצורפים לתפריט הנפתח.
- ניתן לבנות אפשרויות נפתחות עם
<div>
s או<ul>
s עכשיו. - סגנונות נפתחים וסימון שנבנו מחדש כדי לספק תמיכה קלה
<a>
ומובנית<button>
לפריטים נפתחים ומבוססים. - שונה שם
.divider
ל.dropdown-divider
. - פריטים נפתחים דורשים כעת
.dropdown-item
. - בוררים נפתחים אינם דורשים עוד מפורש
<span class="caret"></span>
; זה מסופק כעת באופן אוטומטי באמצעות CSS::after
ב-.dropdown-toggle
.
- נוספה
576px
נקודת עצירה חדשה לרשת כ-sm
, כלומר יש כעת חמש שכבות בסך הכל (xs
,sm
,md
,lg
ו-xl
). - שונה שם של מחלקות שינוי הרשת הרספונסיביות מ-
.col-{breakpoint}-{modifier}-{size}
ל.{modifier}-{breakpoint}-{size}
עבור מחלקות רשת פשוטות יותר. - ירד שיעורי שינוי דחיפה ומשיכה עבור המחלקות החדשות המופעלות על ידי flexbox
order
. לדוגמה, במקום.col-8.push-4
ו.col-4.pull-8
, תשתמש ב-.col-8.order-2
ו.col-4.order-1
. - נוספו מחלקות שירות flexbox עבור מערכת ורכיבים ברשת.
- שכתב רכיב עם flexbox.
- הוחלף
a.list-group-item
במחלקה מפורשת,.list-group-item-action
, לעיצוב גירסאות קישור וכפתורים של פריטי קבוצת רשימה. - נוספה
.list-group-flush
כיתה לשימוש עם כרטיסים.
- שכתב רכיב עם flexbox.
- בהינתן המעבר ל-flexbox, סביר להניח שהיישור של אייקוני הסרה בכותרת נשבר מכיוון שאיננו משתמשים יותר ב-floats. תוכן צף בא קודם, אבל עם flexbox זה כבר לא המקרה. עדכן את אייקוני הדחייה שלך כדי לתקן את הכותרות המודוליות.
- האפשרות
remote
(שיכולה לשמש לטעינה אוטומטית ולהחדרת תוכן חיצוני למודאל)loaded.bs.modal
והאירוע המתאים הוסרו. אנו ממליצים במקום זאת להשתמש בתבניות בצד הלקוח או במסגרת מחייבת נתונים, או להתקשר ל-jQuery.load בעצמך.
- שכתב רכיב עם flexbox.
- הפיל כמעט את כל
>
הבוררים לעיצוב פשוט יותר באמצעות שיעורים לא מקוננים. - במקום בוררים ספציפיים ל-HTML כמו
.nav > li > a
, אנו משתמשים במחלקות נפרדות עבור.nav
s,.nav-item
s ו-.nav-link
s. זה הופך את ה-HTML שלך לגמיש יותר תוך כדי הרחבה מוגברת.
ה-navbar שוכתב לחלוטין ב-flexbox עם תמיכה משופרת ליישור, היענות והתאמה אישית.
- התנהגויות של סרגל ניווט רספונסיבי מוחלות כעת על
.navbar
הכיתה באמצעות ההגדרה הנדרשת.navbar-expand-{breakpoint}
שבה אתה בוחר היכן לכווץ את סרגל הניווט. בעבר זה היה שינוי של פחות משתנה ודרש הידור מחדש. .navbar-default
הוא עכשיו.navbar-light
, אם כי.navbar-dark
נשאר אותו הדבר. אחד מאלה נדרש בכל סרגל ניווט. עם זאת, מחלקות אלו כבר לא קובעותbackground-color
s; במקום זאת הם בעצם משפיעים רק עלcolor
.- סרגלי Navbar דורשים כעת הצהרת רקע מסוג כלשהו. בחר מכלי השירות הרקע שלנו (
.bg-*
) או הגדר משלך עם מחלקות האור/הפוכות למעלה להתאמה אישית מטורפת . - בהינתן סגנונות flexbox, סרגלי ניווט יכולים כעת להשתמש בכלי עזר flexbox לאפשרויות יישור קלות.
.navbar-toggle
הוא עכשיו.navbar-toggler
ויש לו סגנונות שונים וסימון פנימי (לא יותר שלוש<span>
שניות).- הוריד את
.navbar-form
הכיתה לגמרי. זה כבר לא הכרחי; במקום זאת, פשוט השתמש.form-inline
והחל בכלי עזר שוליים לפי הצורך. - סרגלי הניווט אינם כוללים יותר
margin-bottom
אוborder-radius
כברירת מחדל. השתמש בכלי עזר לפי הצורך. - כל הדוגמאות הכוללות סרגלי ניווט עודכנו כך שיכללו סימון חדש.
- שכתב רכיב עם flexbox.
- כעת נדרשים שיעורים מפורשים (
.page-item
, ) על צאצאיו של ס '.page-link
.pagination
- הורד את
.pager
הרכיב לחלוטין מכיוון שהוא היה מעט יותר מכפתורי מתאר מותאמים אישית.
.breadcrumb-item
כעת נדרש שיעור מפורש, , על צאצאיו של.breadcrumb
ס '
- השם שונה
.label
ל.badge
כדי לבטל את המעורבות<label>
מהאלמנט. - הפיל את
.badge
הרכיב מכיוון שהוא כמעט זהה לתוויות. השתמש.badge-pill
במשנה יחד עם רכיב התווית במקום למראה המעוגל הזה. - תגים כבר לא מוצפים אוטומטית בקבוצות רשימה ורכיבים אחרים. כעת נדרשים כיתות שירות לשם כך.
.badge-default
בוטלה.badge-secondary
ונוספה כדי להתאים למחלקות שינוי רכיבים בשימוש במקומות אחרים.
ירד לחלוטין עבור רכיב הכרטיס החדש.
.panel
to.card
, נבנה כעת עם flexbox..panel-default
הוסר ואין החלפה..panel-group
הוסר ואין החלפה..card-group
זה לא תחליף, זה שונה..panel-heading
ל.card-header
.panel-title
ל.card-title
. בהתאם למראה הרצוי, ייתכן שתרצה להשתמש גם ברכיבי כותרת או מחלקות (למשל<h3>
,.h3
) או אלמנטים או מחלקות מודגשות (למשל<strong>
,<b>
,.font-weight-bold
). שים לב.card-title
שאמנם שם דומה, מייצר מראה שונה מאשר.panel-title
..panel-body
ל.card-body
.panel-footer
ל.card-footer
.panel-primary
,.panel-success
,.panel-info
,.panel-warning
,.panel-danger
והושמטו עבור.bg-
,.text-
, וכלי.border
עזר שנוצרו$theme-colors
ממפת Sass שלנו.
.progress-bar-*
החליף מחלקות קונטקסטואליות עם.bg-*
כלי עזר. לדוגמה,class="progress-bar progress-bar-danger"
הופך לclass="progress-bar bg-danger"
.- הוחלף
.active
עבור פסי התקדמות מונפשים עם.progress-bar-animated
.
- שיפץ את כל הרכיב כדי לפשט את העיצוב והסטיילינג. יש לנו פחות סגנונות לעקוף, אינדיקטורים חדשים וסמלים חדשים.
- כל ה-CSS בוטל ושם שונה, מה שמבטיח שכל מחלקה מקבלת את הקדמת
.carousel-
.- עבור פריטי קרוסלה,
.next
,.prev
,.left
,.right
והם עכשיו.carousel-item-next
,.carousel-item-prev
,.carousel-item-left
ו.carousel-item-right
. .item
הוא גם עכשיו.carousel-item
.- עבור פקדים קודמים/הבאים,
.carousel-control.right
והם.carousel-control.left
עכשיו.carousel-control-next
ו.carousel-control-prev
, כלומר הם כבר לא דורשים מחלקה בסיסית ספציפית.
- עבור פריטי קרוסלה,
- הסר את כל הסגנון המגיב, תוך דחיית כלי עזר (למשל, הצגת כיתובים בנקודות מבט מסוימות) וסגנונות מותאמים אישית לפי הצורך.
- עקיפות תמונה שהוסרו עבור תמונות בפריטי קרוסלה, תוך דחיית כלי עזר.
- שיפר את דוגמה הקרוסלה כדי לכלול את הסימון והסגנונות החדשים.
- הוסרה התמיכה בטבלאות מקוננות בסגנון. כל סגנונות הטבלה עוברים כעת בירושה ב-v4 עבור בוררים פשוטים יותר.
- נוספה וריאנט טבלה הפוך.
- תצוגה, מוסתר ועוד:
- עשה את כלי העזר לתצוגה רספונסיביים (למשל,
.d-none
וd-{sm,md,lg,xl}-none
). - הורד את עיקר
.hidden-*
כלי השירות עבור כלי עזר חדשים לתצוגה . לדוגמה, במקום.hidden-sm-up
, השתמש ב.d-sm-none
. שינה את.hidden-print
שמות השירותים לשימוש בסכימת השמות של כלי השירות לתצוגה. מידע נוסף תחת קטע כלי עזר רספונסיביים בדף זה. - נוספו
.float-{sm,md,lg,xl}-{left,right,none}
מחלקות עבור צפים רספונסיביים והוסרו.pull-left
ומכיוון.pull-right
שהם מיותרים ל-.float-left
ו.float-right
.
- עשה את כלי העזר לתצוגה רספונסיביים (למשל,
- סוּג:
- הוסיפו וריאציות רספונסיביות למחלקות יישור הטקסט שלנו
.text-{sm,md,lg,xl}-{left,center,right}
.
- הוסיפו וריאציות רספונסיביות למחלקות יישור הטקסט שלנו
- יישור ומרווח:
- נוספו כלי עזר חדשים לשוליים מגיבים וריפוד לכל הצדדים, בתוספת קיצורים אנכיים ואופקיים.
- נוסף מטען של כלי עזר ל-flexbox .
- ירד לכיתה
.center-block
החדשה ..mx-auto
- Clearfix עודכן כדי להפסיק את התמיכה בגרסאות דפדפן ישנות יותר.
שילובי הקידומת של הספק של Bootstrap 3 , שהוצאו משימוש בגרסה 3.2.0, הוסרו ב-Bootstrap 4. מכיוון שאנו משתמשים ב- Autoprefixer , הם אינם נחוצים עוד.
הסירו את המיקסינים הבאים: animation
, animation-delay
, animation-direction
, animation-duration
, animation-fill-mode
, animation-iteration-count
, animation-name
, animation-timing-function
, backface-visibility
, box-sizing
, content-columns
, hyphens
, opacity
, perspective
, perspective-origin
, rotate
, rotateX
, rotateY
, scale
, scaleX
, scaleY
, skew
, transform-origin
, transition-delay
, transition-duration
, transition-property
, transition-timing-function
, transition-transform
, translate
, translate3d
,user-select
התיעוד שלנו זכה לשדרוג גם כן. הנה החלק הנמוך:
- אנחנו עדיין משתמשים ב-Jekyll, אבל יש לנו תוספים בתמהיל:
bugify.rb
משמש לרשימה יעילה של הערכים בדף באגים בדפדפן שלנו.example.rb
הוא מזלג מותאם אישית שלhighlight.rb
הפלאגין המוגדר כברירת מחדל, המאפשר טיפול קל יותר בקוד לדוגמה.callout.rb
הוא מזלג מותאם אישית דומה לזה, אך מיועד לתוספי המסמכים המיוחדים שלנו.markdown-block.rb
משמש לעיבוד קטעי Markdown בתוך רכיבי HTML כמו טבלאות.- jekyll-toc משמש ליצירת תוכן העניינים שלנו.
- כל תוכן המסמכים נכתב מחדש ב-Markdown (במקום HTML) לצורך עריכה קלה יותר.
- הדפים אורגנו מחדש לתוכן פשוט יותר והיררכיה נגישה יותר.
- עברנו מ-CSS רגיל ל-SCSS כדי לנצל את מלוא היתרונות של המשתנים, המיקסינים ועוד של Bootstrap.
כל @screen-
המשתנים הוסרו בגרסה 4.0.0. השתמש ב- media-breakpoint-up()
, media-breakpoint-down()
, או media-breakpoint-only()
במיקסים של Sass או $grid-breakpoints
במפת Sass במקום זאת.
מחלקות השירות הרספונסיביות שלנו הוסרו ברובן לטובת display
כלי עזר מפורשים.
- המחלקות
.hidden
ו.show
הוסרו מכיוון שהם מתנגשים עם השיטות והשיטות של$(...).hide()
jQuery$(...).show()
. במקום זאת, נסה לשנות את[hidden]
התכונה או להשתמש בסגנונות מוטבעים כמוstyle="display: none;"
וstyle="display: block;"
. - כל
.hidden-
המחלקות הוסרו, מלבד כלי ההדפסה ששמם שונה.- הוסר מגרסה 3:
.hidden-xs
.hidden-sm
.hidden-md
.hidden-lg
.visible-xs-block
.visible-xs-inline
.visible-xs-inline-block
.visible-sm-block
.visible-sm-inline
.visible-sm-inline-block
.visible-md-block
.visible-md-inline
.visible-md-inline-block
.visible-lg-block
.visible-lg-inline
.visible-lg-inline-block
- הוסר מ-v4 אלפא:
.hidden-xs-up
.hidden-xs-down
.hidden-sm-up
.hidden-sm-down
.hidden-md-up
.hidden-md-down
.hidden-lg-up
.hidden-lg-down
- הוסר מגרסה 3:
- כלי עזר להדפסה כבר לא מתחילים עם
.hidden-
או.visible-
, אלא עם.d-print-
.- שמות ישנים:
.visible-print-block
,.visible-print-inline
,.visible-print-inline-block
,.hidden-print
- שיעורים חדשים:
.d-print-block
,.d-print-inline
,.d-print-inline-block
,.d-print-none
- שמות ישנים:
במקום להשתמש במחלקות מפורשות .visible-*
, אתה הופך אלמנט לגלוי פשוט על ידי אי הסתרתו בגודל המסך הזה. אתה יכול לשלב .d-*-none
מחלקה אחת עם מחלקה אחת .d-*-block
כדי להציג אלמנט רק במרווח נתון של גדלי מסך (למשל .d-none.d-md-block.d-xl-none
מציג את האלמנט רק במכשירים בינוניים וגדולים).
שים לב שהשינויים בנקודות השבירה של הרשת ב-v4 פירושם שתצטרך להגדיל נקודת שבירה אחת כדי להשיג את אותן תוצאות. מחלקות השירות הרספונסיביות החדשות אינן מנסות להכיל מקרים פחות נפוצים שבהם לא ניתן לבטא את הנראות של אלמנט כטווח רציף אחד של גדלי יציאות תצוגה; במקום זאת תצטרך להשתמש ב-CSS מותאם אישית במקרים כאלה.