将 bootstrap-select 与 input-group 和 form-control 类 一起使用时出现 z-index 问题
z-index issue when using bootstrap-select with input-group and form-control classes
我的代码
我正在使用 Bootstrap 3 和 bootstrap-select 插件。
<div class="form-group">
<div class="input-group">
<span class="input-group-addon">
<i class="glyphicon glyphicon-user"></i>
</span>
<select class="form-control selectpicker">
<option value="1" text="Test"></option>
<option value="2" text="Test 2"></option>
<option value="3" text="Test 3"></option>
</select>
</div>
</div>
<div class="form-group">
<div class="input-group">
<span class="input-group-addon">@</span>
<input type="email" required class="form-control" placeholder="Email Adress"/>
</div>
</div>
<div class="form-group">
<div class="input-group">
<span class="input-group-addon">https://whosebug.com/questions/</span>
<input type="text" required="" class="form-control" placeholder="ID">
</div>
</div>
结果
关闭时:
打开时:
可能的原因
bootstrap-select 插件生成以下 HTML:
<div class="dropdown bootstrap-select form-control open">...</div>
Bootstrap CCS 具有以下规则,将 .input-group
内的所有 form-control
同时对齐 z-index
:
.input-group .form-control {
z-index: 2;
// ...
}
问题
我希望下拉列表中的项目出现在输入字段的前面,但它们呈现在后面(参见上面的屏幕截图)。浏览器:Chrome 71.
如何解决这个问题?
正确的HTML应该是
<div class="dropdown bootstrap-select input-group-btn form-control open">...</div>
bootstrap-select 插件应该已经为您生成了这个 class,但如果没有生成 - 只需手动附加 class。示例:
<select class="form-control input-group-btn selectpicker">
结果
说明
bootstrap-select 插件具有以下 CCS 规则,可以解决问题:
.bootstrap-select.form-control.input-group-btn {
z-index: auto;
}
我的代码
我正在使用 Bootstrap 3 和 bootstrap-select 插件。
<div class="form-group">
<div class="input-group">
<span class="input-group-addon">
<i class="glyphicon glyphicon-user"></i>
</span>
<select class="form-control selectpicker">
<option value="1" text="Test"></option>
<option value="2" text="Test 2"></option>
<option value="3" text="Test 3"></option>
</select>
</div>
</div>
<div class="form-group">
<div class="input-group">
<span class="input-group-addon">@</span>
<input type="email" required class="form-control" placeholder="Email Adress"/>
</div>
</div>
<div class="form-group">
<div class="input-group">
<span class="input-group-addon">https://whosebug.com/questions/</span>
<input type="text" required="" class="form-control" placeholder="ID">
</div>
</div>
结果
关闭时:
打开时:
可能的原因
bootstrap-select 插件生成以下 HTML:
<div class="dropdown bootstrap-select form-control open">...</div>
Bootstrap CCS 具有以下规则,将 .input-group
内的所有 form-control
同时对齐 z-index
:
.input-group .form-control {
z-index: 2;
// ...
}
问题
我希望下拉列表中的项目出现在输入字段的前面,但它们呈现在后面(参见上面的屏幕截图)。浏览器:Chrome 71.
如何解决这个问题?
正确的HTML应该是
<div class="dropdown bootstrap-select input-group-btn form-control open">...</div>
bootstrap-select 插件应该已经为您生成了这个 class,但如果没有生成 - 只需手动附加 class。示例:
<select class="form-control input-group-btn selectpicker">
结果
说明
bootstrap-select 插件具有以下 CCS 规则,可以解决问题:
.bootstrap-select.form-control.input-group-btn {
z-index: auto;
}