当浏览器窗口变小时,我想要包装到下一行的div.我也希望在div之间放置保证金,以便它们之间存在差距.我遇到的问题是,如果浏览器设置为特定大小,则中心div上的边距会导致div错误地换行.在一定的大小,你有一个div下面的2个div.请参阅下面的我的截图作为示例和这个小提琴:http://jsfiddle.net/uhh2jwe2/(更改窗口的宽度)
这确实需要是动态的,因为它将是一个框架解决方案,用于布置不同大小的div.父div将与示例类似.任何帮助都会很棒
#outer {
width: 90%;
height: 90%;
margin: 5%;
overflow: auto;
background-color: red;
}
.inner1 {
float: left;
width: 150px;
height: 150px;
margin-right: 20px;
background-color: blue;
}
.inner2 {
float: left;
width: 150px;
height: 150px;
margin-right: 20px;
background-color: blue;
}
.inner3 {
float: left;
width: 150px;
height: 150px;
background-color: blue;
}Run Code Online (Sandbox Code Playgroud)
<div id="outer">
<div class="inner1">1</div>
<div class="inner2">2</div>
<div class="inner3">3</div>
</div>Run Code Online (Sandbox Code Playgroud)
我认为我已经找到了最简单的解决方案来解决我想要做的事情,而无需使用媒体查询。我只是将右边距添加到包括最后一个字段在内的所有字段,而不是将其添加到除最后一个字段之外的每个字段。
然后,我将所有字段包装在另一个 div 中,并添加负边距(与间隙大小相同),以便字段在碰到容器侧面时会包装。这是解决方案的小提琴: http: //jsfiddle.net/rahg1ky3/
#outer {
width: 90%;
height: 90%;
margin: 5%;
overflow: auto;
background-color: red;
}
#inner {
margin-right: -20px;
}
.cont {
float: left;
width: 150px;
height: 150px;
margin-right: 20px;
background-color: blue;
}
<div id="outer">
<div id = "inner">
<div class="cont">1</div>
<div class="cont">2</div>
<div class="cont">3</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)