我正在尝试在我有三个ToolbarGroup
组件的页面上实现工具栏:
<Toolbar>
<ToolbarGroup firstChild={true} float="left">
{prevButton}
</ToolbarGroup>
<ToolbarGroup>
{releaseBtn}
</ToolbarGroup>
<ToolbarGroup lastChild={true} float="right">
{nextButton}
</ToolbarGroup>
</Toolbar>
一般的想法是prevButton
应该一直渲染到工具栏的左侧(确实如此),nextButton
应该一直向右渲染(它确实如此)...... releaseBtn
应该在工具栏上居中(当前没有发生)。
根据material-ui docs,似乎没有centered={true}
的简单设置 - 我该如何做到这一点?
我已尝试手动将中间ToolbarGroup
的样式设置为margin: 0px auto
,但这似乎没有帮助。
答案 0 :(得分:4)
我的最终解决方案是:
<Toolbar>
<ToolbarGroup firstChild={true} float="left">
{prevButton}
</ToolbarGroup>
<ToolbarGroup style={{
float : 'none',
width : '200px',
marginLeft : 'auto',
marginRight : 'auto'
}}>
{releaseBtn}
</ToolbarGroup>
<ToolbarGroup lastChild={true} float="right">
{nextButton}
</ToolbarGroup>
</Toolbar>
我首先必须设置中间ToolbarGroup
没有浮动(不是通过材料-ui道具的选项),然后使用宽度/边距。我想你的里程可能会因你在ToolbarGroup
内的推动而有所不同。
答案 1 :(得分:2)
如果有人像我一样在 2021 年或以后遇到这种情况,material-ui 的 Toolbar
在幕后使用 Flexbox,所以您要做的就是应用自定义类(或覆盖主题中的默认类) ):
.myToolbar {
justify-content: space-between;
}
space-between
将沿着主水平轴分布子项:
(图片来自https://css-tricks.com/snippets/css/a-guide-to-flexbox/)