سپینەرەکان
ئاماژە بە دۆخی بارکردنی پێکهاتەیەک یان لاپەڕەیەک بکە بە سپینەرەکانی Bootstrap، کە بە تەواوی بە HTML و CSS و بێ جاڤاسکڕێپت دروستکراوە.
دەربارەی
دەتوانرێت لە Bootstrap “spinners” بەکاربهێنرێت بۆ پیشاندانی دۆخی بارکردن لە پڕۆژەکانتدا. تەنها بە HTML و CSS دروست کراون، واتە پێویستت بە هیچ جاڤاسکڕێپتێک نییە بۆ دروستکردنیان. بەڵام پێویستت بە هەندێک جاڤاسکڕێپتی تایبەت دەبێت بۆ گۆڕینی بینینیان. دەتوانرێت بە ئاسانی دەرکەوتن و ڕێکخستن و قەبارەدانانیان بە پۆلە سەرسوڕهێنەرەکانی سوودمەندیمان خۆکارانە دابنرێت.
بۆ مەبەستی دەستڕاگەیشتن، هەر بارکەرێک لێرەدا 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}
سوودمەندییەکان ئەوە دەسڕنەوە.
گەشەکردنی سپینەر
ئەگەر ئارەزووی سپینەری سنوورت نییە، بگۆڕە بۆ سپینەری grow. لە کاتێکدا لە ڕووی تەکنیکییەوە ناخولێتەوە، بەڵام دووبارە و سێبارە گەشە دەکات!
<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
گۆڕاوەکان
لە v5.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};
گۆڕاوەکانی ساس
$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;
}
}