假设我使用display: flex;(demo)设置了一个简单的三列布局.在左列和右列中,我有指定宽度的图像(100px每个).在中间栏中,我有主要内容区域.此区域具有高分辨率图像:
<div id="main-container">
<div id="left-content">
<div><img src="http://agevoluzione.com/wp-content/uploads/2014/07/Work-in-progress-1024x603.png"></div>
<div><img src="http://agevoluzione.com/wp-content/uploads/2014/07/Work-in-progress-1024x603.png"></div>
<div><img src="http://agevoluzione.com/wp-content/uploads/2014/07/Work-in-progress-1024x603.png"></div>
<div><img src="http://agevoluzione.com/wp-content/uploads/2014/07/Work-in-progress-1024x603.png"></div>
</div>
<div id="center-content">
<div><img src="https://farm6.staticflickr.com/5560/14080568109_9f33dc7964_o.jpg"></div>
</div>
<div id="right-content">
<div><img src="http://agevoluzione.com/wp-content/uploads/2014/07/Work-in-progress-1024x603.png"></div>
<div><img src="http://agevoluzione.com/wp-content/uploads/2014/07/Work-in-progress-1024x603.png"></div>
<div><img src="http://agevoluzione.com/wp-content/uploads/2014/07/Work-in-progress-1024x603.png"></div>
<div><img src="http://agevoluzione.com/wp-content/uploads/2014/07/Work-in-progress-1024x603.png"></div>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我需要调整CSS,以便中心列宽度最多是侧列之间可用空间的100%(换句话说,它必须始终是这样宽:windowSize-column1-column2).如果窗口缩小,我需要中心列(及其图像)随之缩小.
#main-container
{
display: flex;
justify-content: space-between;
align-items: center;
}
#left-content,
#right-content
{
width: 102px;
border-style: solid;
border-width: 2px;
border-color: magenta;
}
#left-content img,
#right-content img
{
width: 100px;
}
#center-content
{
}
#center-content img
{
max-width: 100%;
height: auto;
}
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
0b1*_*011 35
正确的做法是flex.设置flex到1 1 auto了中间一列,并0 0 auto在侧栏.这使得侧列始终是指定的宽度(或内容的宽度,如果未指定),并且中间列占用剩余空间(相应地增长/收缩).这是CSS(演示):
#main-container {
display: flex;
justify-content: space-between;
align-items: center;
}
#center-content {
flex:1 1 auto; /* Lets middle column shrink/grow to available width */
}
#left-content,
#right-content {
flex:0 0 auto; /* Forces side columns to stay same width */
width:100px; /* Sets the width of side columns */
}
img {
max-width:100%; /* Shrinks images to fit container */
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15706 次 |
| 最近记录: |