Bootstrap 下拉菜单不起作用(对其他类似问题的回答不起作用!)

Posted

技术标签:

【中文标题】Bootstrap 下拉菜单不起作用(对其他类似问题的回答不起作用!)【英文标题】:Bootstrap Dropdown Not Working (Answers to other similar questions not working!) 【发布时间】:2017-06-07 11:41:27 【问题描述】:

我知道以前有人问过这个问题,但是,似乎没有一个答案有效。

我在引导程序中设计了一个带有下拉菜单的导航菜单,几乎从示例中复制。但是,当我单击下拉列表时,什么也没有发生。我已经包含了一个指向 JQuery 的链接,包含了通过 CDN 的引导 CSS / JS 链接,但没有任何效果。我还确保将 JQuery 放在引导程序之前。

我也尝试删除 !-- OPTIONAL THEME 引导链接(正如有些人所说,多个引导链接会导致问题..)......但没有。

这可能是因为我在本地服务器上运行它吗?我对此表示怀疑...

让我知道你的想法!谢谢!

这是我的代码:

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script
    src="https://code.jquery.com/jquery-3.1.1.js"
    integrity="sha256-16cdPddA6VdVInumRGo6IbivbERE8p7CQR3HzTBuELA="
    crossorigin="anonymous"></script>
<link rel="normalize.css"> 
<link href="https://fonts.googleapis.com/css?family=Courgette" rel="stylesheet"> 
<link rel="stylesheet" href="https://www.w3schools.com/lib/w3.css">
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">

<!-- Latest compiled and minified javascript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<link rel="stylesheet" type="text/css" href="/style.css">

<?php wp_head(); ?>
</head>
<header>
<div class="container">
<div class="row>">
<div class="col-xl-12">
  <img class="logo" src="<?php bloginfo('template_directory');?>/HSF.png">
  <h1 class="title">TITLE</h1>
</div>
</div>
<div class="container">
<div class="row">
<nav class="navbar navbar-default" role="navigation">
<div class="container-fluid">
  <div class="navbar-header">
    <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="fwcnav" aria-expanded="false">
      <span class="sr-only">Toggle Navigation</span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
    </button>
    <a class="navbar-brand" href="#">Emerge</a>
  </div>
<div class="collapse navbar-collapse" id="fwcnav">
  <ul class="nav navbar-nav">
    <li class="active"><a href="#">Home <span class="sr-only">(current) </span></a></li>
    <li><a href="#">Recipes</a></li>
    <li><a href="#">Little Ones</a></li>
    <li class="dropdown">
      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Workout With Me <span class="caret"></span></a>
      <ul class="dropdown-menu">
        <li><a href="#">Workouts</a></li>
        <li><a href="#">Join A Challenge Group</a></li>
      </ul>
    </li>
  </ul>
</div>
</div>
</nav>
</header>

编辑

好的,所以我发现我的 index.php 中也有一个部分,其中包含指向我的样式表的链接。我摆脱了它,同时摆脱了 header.php 中的样式表链接,并且代码运行良好。我把我的链接放回我的标题中的 style.css,它又搞砸了。所以,我猜我的 CSS 中有什么东西让这段代码搞砸了?

这是我的 style.css:

/*
Theme Name: Title
Theme URI: Title
Description: X
Version: 1.0
Author: Author
Author URI: Website
*/

/* HEADER & NAVIGATION */

header 
    background-color: rgb(20,20,20);
      

h1.title 
    padding-top: 50px;
    padding-left: 75px;
    text-align: center;
    font-size: 5em;
    font-family: 'Courgette', cursive;
    color: #f63a84;


/* BODY */

body 
    background-color: rgb(20,20,20);
 

a 
    color: #f63a84;
    font-family: serif;
    text-decoration: none;
  

a.button 
-webkit-appearance: button;
-moz-appearance: button;
appearance: button;
    text-decoration: none;
height: 60px;
width: 400px;
font-size: 2em;
background-color: #f63a84; 
color: white;
border: 2px solid black;


a.button2 
-webkit-appearance: button;
-moz-appearance: button;
appearance: button;
    text-decoration: none;
height: 60px;
width: 400px;
font-size: 1.5em;
background-color: #f63a84; 
color: white;
border: 2px solid black;


h2 
    font-size: 28px;
    color: #f63a84;
    font-style: bold;


img.logo 
float: right;
width: 175px;
height: 175px;
padding-top: 0px;


/* NAVIGATION */

ul 
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-align: center;


li 
    display: inline-block;
    float: left;


a 
    display: block;
    padding: 8px;


/* CONTENT */

article 
    max-width: 950px;
    padding: 20px 0 100px 40px;
    margin-left: 40px;


article.home 
    padding: 20px 0 100px 0;
margin-left: 0px;


article.other 
    padding: 20px 0 100px 0;
margin-left: 0px;


article.blog-article 
    max-width: 950px;
    padding: 20px 0 50px 40px;
    margin-left: 40px;
margin-top: 0px;


p 
    font-size: 18px;
font-family: serif;
    line-height: 40px;
    color: rgb(248,248,248);
padding: 0 0 0 45px;
  

button 
height: 60px;
width: 400px;
font-size: 2em;
background-color: #f63a84;; 
color: white;
border: 2px solid black;


.button:hover 
background-color: white;
color: #f63a84;


/* FOOTER */

footer 
    position: fixed;
    height: 100px;
    bottom: 0;
    width: 100%;


/* MEDIA RESPONSIVENESS */

@media (max-width: @screen-xl) 
h1.title font-size: 1em;

【问题讨论】:

浏览器控制台有什么线索吗? 不确定您的意思?检查元素?查看源代码? 锻炼加入频道组下拉菜单?它在我的地方工作 snag.gy/GL7jxJ.jpg ,我使用你的代码,它可以工作 【参考方案1】:

试试这个就行了

header 
    background-color: rgb(20,20,20);
      

h1.title 
    padding-top: 50px;
    padding-left: 75px;
    text-align: center;
    font-size: 5em;
    font-family: 'Courgette', cursive;
    color: #f63a84;


/* BODY */

body 
    background-color: rgb(20,20,20);
 

a 
    color: #f63a84;
    font-family: serif;
    text-decoration: none;
  

a.button 
-webkit-appearance: button;
-moz-appearance: button;
appearance: button;
    text-decoration: none;
height: 60px;
width: 400px;
font-size: 2em;
background-color: #f63a84; 
color: white;
border: 2px solid black;


a.button2 
-webkit-appearance: button;
-moz-appearance: button;
appearance: button;
    text-decoration: none;
height: 60px;
width: 400px;
font-size: 1.5em;
background-color: #f63a84; 
color: white;
border: 2px solid black;


h2 
    font-size: 28px;
    color: #f63a84;
    font-style: bold;


img.logo 
float: right;
width: 175px;
height: 175px;
padding-top: 0px;


/* NAVIGATION */

ul 
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-align: center;


li 
    display: inline-block;
    float: left;


a 
    display: block;
    padding: 8px;


/* CONTENT */

article 
    max-width: 950px;
    padding: 20px 0 100px 40px;
    margin-left: 40px;


article.home 
    padding: 20px 0 100px 0;
margin-left: 0px;


article.other 
    padding: 20px 0 100px 0;
margin-left: 0px;


article.blog-article 
    max-width: 950px;
    padding: 20px 0 50px 40px;
    margin-left: 40px;
margin-top: 0px;


p 
    font-size: 18px;
font-family: serif;
    line-height: 40px;
    color: rgb(248,248,248);
padding: 0 0 0 45px;
  

button 
height: 60px;
width: 400px;
font-size: 2em;
background-color: #f63a84;; 
color: white;
border: 2px solid black;


.button:hover 
background-color: white;
color: #f63a84;


/* FOOTER */

footer 
    position: fixed;
    height: 100px;
    bottom: 0;
    width: 100%;


/* MEDIA RESPONSIVENESS */

@media (max-width: @screen-xl) 
h1.title font-size: 1em;
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap Case</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet"             href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js">       </script>
 <link href="https://fonts.googleapis.com/css?family=Catamaran:100|Luckiest+Guy|Quicksand:300|Asap:700|Montserrat:700|Open+Sans|Roboto|Signika:700" rel="stylesheet"/>

</head>
<body>
<header>
<div class="container">
<div class="row>">
<div class="col-xl-12">
  <img class="logo" src="<?php bloginfo('template_directory');?>/HSF.png">
  <h1 class="title">TITLE</h1>
</div>
</div>
<div class="container">
<div class="row">
<nav class="navbar navbar-default" role="navigation">
<div class="container-fluid">
  <div class="navbar-header">
    <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#fwcnav" aria-expanded="true">
      <span class="sr-only">Toggle Navigation</span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
    </button>
    <a class="navbar-brand" href="#">Emerge</a>
  </div>
<div class="collapse navbar-collapse" id="fwcnav">
  <ul class="nav navbar-nav">
    <li class="active"><a href="#">Home <span class="sr-only">(current) </span></a></li>
    <li><a href="#">Recipes</a></li>
    <li><a href="#">Little Ones</a></li>
    <li class="dropdown">
      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Workout With Me <span class="caret"></span></a>
      <ul class="dropdown-menu">
        <li><a href="#">Workouts</a></li>
        <li><a href="#">Join A Challenge Group</a></li>
      </ul>
    </li>
  </ul>
</div>
</div>
</nav>
</header>
</body>
</html>

以下是您需要进行的更改---

    使用data-target="#fwcnav" aria-expanded="true"而不是data-target="fwcnav" aria-expanded="false"

    尝试使用我的CDN s

我已经包含了工作示例。

编辑

我编辑了代码 sn-p 并使用了您的 CSS。它似乎工作正常(下拉菜单)。 检查工作的 sn-p。

所以,在我看来,您的包含路径一定有问题。检查您是否添加了两次 CSS 文件。那就是您将样式表包含在index.phpheader.php 中。尝试删除其中一个,有时会导致问题。

【讨论】:

好的,我同意!我自己在 W3 中运行了代码,试了一下,效果很好。我在本地主机上删除了指向我自己的样式表的链接,但这并没有帮助。还是行不通。 SOOO,我认为这一定是我的 index.php 或页脚 php 上的某些内容导致下拉菜单在页眉中不起作用?有什么想法吗? 请检查我对主要问题的编辑!一定是我的样式表...

以上是关于Bootstrap 下拉菜单不起作用(对其他类似问题的回答不起作用!)的主要内容,如果未能解决你的问题,请参考以下文章

iPad上的Bootstrap 3下拉菜单不起作用

Twitter Bootstrap 按钮下拉菜单在 IE9 中不起作用

Bootstrap v2 下拉导航在移动浏览器上不起作用

为啥侧边栏下拉菜单不起作用 bootstrap 3

Bootstrap 4下拉菜单不起作用?

Bootstrap 3下拉菜单中心对齐不起作用