gpt4 book ai didi

html - 将 HTML 区域扩展到屏幕底部并使用 HTML5 和 CSS 创建顶部和左侧菜单栏

转载 作者:太空宇宙 更新时间:2023-11-03 19:15:00 25 4
gpt4 key购买 nike

我正在尝试创建一个具有两个导航区域(顶部和左侧)的页面设置,与此类似:

Enter image description here

浅灰色区域是每个页面的主要内容所在的位置。左侧是第二个导航菜单,应延伸到屏幕底部并与主要内容区域齐平。

我不知道如何调整它们,使左侧菜单和主要内容区域都向下延伸到屏幕底部。我使用宽度百分比、 float 和位置 CSS 属性将它们彼此对齐(显示属性没有效果)。我认为问题在于我必须使用以下方法将主要内容区域向上推 95 像素:

bottom: 95px;

否则,左侧导航菜单的右下角和主内容区的左上角对 Angular 线接触,标题区在到达浅灰色主内容区之前有一个大的白色间隙。

我发现将它们的高度延伸到底部的唯一方法是以像素为单位设置它们的高度,但这并不完全有效,因为我将主要内容区域向上移动 95 像素,所以主要内容的底部该区域下方有一个白色间隙,并且与左侧导航菜单不一致。我的 HTML 部分如下所示:

<body>
<header>
<nav id="topMenu">
</nav>
<div id="titleAndUserInfo">
</div>
</header>

<nav id="leftMenu">
</nav>

<section id="main">
</section>
</body>

nav 标签遵循 ul li a 模式

更新

我能够让我的 CSS 和 HTML5 工作,所以位置是正确的,但是当没有足够的内容时,左侧导航菜单和浅灰色的主要内容区域仍然没有向下扩展到屏幕底部自动这样做。我该如何强制执行此操作?将它们的高度设置为 100% 或 px 值似乎不起作用。这是我在 Chrome 中查看的 HTML、CSS 和结果。

<body>
<header>
<nav id="topMenu">
<ul>
<li><a href="/">xxx</a></li>
<li><a href="/Home/About">xxxxx</a></li>
</ul>
</nav>
<div id="titleUserLogin">
<h1>Title</h1>
Welcome <strong>test</strong>!
<a href="/Account/LogOff">Log Off</a>
</div>
</header>
<nav id="leftMenu">
<ul>
<li><a href="/">Home</a></li>
<li><a href="/">xxxx</a></li>
<li><a href="/">xxxx</a></li>
<li><a href="/">xxx</a></li>
<li><a href="/">xxxx</a></li>
<li><a href="/">xxxx</a></li>
<li><a href="/">xxxx</a></li>
<li><a href="/">xxxx</a></li>
<li><a href="/">xxxx</a></li>
</ul>
</nav>
<section id="main">
<p>content</p>
</section>
</body>


/* General */
body {
margin: 0;
padding: 0;
border: 0;
height: 100%;
}

/* Header */
header {
text-align: left;
float: right;
position: relative;
width: 90.5%;
}

div#titleUserLogin {
color: #fff;
background-color: #303030;
display: inline-block;
width: 100%;
}

div#titleUserLogin h1 {
display: inline;
}

div#titleUserLogin a {
text-align: right;
float: right;
}

/* Navigation menus */
nav#topMenu ul {
padding: 0 0 2px;
position: relative;
display: inline;
}

nav#topMenu ul li {
list-style: none;
display: inline;
}

nav#topMenu ul li a {
background-color: #303030;
color: #fff;
-webkit-border-radius: 4px 4px 0 0;
-moz-border-radius: 4px 4px 0 0;
padding: 10px 20px;
line-height: 2.8;
text-decoration: none;
}

nav#leftMenu {
background-color: #303030;
position: relative;
float: left;
width: 9%;
}

nav#leftMenu ul {
position: relative;
}

nav#leftMenu ul li {
list-style: none;
}

/* main content */
section#main {
background-color: #d7d7d7;
height: 100%;
width: 90.5%;
float: right;
height: 100%;
}

Enter image description here

最佳答案

解决方案:

添加如下规则,调整nav#leftMenu和section#main规则的百分比高度,直到每一个的内容到达屏幕底部:

html { 
height: 100%;
}

关于html - 将 HTML 区域扩展到屏幕底部并使用 HTML5 和 CSS 创建顶部和左侧菜单栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6993098/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com