【发布时间】:2019-12-19 19:56:54
【问题描述】:
我正在尝试将页面呈现为全高。但它添加了一个不可取的滚动条。对于 100% 的高度,我的意思是屏幕的大小。
这里是演示。黄色突出显示的部分是添加的不需要的高度。还有一个水平滚动条(未突出显示):
这里是页面的渲染方法:
return (
<>
<Box display='flex' flex='1' justifyContent='space-around'>
<IndexSelector
id='index'
value={symbol}
onChange={this.onSymbolChange}/>
<SeriesSelector
id='series'
seriesList={Form.seriesList}
onChange={this.onSeriesChange}/>
<DateRange fromDate={fromDate} toDate={toDate} onChange={this.onDateChange}/>
</Box>
<Box height='100%' border='1px solid red' marginTop='50px'>
<Graph instructions={this.getInstructions()} apiData={this.apiData} />
</Box>
</>
)
这里是 index.css:
html {
box-sizing: border-box;
}
html, body, #root {
padding: 0px !important;;
margin: 0px !important;;
height: 100vh;
width: 100vw;
}
*, *:before, *:after {
box-sizing: inherit;
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen",
"Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue",
sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
code {
font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New",
monospace;
}
如何避免这种额外的高度和宽度并使红色边框盒装容器全高?
编辑: 根据@gowatham 的建议,我试过了,但没有用。我得到了以下结果:
编辑 2:
HTML:https://pastebin.com/Qu2RFHe7 CSS:https://pastebin.com/1z3Zg5rv
【问题讨论】:
-
不要使用 100%,使用 100vh。 100vh 是浏览器窗口的全高。
-
@cloned 使用
100vh时要注意的一件事是,如果您有水平滚动条100vh也会给您一个垂直滚动条,100%不会 -
@conquester 请你用你的渲染代码和 css 制作一个minimal reproducible example,以便我们看看问题是什么
-
我在 Box 道具中将 100% 更改为 100vh,但滚动条仍然存在。
-
最有可能是因为你有 2 个盒子在彼此的顶部,其中一个是屏幕的高度,所以窗口会滚动第一个盒子的高度
标签: html css reactjs material-ui