我試圖完成一些非常簡單的事情。我可憐的生鏽的CSS技能並沒有幫助。CSS拉伸至100%高度
我不能做到這一點。如果我使用height: 100%
,它在沒有太多文本的情況下工作,但是當我添加大量Lorem Ipsum時,內容div會被拉伸,左邊的菜單div不會隨之縮放。
我不想使用JavaScript,只是乾淨的CSS,如果這是可能的。
HTML:
<html>
<head>
<title>test</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<div id="header">Header</div>
<div id="menu">Menu</div>
<div id="content">Content (paste a lot of lorem ipsum here and menu doesn't stretch)</div>
</body>
</html>
CSS
body
{
margin: 0;
height: 100%;
background-color: gray;
}
#header
{
height: 50px;
background-color: white;
border: 1px solid black;
}
#menu
{
width: 225px;
float: left;
height: calc(100% - 50px);
background-color: white;
border: 1px solid black;
}
#content
{
overflow: auto;
background-color: white;
border: 1px solid black;
}
柔性盒是你在找什麼。 - https://css-tricks.com/snippets/css/a-guide-to-flexbox/ – Andrew
它實際上並不像您想象的那麼簡單,而且這是很多人提出的常見設計要求,那不是直接的或「開箱即用' – Lee
你想要的外觀**看起來很簡單**,但不是。你問了很多瀏覽器。而且,身高100%並不符合你的想法:http://stackoverflow.com/questions/7880365/why-does-100-not-mean-100-height。最後,你不需要100% - 你想100%*減去你的標題*的高度。 –