reactjs - 仅当有内容时才使 flex-item 尊重宽度
问题描述
我想创建一个 flex-item,仅当存在如下内容时才占用容器的 33% 的宽度:
<FlexItem width='33%'> <Somedom /> </FlexItem>
这里FlexItem
是一个组件,它可以将所有的 flex 属性作为 props 并渲染一个 div。现在,Somedom
可以在 dom 中渲染 null,在这种情况下,我希望FlexItem
完全没有宽度,并允许同级 div 填充整个容器。
我想知道是否有任何基于弹性的安排可以帮助我实现这一目标。此外,我无法知道它是否会渲染内容。我也不想移动FlexItem
组件Somedom
。
解决方案
使用 @04FS 的:empty建议
你可以做这样简单的事情。
.FlxRw {
display: flex;
}
.Flx {
flex:0 0 33%;
background:#cdf;
}
.Flx:empty {
flex:0 0 0%;
}
<div class="FlxRw">
<div class="Flx"></div>
</div>
<div class="FlxRw">
<div class="Flx">Content</div>
</div>
<div class="FlxRw">
<div class="Flx"></div>
</div>
推荐阅读
- sql - 在使用 Installshield 安装期间,如何连接到现有的 Oracle 数据库?
- mysql - 更改类型字段后列的数据被截断
- python-3.x - 如何使用matplotlib绘制excel大数据集而不是从第一个索引开始
- php - 如何从curl打印值中的文本
- svg - SVG:
标记 以任何 svg 元素为目标 - php - 如何从公共/图像存储符号链接获取路径?
- reactjs - React Native登录后自动更新Async storage Key的数据
- macos - 卡特琳娜的终端“资源暂时不可用”
- javascript - Nodejs Plotlyjs 单独工作,但不能一起工作
- google-cloud-platform - OAuth 同意屏幕 - 删除应用程序徽标的能力