html - 如何在导航栏中包含自定义开关

标签 html bootstrap-4

我试图在可能的导航栏中包含一个开关控件,但显示并不完美,因为我无法调整标签和开关的对齐方式。实现该目标的最佳方法是什么?

这是我的工作代码:

<!doctype html>
<html lang="en">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
    <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
  </head>
  <body>
    <header>
    <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark">
      <a class="navbar-brand" href="#">App</a>
      <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
      </button>
      <div class="collapse navbar-collapse" id="navbarCollapse">
        <ul class="navbar-nav mr-auto">
          <li class="nav-item active">
            <a class="nav-link" href="#">First</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="#">Link</a>
          </li>
        </ul>
        <form class="form-inline">
          <div class="nav-item custom-control custom-switch mr-sm-2" >
            <input type="checkbox" class="navbar-toggler form-control custom-control-input" id="transparency" checked>
            <label class="navbar-text custom-control-label small" for="transparency">Transparency</label>
          </div>
        </form>
      </div>
    </nav>
    </header>
  </body>

谢谢

最佳答案

您可以通过将 line-height 属性添加到您的自定义控件类来轻松实现这一点

.custom-control {
    position: relative;
    display: block;
    min-height: 1.5rem;

    line-height: 7px;  #just add this property


    padding-left: 1.5rem;
}

检查这个

.custom-control { 
line-height: 7px; 
}
   <html lang="en">
      <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
        <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
        <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
        <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
      </head>
      <body>
        <header>
        <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark">
          <a class="navbar-brand" href="#">App</a>
          <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
          </button>
          <div class="collapse navbar-collapse" id="navbarCollapse">
            <ul class="navbar-nav mr-auto">
              <li class="nav-item active">
                <a class="nav-link" href="#">First</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">Link</a>
              </li>
            </ul>
            <form class="form-inline">
              <div class="nav-item custom-control custom-switch mr-sm-2" >
                <input type="checkbox" class="navbar-toggler form-control custom-control-input" id="transparency" checked>
                <label class="navbar-text custom-control-label small" for="transparency">Transparency</label>
              </div>
            </form>
          </div>
        </nav>
        </header>
      </body>

关于html - 如何在导航栏中包含自定义开关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57251459/

相关文章:

css - Bootstrap 4 Beta 2 导航栏品牌对齐

css - 更改 Bootstrap Navbar Container 垂直对齐的位置

twitter-bootstrap - Bootstrap input-group-sm 和 input-group-append 不起作用

jquery - 如何显示图像的底部?

jquery - removeClass 不起作用 - 类未删除

html - 如何从文本区域元素中删除调整大小的 Angular ?

css - 如何更改 Bootstrap 4 中禁用的 <button> 或 <a> 的光标?

html - 在 table.th.tr 和 table.tbody.tr 中为两种类型的表选择 th

html - VueJS - 清理输出以防止跨站点脚本攻击

css - Accordion 组标题的样式(ngx-bootstrap)?