2017-03-06 7 views
0

ここでは初心者のブートストラップ3を使用しています。私には困惑している問題があります。あなたの時間のために事前にありがとうございます。ブートストラップ3が折りたたまれていても、拡張時には表示されませんが、ホバー上に表示されます

タイトルが示すように、navbarはモバイル/小さい画面サイズで完全に折りたたまれ、ボタンは意図したとおりに見え、私はそれを拡張することができます。しかし、すぐにクリックすると、ドロップダウンメニューが突然表示されて消えます。彼らが飛び込んだ領域の上にマウスを置くと、navmenuリンク(とそれらのドロップダウン)が表示され、クリック可能になります。この問題は複数のブラウザで発生します。

似たようなトピックでSOに示唆されている多くのnavbar崩壊解決策を試しましたが、役に立たない(例:jQuery/bootstrap .jsファイルの更新、データターゲット属性の二重チェック、リンクされたJavaスクリプト、など)。

ここで私はどこに行ったのか分かりません。私は勉強している間、どんなフィードバックも感謝します。前もって感謝します!

/*NavBar Gray on Blue*/ 
 

 
.navbar { 
 
    margin-bottom: 0; 
 
} 
 

 
.navbar-inverse { 
 
    background: #004a99; 
 
    border: 0; 
 
} 
 

 
.dropdown-menu { 
 
    background: #004a99; 
 
    border-radius: 0; 
 
    border: 0; 
 
} 
 

 
.navbar-inverse .navbar-brand { 
 
    color: #f2f2f2; 
 
} 
 

 
.navbar-inverse .navbar-brand:hover { 
 
    color: #004a99; 
 
} 
 

 
.navbar-inverse .navbar-nav li a { 
 
    color: #f2f2f2; 
 
    font-size: 16px; 
 
} 
 

 
.navbar-inverse .navbar-nav li a:hover { 
 
    background: #004a99; 
 
} 
 

 
.navbar-inverse .navbar-nav .dropdown-menu li a:hover { 
 
    background: #f2f2f2; 
 
    color: #004a99; 
 
} 
 

 
.navbar .nav>li.dropdown.open.active>a:hover, 
 
.navbar .nav>li.dropdown.open>a { 
 
    color: #004a99; 
 
    background-color: #f2f2f2; 
 
    border-color: #fff; 
 
} 
 

 
.dropdown-menu li a { 
 
    padding: 10px; 
 
} 
 

 
.navbar-brand { 
 
    padding: 0px; 
 
} 
 

 
.navbar-brand>img { 
 
    height: 100%; 
 
    padding: 0px; 
 
    width: auto; 
 
} 
 

 
.navbar-nav.navbar-center { 
 
    position: absolute; 
 
    left: 50%; 
 
    transform: translatex(-50%); 
 
}
<head> 
 
    <meta charset="utf-8"> 
 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 
    <title>title</title> 
 
    <!--Java and Links--> 
 
    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
 
    <!-- 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 href="https://fonts.googleapis.com/css?family=Merriweather|Raleway:400,500,600,800" rel="stylesheet" type="text/css"> 
 
    <link rel="shortcut icon" href="/img/favicon.ico" /> 
 

 

 
    <body> 
 
    <!--NavBar--> 
 
    <nav class="navbar navbar-inverse navbar-static-top sans-serif"> 
 
     <div class="container-fluid"> 
 
     <div class="navbar-header"> 
 
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" 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> 
 
      <!--NavBar Logo<a class="navbar-brand" href="#"><img src="/img/navlogo.png" alt="Logo"></a>//--> 
 
     </div> 
 
     <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 
 
      <ul class="nav navbar-nav navbar-center"> 
 
      <li class="dropdown"> 
 
       <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">text.<span class="caret"></span></a> 
 
       <ul class="dropdown-menu"> 
 
       <li><a href="#">text</a></li> 
 
       <!--<li><a href="#">text</a></li>//--> 
 
       </ul> 
 
      </li> 
 
      <li class="dropdown"> 
 
       <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">text<span class="caret"></span></a> 
 
       <ul class="dropdown-menu"> 
 
       <li><a href="#">text</a></li> 
 
       <li><a href="#">text</a></li> 
 
       </ul> 
 
      </li> 
 
      <li><a href="#">text</a></li> 
 
      </ul> 
 
     </div> 
 
     </div> 
 
    </nav> 
 
    </body>

答えて

0

問題は.navbar-センター変換です。あなただけの大きな幅でセンタリングを適用することによって、それを修正することができます:

@media (min-width: 768px) { 
.navbar-nav.navbar-center{ 
    position: absolute; 
    left: 50%; 
    transform: translatex(-50%); 
    } 
} 

Codeply Demo

+0

男、このコミュニティは合法です!ありがとう、トム、これはかなりうまくいった! Mawcelの答えはそれを改善しましたが、完全な修正ではありませんでした。 – amsid

+0

質問:最小幅で768pxが最小のデバイス幅ですか? – amsid

+0

はい、まさに、ブートストラップナビバーが垂直に積み重なる時です。 –

0

は、物事がうまく試みは、単純に戻って、そこから仕事に行くとき!ここで

は、あなたの作業青色のナビゲーションバーです:

.container-fluid .navbar-header, #bs-example-navbar-collapse-1, .navbar-in 
 
verse button.navbar-toggle, .navbar-inverse button.navbar-toggle:focus, .navbar-inverse button.navbar-toggle:hover{ 
 
    background-color: #004a99; 
 
} 
 
<head> 
 
    <meta charset="utf-8"> 
 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 
    <title>title</title> 
 
    <!--Java and Links--> 
 
    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
 
    <!-- 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 href="https://fonts.googleapis.com/css?family=Merriweather|Raleway:400,500,600,800" rel="stylesheet" type="text/css"> 
 
    <link rel="shortcut icon" href="/img/favicon.ico" /> 
 

 

 
    <body> 
 
    <!--NavBar--> 
 
    <nav class="navbar navbar-inverse navbar-static-top sans-serif"> 
 
     <div class="container-fluid"> 
 
     <div class="navbar-header"> 
 
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" 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> 
 
      <!--NavBar Logo<a class="navbar-brand" href="#"><img src="/img/navlogo.png" alt="Logo"></a>//--> 
 
     </div> 
 
     <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 
 
      <ul class="nav navbar-nav navbar-center"> 
 
      <li class="dropdown"> 
 
       <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">text.<span class="caret"></span></a> 
 
       <ul class="dropdown-menu"> 
 
       <li><a href="#">text</a></li> 
 
       <!--<li><a href="#">text</a></li>//--> 
 
       </ul> 
 
      </li> 
 
      <li class="dropdown"> 
 
       <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">text<span class="caret"></span></a> 
 
       <ul class="dropdown-menu"> 
 
       <li><a href="#">text</a></li> 
 
       <li><a href="#">text</a></li> 
 
       </ul> 
 
      </li> 
 
      <li><a href="#">text</a></li> 
 
      </ul> 
 
     </div> 
 
     </div> 
 
    </nav> 
 
    </body>

私はnavbar-togllebuttonを指定する必要がありますなぜあなたは不思議に思っている場合は、ブートストラップが提供するものよりも、私のセレクタは、より具体的にすることです。常にboostrapは非常に正確なセレクタを持つことができるので、要素を調べて、boostrapによって既に適用されているスタイルを見つけ、同じセレクタをとり、ここで指定したように指定する方法を見つけてください。

+0

ああ、ちっちゃく、ありがとう!ええ、私は、セレクタがブートストラップを時々使用するかどうかを知りません。ブラウザウィンドウの右クリックオプションのように "要素を調べる"という意味ですか? – amsid

関連する問題