如何让导航栏在 CSS 中保持在顶部
How to make the navbar stay at the top in CSS
我需要一些关于如何让我的导航栏在 CSS 中保持在顶部的帮助。从技术上讲,我使用的是 Sass,但是 CSS 与 Sass 兼容,所以一切都很好(只要它有效!)。
我知道这个问题已经被问过好几次了,但通常是 JavaScript 或者没有回答问题。我已经尝试使用 position:sticky
,但也许我把它放在了错误的标签中。
这里是 html 代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="../../static/css/styles.css">
<title>Home</title>
</head>
<body>
<div class="navbar">
<h1>SomeCompany</h1>
<ul>
<li><a href="localhost:8000">Home</a></li>
<li><a href="localhost:8000">About</a></li>
<li><a href="localhost:8000">Products</a></li>
<li><a href="localhost:8000">Testimonials</a></li>
<li><a href="localhost:8000">Contact Us</a></li>
</ul>
</div>
</body>
</html>
现在,这是 CSS 代码(我在 .navbar
中使用 position:sticky
):
body {
margin: 0; }
.navbar {
position: sticky;
padding: 1em 2em;
background-color: antiquewhite;
h1 {
margin: 0; }
ul {
position: relative;
bottom: 1em;
float: right;
li {
display: inline;
margin-right: 2em; }
}
}
提前致谢
我相信这里描述了您要尝试做的事情:https://www.w3schools.com/howto/howto_css_fixed_menu.asp
您需要在导航栏中定义 top: 0px;
(或您想要的任何值)然后它应该可以工作。
你可以尝试加入css position:absolute;和 top:0;到导航栏 class.
我需要一些关于如何让我的导航栏在 CSS 中保持在顶部的帮助。从技术上讲,我使用的是 Sass,但是 CSS 与 Sass 兼容,所以一切都很好(只要它有效!)。
我知道这个问题已经被问过好几次了,但通常是 JavaScript 或者没有回答问题。我已经尝试使用 position:sticky
,但也许我把它放在了错误的标签中。
这里是 html 代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="../../static/css/styles.css">
<title>Home</title>
</head>
<body>
<div class="navbar">
<h1>SomeCompany</h1>
<ul>
<li><a href="localhost:8000">Home</a></li>
<li><a href="localhost:8000">About</a></li>
<li><a href="localhost:8000">Products</a></li>
<li><a href="localhost:8000">Testimonials</a></li>
<li><a href="localhost:8000">Contact Us</a></li>
</ul>
</div>
</body>
</html>
现在,这是 CSS 代码(我在 .navbar
中使用 position:sticky
):
body {
margin: 0; }
.navbar {
position: sticky;
padding: 1em 2em;
background-color: antiquewhite;
h1 {
margin: 0; }
ul {
position: relative;
bottom: 1em;
float: right;
li {
display: inline;
margin-right: 2em; }
}
}
提前致谢
我相信这里描述了您要尝试做的事情:https://www.w3schools.com/howto/howto_css_fixed_menu.asp
您需要在导航栏中定义 top: 0px;
(或您想要的任何值)然后它应该可以工作。
你可以尝试加入css position:absolute;和 top:0;到导航栏 class.