无法使用位置:粘性;通过.innerHTML

问题描述 投票:0回答:1

我想使菜单停留在页面顶部。如果我只是将代码添加到页面中,则代码可以正常工作。但是,我想使用javascript,因为我希望能够更改每个页面上的菜单,而不必在每个页面上手动进行操作。

document.getElementById('menu-js').innerHTML = `<div id="menu">
	<div class="dropdown">
			<button class="dropbtn">Button_1</button>
			<div class="dropdown-content">
				<a href="/src">Link 1</a>
				<a href="/src">Link 2</a>
				<a href="/src">Link 3</a>
			</div>
		</div>
	<div class="dropdown">
		<button class="dropbtn">Button_2</button>
		<div class="dropdown-content">
			<a href="/src">Link 4</a>
			<a href="/src">Link 5</a>
			<a href="/src">Link 6</a>
		</div>
	</div>
</div>`
@import url('https://fonts.googleapis.com/css?family=Abril+Fatface|Arsenal|Rubik&display=swap');
#menu {
  background-color: white;
  top: 0px;
  left: 0px;
  position: sticky;
  padding-left: 10px;
  margin-top: -8px;
  margin-left: -30px;
  margin-right: -0.51%;
  border-bottom-color: black;
  border-bottom-style: solid;
  border-bottom: 5px;
}

.dropbtn {
  background-color: white;
  color: black;
  padding: 16px;
  font-size: 16px;
  border: none;
  margin: none;
  font-family: 'Arsenal';
}

.dropdown {
  display: inline-block;
}

.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f2d3d8;
  min-width: 200px;
  z-index: 1;
  font-family: 'Arsenal';
}

.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

.dropdown-content a:hover {
  background-color: #ffd3b6;
}

.dropdown:hover .dropdown-content {
  display: block;
}

.dropdown:hover .dropbtn {
  background-color: #c06014;
  color: white;
}

#page-container {
  position: relative;
  min-height: 100vh;
}

#content-wrap {
  padding-bottom: 2.5rem;
}

footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2.5rem;
}

hr {
  margin-left: -20px;
  color: #c06014
}
<html>

<head>
  <title>TITLE</title>
  <link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>
  <div id='page-container'>
    <div id='content-wrap'>
      <h1>Content above menu</h1>
      <div id='menu-js'></div>
      <h1>body</h1>
      <h2>body</h2>
    </div>
    <footer>
      <hr>FOOTER</footer>
  </div>
  <script src='menu.js'></script>
</body>

</html>

[如果可能,我只想使用这三种语言。谢谢!

javascript html css css-position innerhtml
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.