3 回答
TA贡献1831条经验 获得超9个赞
没有理由将该标题放入 material-uiList元素中并强制其进入边框。只需将 包装List在一个组件中,该组件在列表之前呈现标题:
const ListWithHeading = ({heading, classes, children, ...props}) => (
<div className="list-container">
<Typography className={classes.fieldLabel}>{heading}</Typography>
<List classes={classes} {...props}>{children}</List>
</div>
);
您可以给包含headinga 类的元素设置样式,例如给它背景颜色并使其全宽。
像这样渲染它:
<ListWithHeading heading="Attach PDF">
{/* list items here */}
</ListWithHeading>
TA贡献1725条经验 获得超7个赞
而不是试图弯曲空间和时间来向上移动文本 - 只需删除顶部边框 - 并使文本的高度和背景与内部布局相匹配。
我已经使用类躲过了你的元素 - 它很简单。并且没有空间或时间的弯曲:)
.root {
width: 100%;
max-width: 360px;
border: 3px solid #388FCE;
margin-left: 3%;
max-height: 200px;
overflow: auto;
border-top: none;
display: block;
}
.fieldLabel {
height: 40px;
line-height: 40px;
background: #388FCE;
font-size: 1rem;
text-transform: uppercase;
letter-spacing: 3px;
color: red;
font-weight: bold;
display: block;
padding-left: 10px
}
<List class="root">
<Typography class="fieldLabel">
Attach PDF
</Typography>
{/***SOME CODE**/}
</List>
TA贡献1856条经验 获得超5个赞
我会建议你使用 ListSubheader
<List
className={classes.root}
subheader={
<ListSubheader className={classes.subHeader} component="div">
Attach PDF
</ListSubheader>
}>
{/*** Your List Items**/}
</List>
并为其添加样式。例如:
subHeader: {
background: '#388FCE',
// other required styles
}
添加回答
举报