javascript - 鼠标悬停时如何淡出导航栏并淡入导航栏

标签 javascript jquery html css twitter-bootstrap

所以我对 Web 应用程序开发还很陌生,我想知道如何解决这个问题:

我希望导航栏从一开始就一直淡出,除非我用鼠标悬停在它上面时我希望它淡入并显示。 我该怎么做?

<nav class="navbar navbar-inverse" role="navigation">
<div class="container-fluid">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
        <a class="navbar-brand" href='#'>My Spring App</a>
        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#main-navbar-collapse">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
        </button>
        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#side-navbar-collapse">
            <span class="sr-only">Top Links</span>
            <span class="glyphicon glyphicon-globe"></span>
        </button>
    </div>

    <ul class="nav navbar-nav navbar-left collapse navbar-collapse" id="main-navbar-collapse">
        <li class="menu-item"><a href='<c:url value="/"/>'>Home</a></li>
        <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-hover="dropdown">Hello <b class="caret"></b></a>
            <ul class="dropdown-menu">
                <li><a href='<c:url value="/hello?choice=World"/>'>World</a></li>
                <li><a href='<c:url value="/hello?choice=Kitty"/>'>Kitty</a></li>
                <li class="dropdown-submenu">
                    <a href="#">Languages</a>
                    <ul class="dropdown-menu">
                        <!-- Third level list items on submenu -->
                        <li><a href='#'>Bonjour</li>
                        <!-- Example of conditionally enabling an item based on user role -->
                        <sec:authorize access="hasRole('ROLE_USER')">
                            <li><a href='<c:url value="/hello?choice=Guten%20Tag"/>'>Guten Tag</a></li>
                        </sec:authorize>
                        <sec:authorize access="!hasRole('ROLE_USER')">
                            <li class="disabled"><a href="#">Guten Tag</a></li>
                        </sec:authorize>
                        <li class="divider"></li>
                        <li><a href='<c:url value="/hello?choice=Hola"/>'>&iexcl;Hola!</a></li>
                        <li><a href='<c:url value="/hello?choice=Konnichiwa"/>'>Konnichiwa</a></li>
                        <li><a href='<c:url value="/hello?choice=Mabuhay"/>'>Mabuhay!</a></li>
                    </ul>
                </li>
            </ul>
        </li>

        <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-hover="dropdown">Goodbye <b class="caret"></b></a>
            <ul class="dropdown-menu">
                <li><a href='<c:url value="/goodbye/Cruel%20World"/>'>Cruel world</a></li>
            </ul>
        </li>
        <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-hover="dropdown">FCM <b class="caret"></b></a>
            <ul class="dropdown-menu">
                <li><a href='<c:url value="/fcm/?choice=Screen1"/>'>Screen1</a></li>
                <li><a href='<c:url value="/fcm/?choice=Screen2"/>'>Screen2</a></li>
            </ul>
        </li>

    </ul>

最佳答案

您正在寻找 opacity ( opacity - CSS ) 属性。它允许您设置元素的不透明度而不会丢失其尺寸。接下来,您只需在:hovertransition 从一种状态到另一种状态。在底部查看一些引用资料。

完整代码如下:

.navbar .container-fluid {
  opacity: 0; /*it doesn't show by default*/
  transition: all .2s; /*pick whatever suits best*/
}

.navbar:hover .container-fluid {
  opacity: 1; /*fully visible on :hover*/
  transition: all .2s;
}
<nav class="navbar navbar-inverse" role="navigation">
  <div class="container-fluid">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
      <a class="navbar-brand" href='#'>My Spring App</a>
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#main-navbar-collapse">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
        </button>
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#side-navbar-collapse">
            <span class="sr-only">Top Links</span>
            <span class="glyphicon glyphicon-globe"></span>
        </button>
    </div>

    <ul class="nav navbar-nav navbar-left collapse navbar-collapse" id="main-navbar-collapse">
      <li class="menu-item"><a href='<c:url value="/"/>'>Home</a></li>
      <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-hover="dropdown">Hello <b class="caret"></b></a>
        <ul class="dropdown-menu">
          <li><a href='<c:url value="/hello?choice=World"/>'>World</a></li>
          <li><a href='<c:url value="/hello?choice=Kitty"/>'>Kitty</a></li>
          <li class="dropdown-submenu">
            <a href="#">Languages</a>
            <ul class="dropdown-menu">
              <!-- Third level list items on submenu -->
              <li><a href='#'>Bonjour</li>
                        <!-- Example of conditionally enabling an item based on user role -->
                        <sec:authorize access="hasRole('ROLE_USER')">
                            <li><a href='<c:url value="/hello?choice=Guten%20Tag"/>'>Guten Tag</a></li>
              </sec:authorize>
              <sec:authorize access="!hasRole('ROLE_USER')">
                <li class="disabled"><a href="#">Guten Tag</a></li>
              </sec:authorize>
              <li class="divider"></li>
              <li><a href='<c:url value="/hello?choice=Hola"/>'>&iexcl;Hola!</a></li>
              <li><a href='<c:url value="/hello?choice=Konnichiwa"/>'>Konnichiwa</a></li>
              <li><a href='<c:url value="/hello?choice=Mabuhay"/>'>Mabuhay!</a></li>
            </ul>
          </li>
        </ul>
      </li>

      <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-hover="dropdown">Goodbye <b class="caret"></b></a>
        <ul class="dropdown-menu">
          <li><a href='<c:url value="/goodbye/Cruel%20World"/>'>Cruel world</a></li>
        </ul>
      </li>
      <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-hover="dropdown">FCM <b class="caret"></b></a>
        <ul class="dropdown-menu">
          <li><a href='<c:url value="/fcm/?choice=Screen1"/>'>Screen1</a></li>
          <li><a href='<c:url value="/fcm/?choice=Screen2"/>'>Screen2</a></li>
        </ul>
      </li>

    </ul>
这里有一个 JS Bin 可以很容易地弄乱代码:JS Bin

关于转换和使用的 CSS 的一些引用:

我做对了吗?

关于javascript - 鼠标悬停时如何淡出导航栏并淡入导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47282532/

相关文章:

javascript - Angular ng-option自定义过滤器多个下拉菜单

html - Chrome 不呈现 <form> 标签,FF 会

javascript - 列表样式在 IE 中未设置为无,但适用于 IE

javascript - 迁移到 meteor / react

javascript - 如何使用 JavaScript 添加 jQuery 到 Head?

javascript - 使用 JavaScript 从表中删除行时遇到问题

javascript - 将静态标题保持在所有其他元素之上

jquery - 如果 "No Results Match"带有 .select,如何保存自定义选项?

css - 如何创建覆盖整个可见垂直空间(或过渡到实体?)的线性渐变

javascript - 在 JSF 复合组件中集成 JavaScript,干净的方式