Angular Material Flex Layout - 居中对齐菜单按钮
Angular Material Flex Layout - center aligning menu buttons
按钮如何在 material 工具栏中居中对齐?
我创建了一个 Angular Material 工具栏,其中 左对齐 标题和一些 右对齐 链接使用 <span fxFlex></span>
StackBlitz
上的例子
效果很好,但是,我无法更改指向按钮和 center 按钮的链接(删除标题后)
此处显示的问题:Stackblitz
按钮默认为 100% 宽度,我已将其覆盖为固定宽度,但任何尝试 justify-content 或使用 margin:auto 设置宽度的尝试仍然失败。
更新:添加mat-menu时出现问题:看看mat-menu在app.component.html中取消注释时会发生什么[=14] =]
这是你想得到的吗?
Html :
<span class="spacer"></span>
<button mat-menu-item>home</button>
<button mat-menu-item [matMenuTriggerFor]="tags" #tagsTrigger="matMenuTrigger" (mouseenter)="tagsTrigger.openMenu()">tags</button>
<button mat-menu-item [matMenuTriggerFor]="points">points</button>
<button mat-menu-item [matMenuTriggerFor]="profile">profile</button>
<button mat-menu-item>sign out</button>
<span class="spacer"></span>
Css :
.spacer {
flex: 1 1 auto;
}
此解决方案将被视为 解决方法,因为 Material 设计对所有内容的外观和行为都有明确的指导方针,这些指导方针当然也在 Angular Material,因此您想要对 Angular Material 中组件的 外观 和 默认行为 进行的任何更改都不完全是推荐,但如果所做的更改对您的用例有益并且没有破坏任何东西,我会说继续进行。
基本上我只是针对 .mat-menu-item
并设置适当的样式:
.mat-menu-item {
width: unset;
height: unset;
line-height: unset;
padding: 0 10px;
border: 1px solid black
}
https://stackblitz.com/edit/free-vote-angular-material-menu-Whosebug-218rt2
按钮如何在 material 工具栏中居中对齐?
我创建了一个 Angular Material 工具栏,其中 左对齐 标题和一些 右对齐 链接使用 <span fxFlex></span>
StackBlitz
效果很好,但是,我无法更改指向按钮和 center 按钮的链接(删除标题后)
此处显示的问题:Stackblitz
按钮默认为 100% 宽度,我已将其覆盖为固定宽度,但任何尝试 justify-content 或使用 margin:auto 设置宽度的尝试仍然失败。
更新:添加mat-menu时出现问题:看看mat-menu在app.component.html中取消注释时会发生什么[=14] =]
这是你想得到的吗?
Html :
<span class="spacer"></span>
<button mat-menu-item>home</button>
<button mat-menu-item [matMenuTriggerFor]="tags" #tagsTrigger="matMenuTrigger" (mouseenter)="tagsTrigger.openMenu()">tags</button>
<button mat-menu-item [matMenuTriggerFor]="points">points</button>
<button mat-menu-item [matMenuTriggerFor]="profile">profile</button>
<button mat-menu-item>sign out</button>
<span class="spacer"></span>
Css :
.spacer {
flex: 1 1 auto;
}
此解决方案将被视为 解决方法,因为 Material 设计对所有内容的外观和行为都有明确的指导方针,这些指导方针当然也在 Angular Material,因此您想要对 Angular Material 中组件的 外观 和 默认行为 进行的任何更改都不完全是推荐,但如果所做的更改对您的用例有益并且没有破坏任何东西,我会说继续进行。
基本上我只是针对 .mat-menu-item
并设置适当的样式:
.mat-menu-item {
width: unset;
height: unset;
line-height: unset;
padding: 0 10px;
border: 1px solid black
}
https://stackblitz.com/edit/free-vote-angular-material-menu-Whosebug-218rt2