Html 如何动态调整垂直侧栏以自动调整浏览器的标题和底部
下面的代码将自动调整垂直于浏览器窗口的菜单项,但不考虑标题。如何垂直对齐浏览器标题和底部之间的侧栏。当前,底部项目延伸到浏览器底部下方 HTML:Html 如何动态调整垂直侧栏以自动调整浏览器的标题和底部,html,css,Html,Css,下面的代码将自动调整垂直于浏览器窗口的菜单项,但不考虑标题。如何垂直对齐浏览器标题和底部之间的侧栏。当前,底部项目延伸到浏览器底部下方 HTML: 您可以在另一个flexbox中包装标题和侧栏。 HTML <div class="flex"> <h1> Header </h1> <div class="sidebar"> <ul> <li>Item 1</l
您可以在另一个flexbox中包装标题和侧栏。 HTML
<div class="flex">
<h1>
Header
</h1>
<div class="sidebar">
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
<li>Item 6</li>
<li>Item 7</li>
</ul>
</div>
</div>
这是我最后使用的 HTML:
标题高度已知吗?如果页面包含垂直滚动条,菜单是否应设置为“位置:固定”,以便在固定位置始终可见?您应该将HTML和CSS放在SO答案的
编辑器中,这样我们就有了一个不链接到第三方网站(如JSFIDLE)的实时演示。也许您是对的,这是我个人的偏好,尤其是如果有外部资源或框架的话。下次我将尝试使用内部引擎:)
.sidebar{
background-color: orange;
margin-left: 30px;
height: 100vh;
position: fixed;
top: 0px;
}
.sidebar ul{
height: 100%;
list-style-type: none;
padding: 0px 15px 0px 15px;
margin:0px;
display: flex;
flex-direction: column;
justify-content: space-around;
}
<div class="flex">
<h1>
Header
</h1>
<div class="sidebar">
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
<li>Item 6</li>
<li>Item 7</li>
</ul>
</div>
</div>
.flex{
flex-direction: column;
}
.sidebar{
flex:1;
display:inline-block;
background-color: orange;
margin-left: 30px;
height: 100vh;
top: 0px;
}
.sidebar ul{
height: 100%;
list-style-type: none;
padding: 0px 15px 0px 15px;
margin:0px;
display: flex;
flex-direction: column;
justify-content: space-around;
}
<h1>
Header
</h1>
<section>
<div class="sidebar">
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
<li>Item 6</li>
<li>Item 7</li>
</ul>
</div>
<main>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
<p>main content</p>
</main>
</section>
body {
display: flex;
height: 100vh;
}
section {
display: flex;
flex-grow: 1;
}
main {
background: #eee;
position: absolute;
}
body, .sidebar, .sidebar ul {
display: flex;
flex-direction: column;
}
.sidebar ul {
flex-grow: 1;
}
.sidebar{
background-color: orange;
}
.sidebar ul{
list-style-type: none;
padding: 0px 15px 0px 15px;
margin:0px;
justify-content: space-around;
}