html - CSS:使用 flex 进行垂直对齐时遇到问题

标签 html css flexbox

我正在尝试添加一个类以垂直对齐顶部、中间或底部,但我显然遗漏了一些东西:

.row {
	display: flex;
    background-color: #f0f0f0;
}
.col-3 {
	-ms-flex-preferred-size: 25%;
	flex-basis: 25%;
	max-width: 25%;	
}
[class*='col-'].col-top {
	align-items: flex-start;
}
[class*='col-'].col-center {
	align-items: center;
}
[class*='col-'].col-bottom {
	align-items: flex-end;
}
<div class="row">
  
  <div class="col-3">
    Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
  </div>
  <div class="col-3 col-center">
    middle
  </div>
  <div class="col-3 col-bottom">
    right
  </div>
  
 </div>

最佳答案

你的列也需要有 display: flex :)

.row {
	display: flex;
    background-color: #f0f0f0;
}
.col-3 {
	-ms-flex-preferred-size: 25%;
	flex-basis: 25%;
	max-width: 25%;	
    display: flex;
}
[class*='col-'].col-top {
	align-items: flex-start;
  
}
[class*='col-'].col-center {
	align-items: center;
    background: #ff9000;
}
[class*='col-'].col-bottom {
	align-items: flex-end;
    background: #0099ff;
}
<div class="row">
  
  <div class="col-3">
    Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
  </div>
  <div class="col-3 col-center">
    middle
  </div>
  <div class="col-3 col-bottom">
    right
  </div>
  
 </div>

关于html - CSS:使用 flex 进行垂直对齐时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41681453/

相关文章:

html - 当内容换行在列中时,Flex 容器不会展开

javascript - 在 jquery getjson 数据之间显示一个 div

javascript - CSS flex 盒 : flex item grow when changing another flex items position

css - flexbox 容器内灵活的图像大小

html - 具有多列布局和移动 div 框排序的 flexbox

javascript - 双 For 循环

javascript document.createElement 或 HTML 标签

html - 让一段简单的网页有自己的滚动条

html - anchor 标记继承自非预期元素

javascript - 清除 flexbox 列