`fxLayoutAlign` 的行为有何不同?
whay `fxLayoutAlign` behave diffrently?
我有 3 个元素我想 space 同样地使用 Angular Flex-Layout
并且下面的代码做我想要的
第一个工作代码
<mat-toolbar-row fxShow.ls-sm fxHide.gt-sm fxLayoutAlign="space-between center">
<button mat-button routerLink="" >home</button>
<button mat-button routerLink="/post" > post</button>
<button mat-button routerLink="about-us"> contact us</button>
</mat-toolbar-row>
有以下输出
第二个无效代码
<mat-toolbar-row fxShow.ls-sm fxHide.gt-sm >
<div fxlayout="row" fxLayoutAlign="space-between center" >
<button mat-button routerLink="" >home</button>
<button mat-button routerLink="/post" > post</button>
<button mat-button routerLink="about-us"> contact us</button>
</div>
</mat-toolbar-row>
有以下输出
我的问题
我希望这两个代码的工作方式相同......那么为什么第二个代码使 3 个按钮堆叠在一起?
您在 mat-toolbar-row
中使用的 div
元素没有父元素的全宽。所以你需要添加 fxFlex
作为指令,所以它是父级的 100% 宽度。
<mat-toolbar-row fxShow.ls-sm fxHide.gt-sm>
<!-- ADD fxFlex to div -->
<div fxFlex fxlayout="row" fxLayoutAlign="space-between center">
<button mat-button >home</button>
<button mat-button > post</button>
<button mat-button > contact us</button>
</div>
</mat-toolbar-row>
<p> 1 code</p>
<mat-toolbar-row fxShow.ls-sm fxHide.gt-sm fxLayoutAlign="space-between center">
<button mat-button routerLink="" >home</button>
<button mat-button routerLink="/post" > post</button>
<button mat-button routerLink="about-us"> contact us</button>
</mat-toolbar-row>
<p> 2 code</p>
<mat-toolbar-row fxShow.ls-sm fxHide.gt-sm >
<div fxlayout="row" fxFlex fxLayoutAlign="space-between center" >
<button mat-button routerLink="" >home</button>
<button mat-button routerLink="/post" > post</button>
<button mat-button routerLink="about-us"> contact us</button>
</div>
</mat-toolbar-row>
您需要在第二个代码中添加 fxFlex 指令 div。
我有 3 个元素我想 space 同样地使用 Angular Flex-Layout
并且下面的代码做我想要的
第一个工作代码
<mat-toolbar-row fxShow.ls-sm fxHide.gt-sm fxLayoutAlign="space-between center">
<button mat-button routerLink="" >home</button>
<button mat-button routerLink="/post" > post</button>
<button mat-button routerLink="about-us"> contact us</button>
</mat-toolbar-row>
有以下输出
第二个无效代码
<mat-toolbar-row fxShow.ls-sm fxHide.gt-sm >
<div fxlayout="row" fxLayoutAlign="space-between center" >
<button mat-button routerLink="" >home</button>
<button mat-button routerLink="/post" > post</button>
<button mat-button routerLink="about-us"> contact us</button>
</div>
</mat-toolbar-row>
有以下输出
我的问题
我希望这两个代码的工作方式相同......那么为什么第二个代码使 3 个按钮堆叠在一起?
您在 mat-toolbar-row
中使用的 div
元素没有父元素的全宽。所以你需要添加 fxFlex
作为指令,所以它是父级的 100% 宽度。
<mat-toolbar-row fxShow.ls-sm fxHide.gt-sm>
<!-- ADD fxFlex to div -->
<div fxFlex fxlayout="row" fxLayoutAlign="space-between center">
<button mat-button >home</button>
<button mat-button > post</button>
<button mat-button > contact us</button>
</div>
</mat-toolbar-row>
<p> 1 code</p>
<mat-toolbar-row fxShow.ls-sm fxHide.gt-sm fxLayoutAlign="space-between center">
<button mat-button routerLink="" >home</button>
<button mat-button routerLink="/post" > post</button>
<button mat-button routerLink="about-us"> contact us</button>
</mat-toolbar-row>
<p> 2 code</p>
<mat-toolbar-row fxShow.ls-sm fxHide.gt-sm >
<div fxlayout="row" fxFlex fxLayoutAlign="space-between center" >
<button mat-button routerLink="" >home</button>
<button mat-button routerLink="/post" > post</button>
<button mat-button routerLink="about-us"> contact us</button>
</div>
</mat-toolbar-row>
您需要在第二个代码中添加 fxFlex 指令 div。