【问题标题】:input-group with input field, select (silviomoreto) and button not displaying correctly带有输入字段的输入组,选择(silviomoreto)和按钮未正确显示
【发布时间】:2016-10-31 16:14:06
【问题描述】:

我目前有一个输入组,由一个输入字段、一个选择菜单和一个按钮组成。

我知道您必须使用下拉菜单而不是在引导程序中选择,但我想避免在 javascript 中使用下拉菜单。

我使用的选择菜单来自:https://silviomoreto.github.io/bootstrap-select/examples/,所以它不是引导版本,但是我在这里使用引导选择来回答这个问题。

目前选择菜单位于输入字段下方,我不确定它为什么这样做,但我希望输入组位于一行。

我不想给选择一个特定的宽度,因为那行不通,我已经尝试过了,它只会产生问题,所以如果可以的话,我希望它采用默认宽度。

有什么想法吗?

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css">
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">

<!-- Latest compiled and minified JavaScript -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>


<div class="container">
  <form>

    <div class="form-group">
      <h3 id="track-record">Record</h3>
      <div class="col-md-8">
        <div class="input-group select-group">
          <input type="text" class="form-control input-text input-md select-input" id="assessor" placeholder="placeholder here">

          <select id="year-select" class="form-control input-group-addon">
            <option value="">Year</option>
            <option value="1">2014</option>
            <option value="2">2013</option>
            <option value="3">2012</option>
            <option value="4">2011</option>
          </select>


          <span class="input-group-btn">
         <button type="button" class="btn btn-primary btn-sm btn-outline grey-outline"><span class="glyphicon glyphicon-minus"></span>Delete record</button>
          </span>
        </div>
      </div>

    </div>

  </form>
</div>

【问题讨论】:

  • 你想在一行中所有三个输入吗?
  • @ankit 是的,这就是我想要实现的。

标签: html css twitter-bootstrap


【解决方案1】:

据我所知,您必须自己执行此操作,我认为 Bootstrap 中不支持使用按钮对多个输入字段进行分组。

其中绝大多数是基于视口定义每个输入的边界半径,因为它们被放置在列内(*也移除了填充以将输入保持在一起)。

以下是三个示例,具体取决于您可能希望或不希望如何在不同设备上处理此问题。

(*确保将片段打开到整页,然后缩小浏览器以查看更改)

工作示例:

$('.select-group').selectpicker();
/**CSS BELOW THIS LINE IS FOR EXAMPLE ONLY: NOT RELEVANT TO ANSWER**/

body {
  padding-top: 20px;
}
.the-form,
.the-form-2,
.the-form-3 {
  padding: 0 15px;
}
/**CSS ABOVE THIS LINE IS FOR EXAMPLE ONLY: NOT RELEVANT TO ANSWER**/

.no-gutter > [class*='col-'] {
  padding-right: 0;
  padding-left: 0;
}
/**FORM 1**/

@media (min-width: 768px) {
  .the-form .form-control.new-form-control {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: none;
  }
  .the-form .btn-group.bootstrap-select.form-control.select-group,
  .the-form .btn-group.bootstrap-select.form-control.select-group .dropdown-toggle {
    border-radius: 0;
  }
  .the-form button {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
}
@media (max-width: 767px) {
  .the-form .btn-group.bootstrap-select.form-control.select-group,
  .the-form .btn-group.bootstrap-select.form-control.select-group .dropdown-toggle {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
  }
  .the-form button {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
}
/**FORM 2**/

.the-form-2 .form-control.new-form-control {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: none;
}
.the-form-2 .btn-group.bootstrap-select.form-control.select-group,
.the-form-2 .btn-group.bootstrap-select.form-control.select-group .dropdown-toggle {
  border-radius: 0;
}
.the-form-2 button {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
/**FORM 3**/

@media (min-width: 768px) {
  .the-form-3 .form-control.new-form-control {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: none;
  }
  .the-form-3 .btn-group.bootstrap-select.form-control.select-group,
  .the-form-3 .btn-group.bootstrap-select.form-control.select-group .dropdown-toggle {
    border-radius: 0;
  }
  .the-form-3 button {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
}
@media (max-width: 767px) {
  .the-form-3 .form-control.new-form-control {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    border-bottom: none;
  }
  .the-form-3 .btn-group.bootstrap-select.form-control.select-group,
  .the-form-3 .btn-group.bootstrap-select.form-control.select-group .dropdown-toggle {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 4px;
  }
  .the-form-3 button {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 0;
  }
}
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.10.0/css/bootstrap-select.min.css">
<div class="container">
  <h1>Example 1</h1>
  <form class="the-form">
    <div class="row no-gutter">
      <h3 id="track-record">Record</h3>

      <div class="col-xs-12 col-sm-6">
        <input type="text" class="form-control new-form-control" id="assessor" placeholder="Placeholder">
      </div>

      <div class="col-xs-6 col-sm-3">
        <select id="year-select" class="form-control select-group">
          <option value="">Year</option>
          <option value="1">2014</option>
          <option value="2">2013</option>
          <option value="3">2012</option>
          <option value="4">2011</option>
        </select>
      </div>

      <div class="col-xs-6 col-sm-3">
        <button type="button" class="btn btn-primary btn-block">
          <span class="glyphicon glyphicon-minus"></span> Delete Record
        </button>
      </div>

    </div>

  </form>
</div>
<hr>
<div class="container">
  <h1>Example 2</h1>
  <form class="the-form-2">
    <div class="row no-gutter">
      <h3 id="track-record">Record</h3>

      <div class="col-xs-7 col-sm-6">
        <input type="text" class="form-control new-form-control" id="assessor" placeholder="Placeholder">
      </div>

      <div class="col-xs-3 col-sm-3">
        <select id="year-select" class="form-control select-group">
          <option value="">Year</option>
          <option value="1">2014</option>
          <option value="2">2013</option>
          <option value="3">2012</option>
          <option value="4">2011</option>
        </select>
      </div>

      <div class="col-xs-2 col-sm-3">
        <button type="button" class="btn btn-primary btn-block">
          <span class="glyphicon glyphicon-minus"></span>  <span class="hidden-xs">Delete Record</span>
        </button>
      </div>

      <span class="help-block text-right visible-xs">Delete Record</span>

    </div>

  </form>
</div>
<hr>
<div class="container">
  <h1>Example 3</h1>
  <form class="the-form-3">
    <div class="row no-gutter">
      <h3 id="track-record">Record</h3>

      <div class="col-xs-12 col-sm-6">
        <input type="text" class="form-control new-form-control" id="assessor" placeholder="Placeholder">
      </div>

      <div class="col-xs-6 col-sm-3">
        <select id="year-select" class="form-control select-group">
          <option value="">Year</option>
          <option value="1">2014</option>
          <option value="2">2013</option>
          <option value="3">2012</option>
          <option value="4">2011</option>
        </select>
      </div>

      <div class="col-xs-6 col-sm-3">
        <button type="button" class="btn btn-primary btn-block">
          <span class="glyphicon glyphicon-minus"></span> Delete Record
        </button>
      </div>

    </div>

  </form>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.10.0/js/bootstrap-select.min.js"></script>

【讨论】:

    猜你喜欢
    • 2012-07-30
    • 2015-06-17
    • 2021-10-01
    • 2021-12-02
    • 2013-07-11
    • 2020-09-11
    • 2020-12-28
    • 2015-06-13
    • 1970-01-01
    相关资源
    最近更新 更多