div の高さをコンテナに合わせてサイズ変更するにはどうすればよいでしょうか? 質問する

div の高さをコンテナに合わせてサイズ変更するにはどうすればよいでしょうか? 質問する

ナビゲーション div を下に拡張したり、高さを親 div と同じにするにはどうすればよいでしょうか?

*   {
    border:0; 
    padding:0; 
    margin:0;
}
#container {
    margin-left: auto;
    margin-right: auto;
    border: 1px solid black;
    overflow: auto;
    width: 800px;   
}
#nav {
    width: 19%;
    border: 1px solid green;
    float:left; 
}
#content {
    width: 79%;
    border: 1px solid red;
    float:right;
}
<div id="container">
    <div id="nav">
        <ul>
            <li>Menu</li>
            <li>Menu</li>
            <li>Menu</li>
            <li>Menu</li>
            <li>Menu</li>
        </ul>
    </div>
    <div id="content">
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam fermentum consequat ligula vitae posuere. Mauris dolor quam, consequat vel condimentum eget, aliquet sit amet sem. Nulla in lectus ac felis ultrices dignissim quis ac orci. Nam non tellus eget metus sollicitudin venenatis sit amet at dui. Quisque malesuada feugiat tellus, at semper eros mollis sed. In luctus tellus in magna condimentum sollicitudin. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur vel dui est. Aliquam vitae condimentum dui. Praesent vel mi at odio blandit pellentesque. Proin felis massa, vestibulum a hendrerit ut, imperdiet in nulla. Sed aliquam, dolor id congue porttitor, mauris turpis congue felis, vel luctus ligula libero in arcu. Pellentesque egestas blandit turpis ac aliquet. Sed sit amet orci non turpis feugiat euismod. In elementum tristique tortor ac semper.</p>
    </div>
</div>

ベストアンサー1

簡単な方法

これを実現するには、ナビゲーションの 属性topと属性の両方を に設定し、コンテナーを に設定します。bottom0position: absoluteposition: relative

これがどのように行われるか見てみましょう

モダンな方法 (Flexbox)

IE11+ およびすべての最新ブラウザは flexbox をサポートしています。

.container {
  display: flex;
  flex-direction: column;
}

.child {
  flex-grow: 1;
}

おすすめ記事