html - Flexbox 没有按预期流动
问题描述
我无法让弹性框按预期运行。在我的情况下,body 是一个行 flexbox,其中包含一个 div,它是一个列 flexbox。列弹性框内部是单选按钮,但出于某种原因,它们以行而不是列的形式流动。我期望看到的是
选项 1 选项 3
选项 2 选项 4
我得到的是
选项 1 选项 2
选项 3 选项 4
html, body {
margin: 0;
padding: 0;
width: 100%;
height: 100%;
}
body {
display: flex;
flex: 1;
flex-direction: row;
align-items: center;
flex-wrap: wrap;
justify-content: center;
}
.horz_flex, .vert_flex {
display: flex;
flex-wrap: wrap;
flex: 1;
align-items: center;
justify-content: space-evenly;
}
.horz_flex {
flex-direction: row;
}
.vert_flex {
flex-direction: column;
}
.break {
flex-basis: 100%;
}
<!DOCTYPE html>
<meta charset="UTF-8">
<html>
<body>
<div id="spawns" class="vert_flex">
<p>
A place holder for something else in my project
</p>
<div class="break"></div>
<div id="example_input">
<label>
<input type="radio" name="radio_example">
Option 1
</label>
<label>
<input type="radio" name="radio_example">
Option 2
</label>
<div class="break"></div>
<label>
<input type="radio" name="radio_example">
Option 3
</label>
<label>
<input type="radio" name="radio_example">
Option 4
</label>
</div>
</div>
</body>
</html>
解决方案
您需要修改代码以确保内部内容example_input
使用 flex。默认情况下,example_input
div 是显示块,并且在您的原始代码中没有修改
html,
body {
margin: 0;
padding: 0;
width: 100%;
height: 100%;
}
body {
display: flex;
flex: 1;
flex-direction: row;
align-items: center;
flex-wrap: wrap;
justify-content: center;
}
.horz_flex,
.vert_flex {
display: flex;
flex-wrap: wrap;
flex: 1;
align-items: center;
justify-content: space-evenly;
}
.horz_flex {
flex-direction: row;
}
.vert_flex {
flex-direction: column;
}
.break {
flex-basis: 100%;
}
<!DOCTYPE html>
<meta charset="UTF-8">
<html>
<body>
<div id="spawns" class="vert_flex">
<p>
A place holder for something else in my project
</p>
<div class="break"></div>
<div id="example_input" class="horz_flex">
<div class="vert_flex">
<label>
<input type="radio" name="radio_example">
Option 1
</label>
<label>
<input type="radio" name="radio_example">
Option 2
</label>
</div>
<div class="vert_flex">
<label>
<input type="radio" name="radio_example">
Option 3
</label>
<label>
<input type="radio" name="radio_example">
Option 4
</label>
</div>
</div>
</div>
</body>
</html>
推荐阅读
- python - 宏程序不工作
- amazon-web-services - AWS Cognito /aws-amplify 错误 - 加密未定义
- vba - VBA在内容中查找word文档和指定的单词,然后在excel中列出
- ruby-on-rails - 为什么我需要将 public 添加到此类方法中?
- mysql - MySQL 如何解释 VARCHAR 字段大小?
- python - 从 for 循环返回的元素追加一个新列表
- html - FlexBox - 绝对位置表现得像固定的
- angular - ionic 3 typescript error 'ion-footer' 不是已知元素
- python - Moodle插件创建
- python - 在 pandas 中有一种方法可以计算扩展窗口的子部分;无需计算整个数组并“拖尾”结果