css - Material ui 选项卡容器的动态高度

标签 css reactjs sass material-ui

我遇到了一个问题,起初我认为这是我的应用程序的一般配置以及我为页面包装类提供的高度。但是我制作了一个简单的开箱即用 Material ui 选项卡示例,看起来这对于 Material ui 选项卡组件来说是很自然的。

Material UI 选项卡组件为其选项卡容器提供相同的高度,该高度是其所有容器中最大的。因此,如果您有一个包含大量内容的选项卡内容,它会使其他选项卡内容一样大,即使它们可能只有一个文本字段和一个按钮。

如何使容器的高度适应其自身标签的内容?

这是一个视觉效果 enter image description here

这里是为什么TAB ONE那么大,TAB TWO是设置高度 enter image description here

Here is a webpackBin让您看到代码工作并弄乱它。

我到目前为止所做的一个技巧是设置一个确定的高度和溢出,但我不想这样做,因为它会创建一个双滚动条(一个在选项卡容器中,一个在正文中)此外,它是看起来像 buggy 。

我希望选项卡容器(带绿色边框的那个)像在 TAB TWO 中一样根据内容进行调整,但是

提前致谢!

最佳答案

如果您根据给定元素的当前可见性设置高度,您将能够解决此问题。

例子

.react-swipeable-view-container > div[aria-hidden="false"] {
    height: 100%;
}

.react-swipeable-view-container > div[aria-hidden="true"] {
    height: 0;
}

注意:可以通过使用更好的选择器来改进此解决方案,选择器更具描述性,例如类名。我想这是主观的,但使用属性选择器在技术上并不是错误的,实际上比仅仅一个类更具体。

演示: https://www.webpackbin.com/bins/-Ky0z8h7PsdTYOddK3LG

关于css - Material ui 选项卡容器的动态高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47095900/

相关文章:

javascript - Googlemap iframe 在显示中不好看 :none DIV and hide/show via javascript

CSS 媒体查询 - 顺序很重要?

sass - 使 SASS 生成的行注释从项目根而不是文件系统根开始

javascript - 我有 6 个弹出窗口同时打开,但希望它们一一打开

javascript - 将项目添加到 ReactJs 状态的数组中,并设置超时以进行 self 删除

reactjs - 使用 Rollup 和 Sass react 可摇树的组件库

css - 悬停时,我想增加我悬停的元素的宽度,同时减少其他 2 个元素的宽度

单击时 JavaScript 不工作

wordpress - 导航栏中的灰色,找不到要删除的 CSS

android - 如何使用 react-native 在 textInput 字段中自动获取 '/'(斜线)