javascript - 如何以特定方式定位元素?
问题描述
我有一些 html div 和简单的 css 样式,如下所示:
.wrap{
display: flex;
flex-direction:row;
justify-content: space-around;
align-items: center;
}
.child{
width: 45px;
height: 45px;
border-radius: 50%;
background-color: lightBlue;
display:flex;
justify-content: center;
align-items: center;
font-size: 20px;
}
<div class='wrap'>
<div class='child'>
0
</div>
<div class='child'>
1
</div>
<div class='child'>
2
</div>
<div class='child'>
3
</div>
<div class='child'>
4
</div>
<div class='child'>
5
</div>
<div class='child'>
6
</div>
<div class='child'>
7
</div>
<div class='child'>
8
</div>
<div class='child'>
9
</div>
<div class='child'>
10
</div>
</div>
我想将此元素在移动设备上的位置更改为如下所示:
我怎样才能做到这一点?我首先想到的是 flex-wrap 和 order?
解决方案
你可以这样做:
.wrap {
display: flex;
flex-direction: row;
flex-wrap:wrap; /* enable the wrap*/
justify-content:center; /* center everything */
}
/* create a hidden element taking full width
used to seperate our elements
*/
.wrap:before {
content:"";
flex-basis:100%;
order:1
}
/* put all even elements after the seperation to have a new row*/
.child:nth-child(even) {
order:2;
}
.child {
width: 45px;
height: 45px;
margin:5px;
border-radius: 50%;
background-color: lightBlue;
display: flex;
justify-content: center;
align-items: center;
font-size: 20px;
}
<div class='wrap'>
<div class='child'>
0
</div>
<div class='child'>
1
</div>
<div class='child'>
2
</div>
<div class='child'>
3
</div>
<div class='child'>
4
</div>
<div class='child'>
5
</div>
<div class='child'>
6
</div>
<div class='child'>
7
</div>
<div class='child'>
8
</div>
<div class='child'>
9
</div>
<div class='child'>
10
</div>
</div>
推荐阅读
- javascript - jsPlumb 无法正确连接表格内的元素
- python - 如何获取对象的所有属性及其子对象的属性?
- python - 我的 Django 网页没有渲染模型。我该如何解决?
- javascript - 通过正则表达式匹配拆分字符串
- android - 无法使用 app:assembleAndroidTest 构建 android - 发现多个文件与操作系统无关路径“targetInvocationEspresso.json”
- c# - 当本地主机上没有接收器时,C# UDP 套接字发送异常
- django - Django:如何在多个模板上显示来自一个模板的上下文数据
- go - 针对 Google Photos API 的竞争条件
- reactjs - 如何显示自动完成错误
- php - Woocommerce 商店不显示产品