ספינרים
ציין את מצב הטעינה של רכיב או דף עם ספינרים של Bootstrap, שנבנו כולו עם HTML, CSS וללא JavaScript.
על אודות
ניתן להשתמש ב"ספינרים" של Bootstrap כדי להציג את מצב הטעינה בפרויקטים שלך. הם בנויים רק עם HTML ו-CSS, כלומר אתה לא צריך שום JavaScript כדי ליצור אותם. עם זאת, תצטרך קצת JavaScript מותאם אישית כדי לשנות את הנראות שלהם. ניתן להתאים בקלות את המראה, היישור והגודל שלהם בעזרת שיעורי השירות המדהימים שלנו.
למטרות נגישות, כל טוען כאן כולל role="status"
ו-מקוננת <span class="visually-hidden">Loading...</span>
.
prefers-reduced-motion
בשאילתת המדיה. עיין
בסעיף תנועה מופחתת בתיעוד הנגישות שלנו .
ספינר גבול
השתמש בספינרים של הגבול עבור מחוון טעינה קל משקל.
<div class="spinner-border" role="status">
<span class="visually-hidden">Loading...</span>
</div>
צבעים
ספינר הגבול משתמש currentColor
עבורו border-color
, כלומר אתה יכול להתאים אישית את הצבע עם כלי עזר לצבע טקסט . אתה יכול להשתמש בכל אחד מכלי השירות שלנו לצבע הטקסט בספינר הסטנדרטי.
<div class="spinner-border text-primary" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-border text-secondary" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-border text-success" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-border text-danger" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-border text-warning" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-border text-info" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-border text-light" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-border text-dark" role="status">
<span class="visually-hidden">Loading...</span>
</div>
border-color
בכלי עזר? כל ספינר גבול מציין
transparent
גבול עבור צד אחד לפחות, אז
.border-{color}
כלי עזר יעקפו את זה.
ספינר גדל
אם לא בא לכם על ספינר גבול, עברו לספינר לגדל. למרות שהוא לא מסתובב טכנית, הוא גדל שוב ושוב!
<div class="spinner-grow" role="status">
<span class="visually-hidden">Loading...</span>
</div>
שוב, הספינר הזה בנוי עם currentColor
, כך שתוכל לשנות בקלות את המראה שלו עם כלי עזר לצבע טקסט . הנה זה בכחול, יחד עם הגרסאות הנתמכות.
<div class="spinner-grow text-primary" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-grow text-secondary" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-grow text-success" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-grow text-danger" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-grow text-warning" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-grow text-info" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-grow text-light" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-grow text-dark" role="status">
<span class="visually-hidden">Loading...</span>
</div>
יישור
ספינרים ב-Bootstrap בנויים עם rem
s, currentColor
, ו display: inline-flex
. משמעות הדבר היא שניתן בקלות לשנות את גודלם, לצבוע אותם מחדש וליישר אותם במהירות.
שולים
השתמש בכלי עזר לשוליים כמו למרווח .m-5
קל.
<div class="spinner-border m-5" role="status">
<span class="visually-hidden">Loading...</span>
</div>
מיקום
השתמש בכלי עזר flexbox , כלי עזר צפים או כלי עזר ליישור טקסט כדי למקם ספינרים בדיוק היכן שאתה צריך אותם בכל מצב.
לְהַגמִישׁ
<div class="d-flex justify-content-center">
<div class="spinner-border" role="status">
<span class="visually-hidden">Loading...</span>
</div>
</div>
<div class="d-flex align-items-center">
<strong>Loading...</strong>
<div class="spinner-border ms-auto" role="status" aria-hidden="true"></div>
</div>
צפים
<div class="clearfix">
<div class="spinner-border float-end" role="status">
<span class="visually-hidden">Loading...</span>
</div>
</div>
יישור טקסט
<div class="text-center">
<div class="spinner-border" role="status">
<span class="visually-hidden">Loading...</span>
</div>
</div>
גודל
הוסף .spinner-border-sm
וכדי .spinner-grow-sm
ליצור ספינר קטן יותר שניתן להשתמש בו במהירות בתוך רכיבים אחרים.
<div class="spinner-border spinner-border-sm" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-grow spinner-grow-sm" role="status">
<span class="visually-hidden">Loading...</span>
</div>
לחלופין, השתמש בסגנונות CSS מותאמים אישית או מוטבעים כדי לשנות את הממדים לפי הצורך.
<div class="spinner-border" style="width: 3rem; height: 3rem;" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<div class="spinner-grow" style="width: 3rem; height: 3rem;" role="status">
<span class="visually-hidden">Loading...</span>
</div>
כפתורים
השתמש בספינרים בתוך לחצנים כדי לציין פעולה כרגע מעובדת או מתרחשת. אתה יכול גם להחליף את הטקסט מתוך אלמנט הספינר ולהשתמש בטקסט הכפתור לפי הצורך.
<button class="btn btn-primary" type="button" disabled>
<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span>
<span class="visually-hidden">Loading...</span>
</button>
<button class="btn btn-primary" type="button" disabled>
<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span>
Loading...
</button>
<button class="btn btn-primary" type="button" disabled>
<span class="spinner-grow spinner-grow-sm" role="status" aria-hidden="true"></span>
<span class="visually-hidden">Loading...</span>
</button>
<button class="btn btn-primary" type="button" disabled>
<span class="spinner-grow spinner-grow-sm" role="status" aria-hidden="true"></span>
Loading...
</button>
CSS
משתנים
נוסף בגרסה 5.2.0כחלק מגישת משתני ה-CSS המתפתחת של Bootstrap, הספינרים משתמשים כעת במשתני CSS מקומיים על .spinner-border
ולמען .spinner-grow
התאמה אישית משופרת בזמן אמת. הערכים עבור משתני ה-CSS נקבעים באמצעות Sass, כך שגם התאמה אישית של Sass עדיין נתמכת.
משתני ספינר גבול:
--#{$prefix}spinner-width: #{$spinner-width};
--#{$prefix}spinner-height: #{$spinner-height};
--#{$prefix}spinner-vertical-align: #{$spinner-vertical-align};
--#{$prefix}spinner-border-width: #{$spinner-border-width};
--#{$prefix}spinner-animation-speed: #{$spinner-animation-speed};
--#{$prefix}spinner-animation-name: spinner-border;
משתני ספינר גדלים:
--#{$prefix}spinner-width: #{$spinner-width};
--#{$prefix}spinner-height: #{$spinner-height};
--#{$prefix}spinner-vertical-align: #{$spinner-vertical-align};
--#{$prefix}spinner-animation-speed: #{$spinner-animation-speed};
--#{$prefix}spinner-animation-name: spinner-grow;
עבור שני הספינרים, מחלקות משנה קטנות של ספינרים משמשות לעדכון הערכים של משתני CSS אלה לפי הצורך. לדוגמה, .spinner-border-sm
הכיתה עושה את הדברים הבאים:
--#{$prefix}spinner-width: #{$spinner-width-sm};
--#{$prefix}spinner-height: #{$spinner-height-sm};
--#{$prefix}spinner-border-width: #{$spinner-border-width-sm};
משתנים Sass
$spinner-width: 2rem;
$spinner-height: $spinner-width;
$spinner-vertical-align: -.125em;
$spinner-border-width: .25em;
$spinner-animation-speed: .75s;
$spinner-width-sm: 1rem;
$spinner-height-sm: $spinner-width-sm;
$spinner-border-width-sm: .2em;
מסגרות מפתח
משמש ליצירת אנימציות CSS עבור הספינרים שלנו. כלול ב scss/_spinners.scss
.
@keyframes spinner-border {
to { transform: rotate(360deg) #{"/* rtl:ignore */"}; }
}
@keyframes spinner-grow {
0% {
transform: scale(0);
}
50% {
opacity: 1;
transform: none;
}
}