如何使下拉按钮工作html css

时间:2018-02-10 23:10:53

标签: javascript jquery html css bootstrap-4

所以即时创建一个网站,当窗口的宽度小于768px时,我就拥有它,然后导航栏就会崩溃。导航栏折叠但未显示导航栏上的各个项目。导航栏折叠是一个垂直导航栏。我正在使用Bootstrap。总而言之,我有一个垂直的菜单/导航栏,但我无法让下拉菜单打开。

这是我的HTML: - >

<header id="home">
    <!-- Background Image -->
    <div class="bg-img" style="background-image: url('./img/background1.png');">
        <div class="overlay"></div>
    </div>
    <!-- /Background Image -->

    <!-- Nav -->
    <nav id="nav" class="navbar nav-transparent">
        <div class="container">

            <div class="navbar-header">
                <!-- Logo -->
                <div class="navbar-brand">
                    <a href="index.html">
                        <img class="logo" src="img/Logo.png" alt="logo">
                        <img class="logo-alt" src="img/Logo.png" alt="logo">
                    </a>
                </div>
                <!-- /Logo -->

                <!-- Collapse nav button -->
                <div class="nav-collapse">
                    <span></span>
                </div>
                <!-- /Collapse nav button -->
            </div>

            <!--  Main navigation  -->
            <ul class="main-nav nav navbar-nav navbar-right">

            <li><a href="#home">Home</a></li>

           <li class="has-dropdown"><a href="#AboutUs">About US</a>
                    <ul class="dropdown">
                        <li><a href="#">About Us</a></li>
                        <li><a href="#">Our Team</a></li>
                    </ul>
                </li>

            <li class="has-dropdown"><a href="#NonProfits">NonProfits</a>
                    <ul class="dropdown">
                        <li><a href="#">Requirements</a></li>
                        <li><a href="#">Services</a></li>
                        <li><a href="#">Join Our Program</a></li>
                    </ul>
                </li>
                <li class="has-dropdown"><a href="#Volunteers">Volunteers</a>
                    <ul class="dropdown">
                        <li><a href="#">Overview</a></li>
                        <li><a href="#">Sign Up</a></li>
                    </ul>
                </li>



            </ul>
            <!-- /Main navigation -->

        </div>
    </nav>
    <!-- /Nav -->

    <!-- home wrapper -->
    <div class="home-wrapper">
        <div class="container">
            <div class="row">

                <!-- home content -->
                <div class="col-md-10 col-md-offset-1">
                    <div class="home-content">

                        <h1 id="changing-word" class="white-text">We Are Creative Agency</h1>
                        <p class="white-text">Morbi mattis felis at nunc. Duis viverra diam non justo. In nisl. Nullam sit amet magna in magna gravida vehicula. Mauris tincidunt sem sed arcu. Nunc posuere.
                        </p>
                        <button class="white-btn">Get Started!</button>

                    </div>
                </div>
                <!-- /home content -->

            </div>
        </div>
    </div>
    <!-- /home wrapper -->

</header>

这是我的css:

body {
    font-family: 'Varela Round', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    overflow-x: hidden;
    color: #868F9B;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    margin-top: 0px;
    margin-bottom: 20px;
    color: #10161A;
}

h1 {
    font-size: 54px;
}

h2 {
    font-size: 36px;
}

h3 {
    font-size: 21px;
}

h4 {
    font-size: 18px;
}

h5 {
    font-size: 16px;
}

a {
    color: #6195FF;
    text-decoration: none;
    -webkit-transition: 0.2s opacity;
    transition: 0.2s opacity;
}

a:hover, a:focus {
    text-decoration: none;
    outline: none;
    opacity: 0.8;
    color: #6195FF;
}

.main-color {
    color: #6195FF;
}

.white-text {
    color: #FFF;
}

::-moz-selection {
    background-color: #6195FF;
    color: #FFF;
}

::selection {
    background-color: #6195FF;
    color: #FFF;
}

ul, ol {
    margin: 0;
    padding: 0;
    list-style: none
}

/* -- section  -- */

.section {
    position: relative;
}




/* --  background section  -- */

.bg-grey {
    background-color: #FAFAFA;
    border-top: 1px solid #EEE;
    border-bottom: 1px solid #EEE;
}

.bg-dark {
    background-color: #1C1D21;
}


/* --  background image section  -- */

.bg-img {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

.bg-img .overlay {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    opacity: .8;
    background: #1C1D21;
}


/* --  section header  -- */

.section-header {
    position: relative;
    margin-bottom: 60px;
}

.section-header .title {
    text-transform: capitalize;
}

.title:after {
    content:"";
    display:block;
    height:4px;
    width:40px;
    background-color: #6195FF;
    margin-top: 20px;
}



/* --  Input  -- */

.main-btn, .white-btn, .outline-btn {
    display: inline-block;
    padding: 10px 35px;
    margin: 3px;
    border: 2px solid transparent;
    border-radius: 3px;
    -webkit-transition: 0.2s opacity;
    transition: 0.2s opacity;
}

.main-btn {
    background: #6195FF;
    color: #FFF;
}

.white-btn {
    background: #FFF;
    color: #10161A !important;
}

.outline-btn {
    background: transparent;
    color: #6195FF !important;
    border-color: #6195FF;
}

.main-btn:hover, .white-btn:hover, .outline-btn:hover {
    opacity: 0.8;
}
.navbar-brand {
    padding: 0;
}

.navbar-brand .logo, .navbar-brand .logo-alt {
    max-height: 50px;
    display: block;
}

#nav:not(.nav-transparent):not(.fixed-nav) .navbar-brand .logo-alt {
    display: none;
}

#nav.nav-transparent:not(.fixed-nav) .navbar-brand .logo {
    display: none;
}

#nav.fixed-nav .navbar-brand .logo-alt {
    display: none;
}

@media only screen and (max-width: 767px) {
    #nav.nav-transparent .navbar-brand .logo-alt {
        display: none !important;
    }
    #nav.nav-transparent .navbar-brand .logo {
        display: block !important;
    }
}


/*------------------------------------*\
    Navigation
\*------------------------------------*/

#nav {
    padding: 10px 0px;
    background: #FFF;
    -webkit-transition: 0.2s padding;
    transition: 0.2s padding;
    z-index: 999;
}

#nav.navbar {
    border: none;
    border-radius: 0;
    margin-bottom: 0px;
}

#nav.fixed-nav {
    position: fixed;
    left: 0;
    right: 0;
    padding: 0px 0px;
    background-color: #FFF !important;
    border-bottom: 1px solid #EEE;
}

#nav.nav-transparent {
    background: transparent;
}


/* -- default nav -- */

@media only screen and (min-width: 768px) {
    .main-nav li {
        padding: 0px 15px;
    }
    .main-nav li a {
        font-size: 19px;
        -webkit-transition: 0.2s color;
        transition: 0.2s color;
    }
    .main-nav>li>a {
        color: #10161A;
        padding: 15px 0px;
    }
    #nav.nav-transparent:not(.fixed-nav) .main-nav>li>a {
        color: #fff;
    }
    .main-nav>li>a:hover, .main-nav>li>a:focus, .main-nav>li.active>a {
        background: transparent;
        color: red;
    }
    .main-nav>li>a:after {
        content: "";
        display: block;
        background-color: red;
        height: 2px;
        width: 0%;
        -webkit-transition: 0.2s width;
        transition: 0.2s width;
    }
    .main-nav>li>a:hover:after, .main-nav>li.active>a:after {
        width: 100%;
    }
    /* dropdown */
    .has-dropdown {
        position: relative;
    }
    .has-dropdown>a:before {
        font-family: 'FontAwesome';
        content: "\f054";
        font-size: 6px;
        margin-left: 6px;
        float: right;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        -webkit-transition: 0.2s transform;
        transition: 0.2s transform;
    }
    .dropdown {
        position: absolute;
        right: -50%;
        top: 0;
        background-color: red;
        width: 200px;
        -webkit-box-shadow: 0px 5px 5px -5px rgba(53, 64, 82, 0.2);
        box-shadow: 0px 5px 5px -5px rgba(53, 64, 82, 0.2);
        -webkit-transform: translateY(15px) translateX(50%);
        -ms-transform: translateY(15px) translateX(50%);
        transform: translateY(15px) translateX(50%);
        opacity: 0;
        visibility: hidden;
        -webkit-transition: 0.2s all;
        transition: 0.2s all;
    }
    .main-nav>.has-dropdown>.dropdown {
        top: 100%;
        right: 50%;
    }
    .main-nav>.has-dropdown>.dropdown .dropdown.dropdown-left {
        right: 150%;
    }
    .dropdown li a {
        display: block;
        color: #FFF;
        border-top: 1px solid rgba(250, 250, 250, 0.1);
        padding: 10px 0px;
    }
    .dropdown li:nth-child(1) a {
        border-top: none;
    }
    .has-dropdown:hover>.dropdown {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0px) translateX(50%);
        -ms-transform: translateY(0px) translateX(50%);
        transform: translateY(0px) translateX(50%);
    }
    .has-dropdown:hover>a:before {
        -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    .nav-collapse {
        display: none;
    }
}


/* -- mobile nav -- */

@media only screen and (max-width: 767px) {
    #nav {
        padding: 0px 0px;
    }
    #nav.nav-transparent {
        background: #FFF;
    }
    .main-nav {
        position: fixed;
        right: 0;
        height: calc(100vh - 80px);
        -webkit-box-shadow: 0px 80px 0px 0px #1C1D21;
        box-shadow: 0px 80px 0px 0px #1C1D21;
        max-width: 250px;
        width: 0%;
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%);
        margin: 0;
        overflow-y: auto;
        background: #1C1D21;
        -webkit-transition: 0.2s all;
        transition: 0.2s all;
    }
    #nav.open .main-nav {
        -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
        transform: translateX(0%);
        width: 100%;
    }
    .main-nav li {
        border-top: 1px solid rgba(250, 250, 250, 0.1);
    }
    .main-nav li a {
        display: block;
        color: #FFF;
        -webkit-transition: 0.2s all;
        transition: 0.2s all;
    }
    .main-nav>li.active {
        border-left: 6px solid red;
    }
    .main-nav li a:hover, .main-nav li a:focus {
        background-color: red;
        color: #FFF;
        opacity: 1;
    }
    .has-dropdown>a:after {
        content: "\f054";
        font-family: 'FontAwesome';
        float: right;
        -webkit-transition: 0.2s -webkit-transform;
        transition: 0.2s -webkit-transform;
        transition: 0.2s transform;
        transition: 0.2s transform, 0.2s -webkit-transform;
    }
    .dropdown {
        opacity: 0;
        visibility: hidden;
        height: 0;
        background: rgba(250, 250, 250, 0.1);
    }
    .dropdown li a {
        padding: 6px 10px;
    }
    .has-dropdown.open-drop>a:after {
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
    }
    .has-dropdown.open-drop>.dropdown {
        opacity: 1;
        visibility: visible;
        height: auto;
        -webkit-transition: 0.2s all;
        transition: 0.2s all;
    }
}


/* -- nav btn collapse -- */

.nav-collapse {
    position: relative;
    float: right;
    width: 40px;
    height: 40px;
    margin-top: 5px;
    margin-right: 5px;
    cursor: pointer;
    z-index: 99999;
}

.nav-collapse span {
    display: block;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    width: 25px;
}

.nav-collapse span:before, .nav-collapse span:after {
    content: "";
    display: block;
}

.nav-collapse span, .nav-collapse span:before, .nav-collapse span:after {
    height: 4px;
    background: #10161A;
    -webkit-transition: 0.2s all;
    transition: 0.2s all;
}

.nav-collapse span:before {
    -webkit-transform: translate(0%, 10px);
    -ms-transform: translate(0%, 10px);
    transform: translate(0%, 10px);
}

.nav-collapse span:after {
    -webkit-transform: translate(0%, -14px);
    -ms-transform: translate(0%, -14px);
    transform: translate(0%, -14px);
}

#nav.open .nav-collapse span {
    background: transparent;
}

#nav.open .nav-collapse span:before {
    -webkit-transform: translateY(0px) rotate(-135deg);
    -ms-transform: translateY(0px) rotate(-135deg);
    transform: translateY(0px) rotate(-135deg);
}

#nav.open .nav-collapse span:after {
    -webkit-transform: translateY(-4px) rotate(135deg);
    -ms-transform: translateY(-4px) rotate(135deg);
    transform: translateY(-4px) rotate(135deg);
}


/*------------------------------------*\
    Header
\*------------------------------------*/

header {
    position: relative;
}

#home {
    height: 100vh;
}

#home .home-wrapper {
    position: absolute;
    left: 0px;
    right: 0px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    text-align: center;
}

.home-content h1 {
  text-transform: uppercase;
}
.home-content button {
  margin-top: 20px;
}

.header-wrapper h2 {
    display: inline-block;
    margin-bottom: 0px;
}

.header-wrapper .breadcrumb {
    float: right;
    background: transparent;
    margin-bottom: 0px;
}

.header-wrapper .breadcrumb .breadcrumb-item.active {
    color: #868F9B;
}

.breadcrumb>li+li:before {
    color: #868F9B;
}

1 个答案:

答案 0 :(得分:0)

此主题标有&#34; Bootstrap 4&#34;,但您没有使用此框架版本的正确语法。

现在,这是一个带下拉列表的Bootstrap 4导航栏:

&#13;
&#13;
<!doctype html>
<html lang="en">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

    <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">

    <title>Hello, world!</title>
  </head>
  <body>
    <nav class="navbar navbar-expand-lg navbar-light bg-light">
  <a class="navbar-brand" href="#">Navbar</a>
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>

  <div class="collapse navbar-collapse" id="navbarSupportedContent">
    <ul class="navbar-nav mr-auto">
      <li class="nav-item active">
        <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">Link</a>
      </li>
      <li class="nav-item dropdown">
        <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
          Dropdown
        </a>
        <div class="dropdown-menu" aria-labelledby="navbarDropdown">
          <a class="dropdown-item" href="#">Action</a>
          <a class="dropdown-item" href="#">Another action</a>
          <div class="dropdown-divider"></div>
          <a class="dropdown-item" href="#">Something else here</a>
        </div>
      </li>
      <li class="nav-item">
        <a class="nav-link disabled" href="#">Disabled</a>
      </li>
    </ul>
    <form class="form-inline my-2 my-lg-0">
      <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search">
      <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
    </form>
  </div>
</nav>

    <!-- Optional JavaScript -->
    <!-- jQuery first, then Popper.js, then Bootstrap JS -->
    <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
  </body>
</html>
&#13;
&#13;
&#13;

您可以点击here了解有关它的更多信息。