首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >0高度导航栏仍然可见吗?

0高度导航栏仍然可见吗?
EN

Stack Overflow用户
提问于 2019-03-27 09:02:16
回答 2查看 72关注 0票数 -3

我正在设计一个投资组合网站,并希望有我的工作滑动到屏幕上,当你点击投资组合,同样的方式导航栏将滑动时,你点击一个菜单图标。我的代码适用于左侧和右侧的导航栏,但对于底部,即使高度为0,它仍然显示块

不幸的是,使用display:none并使用jquery将其更改为display:block会移除滑动到屏幕上的平滑动画。

代码语言:javascript
复制
html

        <div id="portfolionav" class="portfolionav">
            <a href="javascript:void(0)" class="closebtn" 
             onclick="closeNav2()">&#9755;</a>
            <a href="#">testing</a>
            <a href="#">Services</a>
            <a href="#">Clients</a>
            <a href="#">Contact</a>
        </div>

        <div id=bottom>
            <h1 onclick="openNav2()">PORTFOLIO</h1>
        </div>
代码语言:javascript
复制
css

        .portfolionav {
           height: 0;
           width: 100%;
           position: fixed;
           z-index: 3;
           bottom: 0;
           background-color: #111;
           overflow-x: hidden;
           transition: 0.5s;
           padding-top: 60px;
           display: block;
        }

        .portfolionav a {
           padding: 8px 8px 8px 32px;
           text-decoration: none;
           font-size: 25px;
           color: #818181;
           display: block;
           transition: 0.3s;
        }

        .portfolionav a:hover {
           color: #f1f1f1;
        }

        .portfolionav .closebtn {
           position: absolute;
           bottom: 25px;
           right: 75px;
           font-size: 36px;
           writing-mode: vertical-rl;
        }
代码语言:javascript
复制
javascript

        function openNav2() {
            document.getElementById("portfolionav").style.height = "100vh";
        }

        function closeNav2() {
            document.getElementById("portfolionav").style.height = "0";
        }
EN

回答 2

Stack Overflow用户

发布于 2019-03-27 09:09:36

使用display: none代替height。

票数 2
EN

Stack Overflow用户

发布于 2019-03-27 11:56:05

您可以组合使用heightpaddingTop来显示和隐藏导航,因为在设置height:0px;时会对导航进行填充

代码语言:javascript
复制
function openNav2() {
debugger;
    document.getElementById("portfolionav").style.height = "100vh";
    document.getElementById("portfolionav").style.paddingTop = "60px";
}

function closeNav2() {
    document.getElementById("portfolionav").style.height = "0";
    document.getElementById("portfolionav").style.paddingTop = "0";
}
代码语言:javascript
复制
 .portfolionav {
     height: 0;
     width: 100%;
     position: fixed;
     z-index: 3;
     bottom: 0;
     background-color: #111;
     overflow-x: hidden;
     transition: 0.5s;
     padding-top: 0px;
     display: block;
  }

  .portfolionav a {
     padding: 8px 8px 8px 32px;
     text-decoration: none;
     font-size: 25px;
     color: #818181;
     display: block;
     transition: 0.3s;
  }

  .portfolionav a:hover {
     color: #f1f1f1;
  }

  .portfolionav .closebtn {
     position: absolute;
     bottom: 25px;
     right: 75px;
     font-size: 36px;
     writing-mode: vertical-rl;
  }
代码语言:javascript
复制
        <div id="portfolionav" class="portfolionav">
            <a href="javascript:void(0)" class="closebtn" 
             onclick="closeNav2()">&#9755;</a>
            <a href="#">testing</a>
            <a href="#">Services</a>
            <a href="#">Clients</a>
            <a href="#">Contact</a>
        </div>

        <div id=bottom>
            <h1 onclick="openNav2()">PORTFOLIO</h1>
        </div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55368311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档