试图模拟将在项目中使用的实际布局。想法是允许NESTED容器,有些是行和其他列。 角度4 flexbox垂直对齐和嵌套容器中的布局
灰色(最右边)是包含一行的最外面的面板。 该行包含左边空白栏(绿色)和主显示栏(棕褐色)。 主显示器(列)包含一个由两个项目组成的标题行,左侧和右侧菜单项的相对大小不同。 显然这是一个问题:右侧包裹。另一个是对齐项目不是集中左侧的标题。
很抱歉的长度,我下调,就像我可以:
<!-- panel -->
<div
[ngStyle]="{
'width': '80vw',
'height': '100vh',
'background-color':'beige',
'border':'1px solid red',
'display': 'flex',
'flex-direction': 'row'
}"
>
<!-- left margin column -->
<div
[ngStyle]="{
'flex-direction': 'column',
'border':'1px solid green',
'background-color': 'lightgreen',
'width': '5%'
}"
>
margin
</div>
<!-- main panel -->
<div
[ngStyle]="{
'flex-direction': 'column',
'border':'1px solid brown',
'background-color': 'wheat',
'width': '85%'
}"
>
<!-- title bar -->
<div
[ngStyle]="{
'flex-direction': 'row',
'border':'1px solid blue',
'background-color': 'white',
'width': '100%',
'height': '50px',
'align-items': 'center'
}"
>
<!-- left title/menu items -->
<div
[ngStyle]="{
'border':'1px solid blue',
'background-color': 'white',
'width': '80%',
'flex-grow': '1',
'flex-shrink': '5',
'height': '50px',
'margin-left': '10px',
'align-items': 'center'
}"
>
left side title vertically centered??
</div>
<!-- right side menu items -->
<div
[ngStyle]="{
'border':'1px solid blue',
'background-color': 'lightgray',
'width': '10%',
'flex-grow': '1',
'flex-shrink': '1',
'height': '50px',
'align-items': 'center'
}"
>
right side vertically centered
</div>
</div>
</div>
</div>
我下定决心要全面了解Flexbox的。在此先感谢您的帮助。 Yogi
当您使用flexbox时,应该使用flex-basis而不是宽度(方向行)或高度(方向列) – Whisher