Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 使用flexbox在一行中显示4个div_Html_Css_Flexbox - Fatal编程技术网

Html 使用flexbox在一行中显示4个div

Html 使用flexbox在一行中显示4个div,html,css,flexbox,Html,Css,Flexbox,我试图用下面的html在一行中显示4个框。所以一行应该有4个盒子。我总共有8个框,将有2行4列 <div class="parent"> <div class="child box1">A Child</div> <div class="child"> <div class="box2">B Child 1</div> <div class="box3">B Child 2</div

我试图用下面的html在一行中显示4个框。所以一行应该有4个盒子。我总共有8个框,将有2行4列

<div class="parent">
  <div class="child box1">A Child</div>
  <div class="child">
    <div class="box2">B Child 1</div>
    <div class="box3">B Child 2</div>
    <div class="box4">B Child 3</div>
    <div class="box5">B Child 4</div>
    <div class="box6">B Child 5</div>
    <div class="box7">B Child 6</div>
  </div>
  <div class="child box8">C Child</div>
</div>
我尝试的css是

.parent {
  display: flex;
  flex-wrap: wrap;
}


.parent>.child {
  flex: 1 1 20%;
}

.box1, .box2, .box3, .box4, .box5, .box6, .box7, .box8 {
  height:100px;
  width:100px;
  border:10px solid red;
}

如果希望它们都基于单个父项排序,则需要将它们都变成父项的子项。下面是一个如何实现你所期望的目标的例子

.parent{
显示器:flex;
弯曲方向:行;
柔性包装:包装;
}
.盒子{
高度:100px;
宽度:25%;
边框:10px纯红;
框大小:边框框;
}

孩子
B儿童1
B儿童2
B儿童3
B儿童4
B儿童5
B儿童6
C儿童

这可以通过
显示:内容
实现,但是该属性值目前很差或有缺陷

.parent{
显示器:flex;
柔性包装:包装;
}
.打开{
显示:内容;
}
.盒子{
高度:100px;
宽度:25%;
边框:3倍纯红;
框大小:边框框;
}

孩子
B儿童1
B儿童2
B儿童3
B儿童4
B儿童5
B儿童6
C儿童

您可以使用一些浮点(是的浮点!)

.box{
高度:100px;
宽度:25%;
边框:3倍纯红;
框大小:边框框;
浮动:左;
}
.家长{
溢出:隐藏;/*清除浮动*/
}

孩子
B儿童1
B儿童2
B儿童3
B儿童4
B儿童5
B儿童6
C儿童

此问题与其他问题有何不同?您的标记是否可以更改?对于您当前的HTML,您试图实现的目标是不可能的。@my markup的目标是不可能的change@j08691最后一个问题。我无法用适当的方式解释,如果你的html无法更改,那么你就无法得到你想要的。你是对的。它不会按照您当前的html(因此对html的更改)所需的方式进行布局。我的代码是angular的,它有一些组件。它的html就像样本htmlI站更正!干得好,泰曼尼!我假设
flex
是一项要求,但可能不是,因为我在flexbox中添加了一个想法,但它更适合于这种特殊情况
.parent {
  display: flex;
  flex-wrap: wrap;
}


.parent>.child {
  flex: 1 1 20%;
}

.box1, .box2, .box3, .box4, .box5, .box6, .box7, .box8 {
  height:100px;
  width:100px;
  border:10px solid red;
}