【发布时间】:2020-12-20 05:25:19
【问题描述】:
我正在尝试使用列表、javascript 和@media 创建一个响应式导航栏。 当我将浏览器的大小调整到 ~700px 时,列表样式中的项目是“显示:无”,并且出现了汉堡菜单。如果我不单击汉堡菜单,当我将浏览器调整为正常大小时,列表仍然显示内联块,但是当我单击汉堡菜单以在“列表项”中显示菜单项时,我仍然得到列表- 当我将浏览器大小调整为正常时的项目显示类型。
我错过了什么吗?
function myFunction3() {
x = document.getElementsByClassName("li-tag");
if (x[0].style.display === 'none'){
for (index = 0; index<x.length; index++)
{
x[index].style.display = 'list-item';
}
} else {
for (index = 0; index<x.length; index++)
{
x[index].style.display = 'none';
}
}
}
我的@媒体
@media (max-width: 700px){
.toggle-button{
display:block;
}
.li-tag {
display:none;
}
}
导航栏的 CSS:
.tags{
background: #0000cc;
color:white;
font-family: 'Alata', sans-serif;
width: 100%;
text-align: center;
}
.ul-tag {
list-style-type:none;
width: 70%;
margin:auto;
text-align: center;
}
.li-tag {
display:inline-block;
font-family: 'Alata', sans-serif;
font-size:25px;
margin-right: 10px;
}
HTML 代码:
<div class ="tags" >
<a href="#" class ="toggle-button" onclick = "myFunction3()">☰</a>
<ul class = "ul-tag">
<li class = "li-tag "><a href="#home">Home</a></li>
<li class = "li-tag "><a href="#news">Type 1</a></li>
<li class = "li-tag"><a href="#contact">Type 2</a></li>
<li class = "li-tag "><a href="#about">Type 3</a></li>
<li class = "li-tag "><a href="#about">Type 4</a></li>
<li class = "li-tag "><a href="#about">Type 4</a></li>
<li class = "li-tag "><a href="#about">Type 4</a></li>
<li class = "li-tag "><a href="#about">Type 4</a></li>
<li class = "li-tag "><a href="#about">Type 4</a></li>
</div>
我的Code
感谢任何输入!
【问题讨论】:
-
你不能选择使用像 bootstrap 这样的 CSS 库吗?
-
我可以使用引导程序,但我更喜欢手动操作以适应它。如果我先对代码感到满意,也许我可以稍后使用引导程序...
标签: javascript html css