html - 如何仅将 flex-direction 应用于 flex 容器内的某些元素?
问题描述
我有一个 flex 容器,里面有 3 个元素(X、Y、Z)。
目前,X、Y 和 Z 像一行一样堆叠。但是,我想让 Y 和 Z 像柱子一样堆叠而不影响 X。
这是 Codepen,它也更好地解释了我想要实现的目标:
https://codepen.io/kibezin/pen/qBOQypy
我尝试将flex-direction: column
: 应用于 Y 和 Z(用户的奖项和用户的草图),但它不会影响它们(我想它只能通过父节点应用)。有什么办法可以做到这一点?
甚至更好,也许使用 Flexbox 是多余的,有更好的选择吗?
谢谢你。
解决方案
你需要有一个包装器和相应的样式。正如您所指出的 - flex 仅适用于 felx 容器的 DIRECT 子级 - 因此 - 添加包装器将打破该循环并应用正常布局。
#profile-container
{
display: flex;
}
#profile-container>div:not(#profile-info)
{
flex-wrap: 1;
}
#profile-info
{
transform: translateY(25px);
padding-top: 10px;
text-align: center;
margin-left: 10px;
margin-right: 20px;
flex-grow: 1;
min-width: 250px;
max-width: 250px;
height: 500px;
border-radius: 10px;
background-color: rgba(0, 0, 0, 0.1);
}
#profile-sketch
{
background-color: yellow;
display: block;
width: 150px;
height: 150px;
border: 1px solid black;
}
<div id="profile-container">
<aside id="profile-info">
<div id="profile-sketch"></div>
<br>
<hr>
<span id="profile-username">username</span>
<span id="profile-karma">350</span>
<br>
<span id="profile-bio">About:</span>
</aside>
<div class="profile-awards-and-">
<div id="profile-awards-wrapper">
<h2>user's awards</h2>
<ul>
<li> award 1</li>
<li> award 2</li>
<li> award 3</li>
</ul>
</div>
<div id="profile-sketches-wrapper" >
<h2>user's sketches</h2>
<div id="profile-sketches-placeholder">
SKETCH 1, SKETCH 2, SKETCH 3
</div>
</div>
</div>
</div>
推荐阅读
- python - 宽松的 XML python 解析器:解决 xml 标签重叠
- apache-spark - 如何在 k8s 上的 spark 中使用 HDFS HA?
- java - 声纳 qube 规则的自动重构 仅在方法中用作局部变量的私有字段应成为局部变量
- geometry - 检查线段是否在多边形内
- mysql - MySQL 中的 Dynamic Pivot - 如何从 mySQL 存储过程中的 select 循环进入字段?
- powerbuilder - 使用powerbuilder以编程方式在excel文件中启用宏
- anaconda - 在 tmux 中拆分窗格时保持旧的 conda env 处于激活状态
- jquery - jquery检查取消选中表行,除了单击子输入
- powershell - 将 HTML 转换为 CSV
- powershell - 继续脚本,一旦搜索完成