2
私は応答性のあるナビゲーションHTMLを持っています。私はハンバーガーメニューを1050px未満の画面サイズで表示することに成功し、メニューのオンとオフを切り替えます。問題は、画面を大きくする前にハンバーガーメニューを閉じないと、navメニューがdisplay:noneモードで止まって表示されないということです。それで、ナビゲーションが突然消えてしまうように見えます。私は通常のCSSは画面サイズが大きくなると思っていましたが、スクリプトの中にプロパティが設定されているためかもしれません。誰も私がこれを回避するのを助けることができますか?私はレスポンシブルデザインにはかなり新しいです。画面のサイズが大きくなると消えていく
HTML:
<nav>
<div class="navigation">
<a href="/index.html"> <img class="nav-img" src="/incl/image.png"> </a>
<button id="mobile" type="button" onclick="toggleFunction()">
<img src="/incl/menu.png" width="35px" height="35px" alt="menu">
</button>
<ul id="nav-list">
<li> <a href="/proposer/">Proposer</a> </li>
<li> <a href="/cda/">Archive</a> </li>
<li> <a href="/ciao/">Data<br/>Analysis</a> </li>
<li> <a href="/cal/">Instruments and<br/>Calibration</a> </li>
<li> <a href="/public/">For The<br/>Public</a> </li>
</ul>
</div></nav>
<script>
function toggleFunction() {
var x = document.getElementById('nav-list');
if (x.style.display === 'block') {
x.style.display = 'none';
} else {
x.style.display = 'block';
}
}
</script>
はCSS:
#nav-list {
list-style-type: none;
padding-top: 30px;
padding-right: 20px;
margin: 0px;
overflow: hidden;
display: inline-table;
float: right;
}
#nav-list li {
display: table-cell;
vertical-align: middle;
padding: 0px 15px;
margin: 0px;
text-align: center;
line-height: 110%;
font-size: 1.3em;
font-family: Helvetica, Arial, sans-serif;
font-weight: 400;
}
#mobile {
display: none;
}
@media only screen and (max-width: 1050px) {
.nav-img {
margin: 0px 5px 5px 5px;
}
#mobile {
display: inline;
float: right;
background-color: transparent;
border: 1px solid #333;
border-radius: 5px;
margin: 10px 10px 10px 0px;
padding: 5px;
}
#nav-list {
list-style-type: none;
margin: 0px;
padding: 0px;
overflow: hidden;
display: none;
float: none
}
#nav-list li {
display: block;
text-align: center;
margin: 10px 0px 10px 0px;
line-height: 110%;
font-size: 1em;
}
!ありがとうございました – got2b