CSS: переполнение скрыто для мобильного меню - PullRequest
0 голосов
/ 30 июня 2018

Я работаю над адаптивной навигацией. Теперь все работает нормально, отзывчиво в порядке. Я хочу, чтобы выпадающее мобильное меню было исправлено на мобильном телефоне полной высоты, поэтому попробуйте с overflow:hidden; на классе .nav ul на носителе, также попробуйте jquery if($('.menu-icon').is(':visible')), чтобы добавить position:fixed;, но я что-то не так делаю.

body, html {
    margin: 0;
    padding: 0;
    width: 100%;
}

body {
    font-family: Quicksand;
}

header {
    width: 100%;
    height: 100vh;
    background: url("http://www.idizajner.com/dev/img/header.jpg") no-repeat 50% 50%;
    background-size: cover;
}

.logo {
    position: fixed;
    float: left;
    margin: 16px 36px;
    color: #fff;
    font-weight: bold;
    font-size: 24px;
}

nav {
    position: fixed;
    width: 100%;
}

nav ul {
    list-style-type: none;
    background: rgba(0,0,0,0);
    overflow: hidden;
    color: #fff;
    padding: 0;
    text-align: center;
    margin: 0;
    transition: 1s;
}

nav.black ul {
    background: #000;
}

nav ul li {
    display: inline-block;
    padding: 20px;
}
nav ul li a {
    text-decoration: none;
    color: #fff;
    font-size: 20px;
}

.menu-icon {
    width: 100%;
    background: #000;
    text-align: right;
    box-sizing: border-box;
    padding: 15px 24px;
    cursor: pointer;
    color: #fff;
    display: none;
}

@media(max-width: 580px) {
    .logo {
        position: fixed;
        top: 0;
        margin-top: 16px;
    }
    nav ul {
        max-height: 0px;
        background: #000;
        height: 100vh;
    }
    nav.black ul {
        background: #000;
    }
    .showing {
        max-height: 100vh;
    }
    nav ul li {
        box-sizing: border-box;
        width: 100%;
        padding: 24px 0;
        text-align: center;
    }
    .menu-icon {
        display: block;
    }
}
<meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="stylesheet" href=""><!DOCTYPE html>
<html lang="">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Navbar</title>
    <link rel="stylesheet" href="css/style.css">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
    <script src="https://code.jquery.com/jquery-3.2.1.js"></script>
    
    <script type="text/javascript">
// Menu toogle-button
$(document).ready(function () {
$(".menu-icon").on("click", function () {
    $("nav ul").toggleClass("showing");
})
})

//Scrolling effect

$(window).on("scroll", function() {
if($(window).scrollTop()) {
    $('nav').addClass('black');
}
else {
    $('nav').removeClass('black');
}
})
</script>

</head>

<body>
    


<div class="wrapper">
    <header>
        <nav>
            <div class="menu-icon">
                <i class="fa fa-bars fa-2x"></i>
            </div>
            <div class="logo">
                LOGO
            </div>
            <div class="menu">
                <ul>
                    <li><a href="index.html">Home</a></li>
                    <li><a href="#">About</a></li>
                    <li><a href="#">Contact</a></li>
                </ul>
            </div>


            
        </nav>
    </header>

    <section>
    <p>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/>Text text text<br/></p>
    </section>
    
</div>
    


</body>
</html>

Это мой фрагмент кода. Откройте в полную ширину и измените размер браузера для меню гамбургеров Спасибо!

1 Ответ

0 голосов
/ 30 июня 2018

Вы не объяснили свою проблему четко. Однако, насколько я проверил ваш код, я нашел ниже:

  • Вы указали height: 100vh в своем коде, который заставляет ваш заголовок занимать полную высоту области просмотра. Таким образом, содержимое раздела находится вне области просмотра. Попробуйте задать фиксированную высоту, например height: 50px;.
  • То же, что и выше, вы указываете полную высоту окна просмотра в списке меню гамбургера. Даешь height: 100% хорошо работает.
  • Вы не скрываете и не показываете nav во время прокрутки. Просто изменив свой фон. Если вы не хотите показывать меню перед прокруткой, скройте его, а затем display: block во время прокрутки. Таким образом, содержимое вашего раздела может занять пространство заголовка и избежать пустого пространства на вашей странице.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...