如何使容器元素仅使用" required"空间包裹内联块儿童?见下图...
您可以看到箭头如何穿过不需要的空间。我已经花了几个小时试图让它发挥作用。我甚至试过了几个很好的答案,比如这个......
Fit div width to inline-block children
但它似乎并不适合我的情况,因为它假定每行有固定数量的孩子。
下面的小提琴手说明了我面临的问题。但是,有一点需要注意,max-width
的{{1}}应该设置为.box
而不是%
px

html,
body {
background-color: #eee;
height: 100%;
width: 100%;
padding: 0;
margin: 0;
}
.container {
display: block;
width: 100%;
}
.box {
display: inline-block;
/*
In the production "max-width" will be set to a percentage value rather than px units
Using pixels here just for illustration purposes
*/
max-width: 380px;
padding: 20px;
margin: 20px;
background-color: #fff;
border: 1px solid #ddd;
}
.img-wrapper {
}
.img-wrapper span {
display: inline-block;
position: relative;
overflow: hidden;
width: 128px;
height: 128px;
border-radius: 10px;
}
.img-wrapper img {
max-width: 196px;
position: absolute;
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%);
}

基本上,我想要实现的是让父/容器元素在子项<div class="container">
<div class="box">
<p>
Lorem ipsum dolor sit amet
</p>
<div class="img-wrapper">
<span>
<img src="https://i.imgur.com/yvMCRsv.jpg" />
</span>
<span>
<img src="https://i.imgur.com/efFdd14.jpg" />
</span>
<span>
<img src="https://i.imgur.com/7Yv987J.jpg" />
</span>
</div>
</div>
</div>
时只使用必要的空格(欢迎使用浮点数)
答案 0 :(得分:2)
这里是Fiddle,有工作解决方案
我基本上做了那件事,
float: left;
margin: 0px 5px 5px 0px;
和.img-wrapper span{}
:nth-of-type()
.img-wrapper span{}
选择器
代码:
.img-wrapper span {
display: inline-block;
position: relative;
overflow: hidden;
width: 128px;
height: 128px;
border-radius: 10px;
float: left;
margin: 0px 5px 5px 0px;
}
.img-wrapper span:nth-of-type(2n + 1){
clear: left;
}