【发布时间】:2014-09-17 03:09:48
【问题描述】:
我正在尝试在简单的图片库 (wip) http://codepen.io/anon/pen/vmhLe 中使用 flex 布局。
<html>
<head>
<style>
.thumbPanel {
display: flex;
align-items: center;
border: 2px solid MidnightBlue;
background-color: Gray;
}
.thumbAdminMenu {
display: flex;
flex-direction: column;
align-items: stretch;
}
.thumbAdminButton {
display: inline-block;
margin: 0px;
margin-left: 5px;
flex-shrink: 0;
flex-grow: 0;
border: 2px solid MidnightBlue;
font-size: 20pt;
}
.thumbList {
display: flex;
align-items: center;
margin: 5px;
overflow: auto;
width: 100%;
border: 2px solid MidnightBlue;
background-color: Gainsboro;
}
.thumbArea {
min-width: 200px;
min-height: 200px;
margin: 5px 0px 5px 5px;
background-color: LightGoldenRodYellow;
border: 1px solid MidnightBlue;
}
.thumbArea:first-child, {
margin-left: 0px;
}
.thumbArea:last-child {
margin-right: 5px;
}
</style>
</head>
<body>
<div class="thumbPanel">
<div class="thumbAdminMenu">
<button class="thumbAdminButton">AddXXX</button>
</div>
<div class="thumbList">
<div class="thumbArea"></div>
<div class="thumbArea"></div>
<div class="thumbArea"></div>
<div class="thumbArea"></div>
<div class="thumbArea"></div>
<div class="thumbArea"></div>
</div>
</div>
</body>
</html>
结果(浏览器窗口缩小):
http://i.imgur.com/znMcrS2.png
为什么文本 AddXXX 被裁剪?
为什么最右边的黄色div的右边距不见了?我用.thumbArea:last-child 规则设置它。
这里是游乐场:http://codepen.io/anon/pen/vmhLe。在 codepen 和 jsfiddle 上有一个问题,底部水平滚动条溢出(至少在 Chrome 中对我来说)。但是在查看 HTML 文件时,它显示得很好。此外,如果您在 Chrome 中打开开发者控制台,它也会显示正常。
谢谢。
【问题讨论】:
-
您的第一个问题很容易解决,请将
flex:none添加到.thumbAdminMenu以防止其缩小。至于右边距......它让我很难过如何修复它。我什至尝试向容器添加填充。 -
@JonP,对于裁剪的文本
flex: none确实有帮助。我也将其缩减为flex-shrink: 0。 (我以为我已经尝试过了)。谢谢。