首页 > 解决方案 > Flexbox - 等高图像列

问题描述

我有一个像这样的简单 flexbox 布局

   html,body {
       margin:0;
       padding:0;
   }
   
   body {
   height:100%;
   width:100%;
   }
   
   .panel-grid
   {
   -webkit-align-items: flex-start;
    align-items: flex-start;
	margin-bottom:30px;
	display:flex;
	justify-content:space-between;
	}
	
	#section-163 {
	width:calc(61.8034% - ( 0.38196600790794 * 30px ) );
	align-self:auto;
	}
	
	#section-260
	{
	width:calc(38.1966% - ( 0.61803399209206 * 30px ) );
	align-self:auto;
	}
	
	.myimage {
	object-fit:cover;
	width:100%;
	height:100%;
	}
	
<div class="panel-grid panel-no-style">
	<div id="section-163" class="panel-grid-cell">
		<div class="rty-panel widget widget_image-widget panel-first-child panel-last-child" style="height: 100%;">
			<div class="rty-widget-image-widget rty-widget-image-widget-base" style="height: 100%;">
				<img class="myimage" src="https://dummyimage.com/1600x900/000/fff">
			</div>
		</div>
	</div>
	
	<div id="section-260" class="panel-grid-cell">
		<div class="rty-panel widget widget_image-widget panel-first-child panel-last-child" style="height: 100%;">
			<div class="rty-widget-image-widget rty-widget-image-widget-base" style="height: 100%;">
				<img class="myimage" src="https://dummyimage.com/500x600/000/fff">
			</div>
		</div>
	</div>
</div>  

我正在尝试使用 object-fit 来裁剪图像以匹配高度。

我哪里错了?

标签: htmlcssflexbox

解决方案


尝试align-items: flex-start.panel-grid. 它覆盖了stretch默认值。

 .panel-grid {
   /* -webkit-align-items: flex-start; */
   /* align-items: flex-start; */
   margin-bottom: 30px;
   display: flex;
   justify-content: space-between;
 }

html,
body {
  margin: 0;
  padding: 0;
}

body {
  height: 100%;
  width: 100%;
}

.panel-grid {
  /* -webkit-align-items: flex-start; */
  /* align-items: flex-start; */
  margin-bottom: 30px;
  display: flex;
  justify-content: space-between;
}

#section-163 {
  width: calc(61.8034% - ( 0.38196600790794 * 30px));
  align-self: auto;
}

#section-260 {
  width: calc(38.1966% - ( 0.61803399209206 * 30px));
  align-self: auto;
}

.myimage {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
<div class="panel-grid panel-no-style">
  <div id="section-163" class="panel-grid-cell">
    <div class="rty-panel widget widget_image-widget panel-first-child panel-last-child" style="height: 100%;">
      <div class="rty-widget-image-widget rty-widget-image-widget-base" style="height: 100%;">
        <img class="myimage" src="https://dummyimage.com/1600x900/000/fff">
      </div>
    </div>
  </div>

  <div id="section-260" class="panel-grid-cell">
    <div class="rty-panel widget widget_image-widget panel-first-child panel-last-child" style="height: 100%;">
      <div class="rty-widget-image-widget rty-widget-image-widget-base" style="height: 100%;">
        <img class="myimage" src="https://dummyimage.com/500x600/000/fff">
      </div>
    </div>
  </div>
</div>


推荐阅读