徽章
徽章元件會產生一個小標籤,附加在其子元素上。
簡介
徽章是用於 UI 元素的小型描述符。它通常位於元素之上或附近,並通過顯示數字、圖示或其他簡短的字元集來指示該元素的狀態。
<Badge />
Playground
基本用法
import Badge from '@mui/joy/Badge';
徽章元件會包裝在其附加的 UI 元素周圍。它的預設外觀是在應用程式的 primary
色彩中,位於其附加元素的右上角的點。
🛒
內容
使用字串或數字作為 badgeContent
屬性的值,以在徽章內顯示內容。
🛍
4🔔
❕🪫
🛍
0
最大值
使用 max
屬性將內容限制為最大數值。
💌
1💌
2💌
3💌
4尺寸
徽章元件有三種尺寸:sm
、md
(預設)和 lg
💌
10💌
20💌
30色彩
主題中包含的每個調色盤都可通過 color
屬性使用。
💌
P💌
N💌
D💌
S💌
W可見性
使用 invisible
屬性來控制徽章的可見性。
🛍
12位置
預設情況下,徽章位於其附加元素的右上角。使用 anchorOrigin
屬性根據其 vertical
(頂部或底部)和 horizontal
(左側或右側)位置來更改徽章的位置。嘗試點擊下方示範中的箭頭來更改徽章的位置

<Badge
anchorOrigin={{
vertical: 'top',
horizontal: 'right',
}}
>
內縮
使用 badgeInset
屬性來微調徽章相對於其附加元素的位置。此屬性接受由以 px
、%
、em
或 rem
為單位的數字組成的字串。(此語法對應於 inset CSS 屬性。)
此字串定義了從徽章的anchorOrigin
的內縮—例如,下面的示範將徽章沿垂直和水平軸向其子元素的中心推進 14%(相對於右上角)

如果您將兩個單位數字傳遞給 badgeInset
屬性—例如 "50px 10px"
—則第一個數字適用於垂直軸,第二個適用於水平軸。如果您將四個單位數字傳遞給屬性—例如 "0 -10px 0 5px"
,它們將從頂部開始順時針應用。
無障礙功能
螢幕閱讀器可能無法為使用者提供有關徽章內容的足夠資訊。為了使您的徽章具有無障礙功能,您必須使用 aria-label
提供完整的描述,如下面的示範所示
結構
徽章元件由一個根 <span>
組成,該根 <span>
容納了徽章所附加的元素,後跟一個 <span>
來表示徽章本身
<span class="MuiBadge-root">
<!-- the element the Badge is attached to -->
<span class="MuiBadge-badge">
<!-- Badge content -->
</span>
</span>