如何在 Material UI 中制作自定义水平虚线分隔线?

Ral*_*nry 5 css divider reactjs material-ui sx

我有一个分隔线模板,我想通过将其转换为水平虚线分隔线来自定义它。但我不知道如何覆盖它,特别是如果我什至通过应用 borderRadius 进行 sx 编辑,它不会改变分隔线。

源代码:

import * as React from "react";
import List from "@mui/material/List";
import ListItem from "@mui/material/ListItem";
import ListItemText from "@mui/material/ListItemText";
import Divider from "@mui/material/Divider";

const style = {
  width: "100%",
  maxWidth: 360,
  bgcolor: "background.paper"
};

export default function ListDividers() {
  return (
    <List sx={style} component="nav" aria-label="mailbox folders">
      <ListItem button>
        <ListItemText primary="Inbox" />
      </ListItem>
      <Divider sx={{ borderRadius: 1 }} />
      <ListItem button divider>
        <ListItemText primary="Drafts" />
      </ListItem>
      <ListItem button>
        <ListItemText primary="Trash" />
      </ListItem>
      <Divider sx={{ borderRadius: 1 }} />
      <ListItem button>
        <ListItemText primary="Spam" />
      </ListItem>
    </List>
  );
}
Run Code Online (Sandbox Code Playgroud)

目前外观:

当前外观分隔符

分隔线的目标外观: 虚线分隔线外观

您的回复确实对我有很大帮助,特别是因为我现在正在探索 MUI。我也对分隔线方面的替代方案持开放态度。非常感谢!

小智 1

您可以使用 borderStyle:'dashed' 作为 sx 中的属性:

sx={{borderStyle:'虚线'}}