【问题标题】:How to turn an HTML navbar <li> into a stand-alone button如何将 HTML 导航栏 <li> 变成独立按钮
【发布时间】:2015-09-25 14:21:54
【问题描述】:

我正在使用 Bootstrap 创建网站,并添加了下拉功能以注册新闻通讯。

如何使该下拉菜单成为独立于导航栏的独立下拉菜单?

我在整个 html 代码周围添加了 &lt;button&gt; 标记,但注册按钮随后与下拉列表分离。理想情况下,它会位于下拉列表的底部。

<button class="dropdown btn">
   <a href="http://www.jquery2dotnet.com" class="dropdown-toggle" data-toggle="dropdown">Newsletter Sign Up <b class="caret"></b></a>
   <ul class="dropdown-menu" style="padding: 15px;min-width: 250px;">
      <li>
         <div class="row">
            <div class="col-md-12">
               <form class="form" role="form" method="post" action="login" accept-charset="UTF-8" id="login-nav">
                  <div class="form-group">
                     <label class="sr-only" for="newsletter-signup-name">Name</label>
                     <input type="email" class="form-control" id="newsletter-signup-name" placeholder="Name" required>
                  </div>
                  <div class="form-group">
                     <label class="sr-only" for="newsletter-signup-email">Email</label>
                     <input type="email" class="form-control" id="newsletter-signup-email" placeholder="Email address" required>
                  </div>
                  <div class="checkbox">
                     <label>
                     <input type="checkbox"> Remember me
                     </label>
                  </div>
                  <div class="form-group">
                     <button type="submit" class="btn btn-success btn-block">Sign Up</button>
                  </div>
               </form>
            </div>
         </div>
      </li>
      <li class="divider"></li>
   </ul>
</button>

【问题讨论】:

    标签: html css twitter-bootstrap htmlbutton


    【解决方案1】:

    只需使用div 而不是button。我认为buttons 不允许包含其他表单元素。

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" />
    
    <div class="dropdown">
       <a href="http://www.jquery2dotnet.com" class="dropdown-toggle" data-toggle="dropdown">Newsletter Sign Up <b class="caret"></b></a>
       <ul class="dropdown-menu" style="padding: 15px;min-width: 250px;">
          <li>
             <div class="row">
                <div class="col-md-12">
                   <form class="form" role="form" method="post" action="login" accept-charset="UTF-8" id="login-nav">
                      <div class="form-group">
                         <label class="sr-only" for="newsletter-signup-name">Name</label>
                         <input type="email" class="form-control" id="newsletter-signup-name" placeholder="Name" required>
                      </div>
                      <div class="form-group">
                         <label class="sr-only" for="newsletter-signup-email">Email</label>
                         <input type="email" class="form-control" id="newsletter-signup-email" placeholder="Email address" required>
                      </div>
                      <div class="checkbox">
                         <label>
                         <input type="checkbox"> Remember me
                         </label>
                      </div>
                      <div class="form-group">
                         <button type="submit" class="btn btn-success btn-block">Sign Up</button>
                      </div>
                   </form>
                </div>
             </div>
          </li>
          <li class="divider"></li>
       </ul>
    </div>

    【讨论】:

      【解决方案2】:

      不确定为什么要将整个表单封装到按钮中。如果需要按钮,请使用按钮而不是锚点。

      <div class="dropdown">
          <button class="btn dropdown-toggle" data-toggle="dropdown">Newsletter Sign Up <b class="caret"></b>
          </button>
          <ul class="dropdown-menu" style="padding: 15px;min-width: 250px;">
              <li>
                  <div class="row">
                      <div class="col-md-12">
                          <form class="form" role="form" method="post" action="login" accept-charset="UTF-8" id="login-nav">
                              <div class="form-group">
                                  <label class="sr-only" for="newsletter-signup-name">Name</label>
                                  <input type="email" class="form-control" id="newsletter-signup-name" placeholder="Name" required>
                              </div>
                              <div class="form-group">
                                  <label class="sr-only" for="newsletter-signup-email">Email</label>
                                  <input type="email" class="form-control" id="newsletter-signup-email" placeholder="Email address" required>
                              </div>
                              <div class="checkbox">
                                  <label>
                                      <input type="checkbox">Remember me</label>
                              </div>
                              <div class="form-group">
                                  <button type="submit" class="btn btn-success btn-block">Sign Up</button>
                              </div>
                          </form>
                      </div>
                  </div>
              </li>
              <li class="divider"></li>
          </ul>
      </div>
      

      http://jsfiddle.net/moogs/sktewe4s/

      【讨论】:

      • 我需要的是代替锚的按钮。谢谢!
      猜你喜欢
      • 2019-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-09
      • 1970-01-01
      相关资源
      最近更新 更多