请查看我的代码,点击'运行'按钮查看结果:
https://www.w3schools.com/code/tryit.asp?filename=FG1HLL1GNU7B
.outsideDiv {
background-color: green;
margin: auto;
width: 50%;
border: 1px solid black;
text-align: center;
padding: 10px;
}
.insideDiv {
background-color: yellow;
margin: 10px;
padding: 10px;
display: inline-block;
border: 1px solid black;
}
.shortItem {
background-color: white;
display: block;
color: black;
text-align: center;
padding: 7px 17px;
text-decoration: none;
float: right;
margin: 10px;
border: 1px solid black;
height: 30px;
width: 120px;
}

<div class="outsideDiv">
<div class="insideDiv">
<div class="shortItem"></div>
<div class="shortItem"></div>
<div class="shortItem"></div>
<div class="shortItem"></div>
<div class="shortItem"></div>
<div class="shortItem"></div>
<div class="shortItem"></div>
</div>
</div>
&#13;
我想要实现的目的是:
但我无法让它发挥作用。我希望当用户更改页面宽度时,白色项目之间的间隙将保持固定20px
,并且最左边和最右边的项目与黄色div的边界之间的间隙将是完全是20px
。
我该怎么做?
(您可以更改我的代码,使用上方菜单保存,然后在此处输入固定代码的链接)
谢谢!
答案 0 :(得分:1)
使用display: flex
可以保存一些有关定位.innerDiv
及其子项的计算:
.outsideDiv {
display: flex;
justify-content: center;
align-content: center;
background-color: green;
margin: auto;
width: 50%;
border: 1px solid black;
padding: 10px 0;
}
.insideDiv {
background-color: yellow;
border: 1px solid black;
max-width: 90%;
}
.shortItem {
background-color: white;
display: inline-block;
color: black;
text-align: center;
padding: 7px 17px;
margin: 10px 0 10px 20px;
text-decoration: none;
border: 1px solid black;
height: 30px;
width: 120px;
}
&#13;
<div class="outsideDiv">
<div class="insideDiv">
<div class="shortItem"></div>
<div class="shortItem"></div>
<div class="shortItem"></div>
<div class="shortItem"></div>
<div class="shortItem"></div>
<div class="shortItem"></div>
<div class="shortItem"></div>
</div>
</div>
&#13;
查看整页模式以获得图像中的设计。
答案 1 :(得分:0)
就是你要找的东西。让我知道......如果它还好吗? https://www.w3schools.com/code/tryit.asp?filename=FG1J3XI6KHHM
答案 2 :(得分:0)
您只需更改设置为右侧的float属性即可。将其更改为左侧和 看到结果会和你预期的一样 Check This