MUI Sandbox @ github
MUI 架構
Understanding MUI packages @ MUI v5
MUI Core
- Material UI(
@mui/material
):使用基於 Material Design 所設計出來的元件,同時包含「功能」和「樣式」。 - MUI Base(
@mui/base
):包含許多 Unstyled(headless)的 React UI 元件,只是用提供的「功能」,CSS 樣式的部分需要自己處理 。 - MUI System(
@mui/system
):相對於只用「功能」的 MUI Base,MUI System 則是提供許多 CSS Utilities 可以使用,特別像是sx
,它需要搭配 MUI Base、MUI components 使用。
MUI System
MUI System @ MUI 5
sx
The sx prop @ MUI 5
MUI system 的 sx
特別適合用在一次性(one-ff)的元件。
一般使用
到 Properties 可以找到所有可以用的屬性名稱,以及可以直接使用到的 theme mapping,並且看 ${value}
的地方。
舉例來說:
- 如果寫
{ border: 3 }
,表示的即是border: 3px solid
- 如果寫
{ borderColor: 'success.dark' }
,對應的會是theme.palette.success.dark
的顏色 - 如果寫
{ gap: 3 }
,對應到的是theme.spacing(3)
- 如果寫
{ display: 'inline-block' }
,因為這裡沒有任何 mapping(none
),所以就是直接帶入該值