Mic*_*l_B 15
所有项目之间至少有两种方法可以保持相等的空间,包括第一项和最后一项.但是,有一种方法还没有完整的浏览器支持.
请注意Firefox文档中的这一部分:
实际上,所有主流浏览器都认为flex容器上的伪元素是flex项.
知道了,添加::before
和::after
容器.
使用justify-content: space-between
零宽度伪元素,可见的弹性项目将均匀分布.
flex-container {
display: flex;
justify-content: space-between;
}
flex-container::before {
content: "";
}
flex-container::after {
content: "";
}
/* non-essential decorative styles */
flex-container {
padding: 5px 0;
background-color: lightyellow;
border: 1px solid #aaa;
}
flex-item {
height: 50px;
width: 75px;
background-color: lightgreen;
}
Run Code Online (Sandbox Code Playgroud)
<flex-container>
<flex-item></flex-item>
<flex-item></flex-item>
<flex-item></flex-item>
<flex-item></flex-item>
</flex-container>
Run Code Online (Sandbox Code Playgroud)
space-evenly
该CSS框对齐模块,这是W3C的建立一套共同的所有箱的型号使用的取向性的未完成的建议,提供了space-evenly
与使用价值justify-content
和align-content
性能.
4.3.分布式阵营:在
stretch
,space-between
,space-around
,和space-evenly
关键字
space-evenly
对齐对象均匀分布在对齐容器中,两端都有一个全尺寸的空间.
对准对象被分布,使得任何两个相邻对准对象之间,第一对准对象之前和最后对准对象之后的间隔相同.
然而,在撰写本文时,它看起来space-evenly
只适用于Firefox和Chrome.
flex-container {
display: flex;
justify-content: space-evenly;
}
/* non-essential decorative styles */
flex-container {
padding: 5px 0;
background-color: lightyellow;
border: 1px solid #aaa;
}
flex-item {
height: 50px;
width: 75px;
background-color: lightgreen;
}
Run Code Online (Sandbox Code Playgroud)
<flex-container>
<flex-item></flex-item>
<flex-item></flex-item>
<flex-item></flex-item>
<flex-item></flex-item>
</flex-container>
Run Code Online (Sandbox Code Playgroud)
此外,这是一个来自MDN justify-content
页面的有用演示,用于测试space-evenly
和浏览器中的其他值.https://jsfiddle.net/gkrsr86n/
只有在 Firefox 中才有执行此操作space-evenly
的值。justify-content
它在 CSS3 工作草案中
https://www.w3.org/TR/css-align-3/#valdef-align-content-space-evenly
div {
display: flex;
height: 100px;
justify-content: space-evenly;
border: 1px solid black;
margin: auto;
}
span {
width: 20%;
background: red;
}
Run Code Online (Sandbox Code Playgroud)
<div>
<span></span>
<span></span>
<span></span>
</div>
Run Code Online (Sandbox Code Playgroud)
您可以通过设置padding
Flex容器和margin
flex项目来完成此操作:
.container {
display: flex;
padding: 0 1%;
}
.item {
flex: 1;
margin: 0 1%;
}
Run Code Online (Sandbox Code Playgroud)
https://codepen.io/danieldilly/pen/PjgRbe
小智 8
这是一个完美的用例 flex-basis
,justify-content: space-between
如果您事先知道您的行中有多少组件。为您的 flex-items 指定一个 flex-basis 百分比,所有项目的总数小于 100%。剩余的百分比将成为利润率。
没有伪元素、子选择器或填充/边距。
div {
display: flex;
justify-content: space-between;
height: 100px;
}
span {
flex-basis: 32%;
background: red;
}
Run Code Online (Sandbox Code Playgroud)
<div>
<span></span>
<span></span>
<span></span>
</div>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
22653 次 |
最近记录: |