使用 Select2 包裹选定的文本
Wrap selected text with Select2
如何让 Select2 中的选定文本换行而不是使用省略号?选项项换行,但我希望输入字段能够向下展开而不是展开。
举个例子:
$('.select2').select2();
<link href="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/css/select2.css" rel="stylesheet"/>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/js/select2.js"></script>
<select class="select2" style="width:100px">
<option value="AL">Really long name that normally wouldn't be visible</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
</select>
默认Select2 adds the following code:
.select2-selection--single {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
但是,删除这些属性并不能解决问题,因为它们仍然嵌套在其他容器中。
我认为 .select2-selection__rendered
元素需要一些调整。
像这样的怎么样?
.select2-selection--single {
height: 100% !important;
}
.select2-selection__rendered{
word-wrap: break-word !important;
text-overflow: inherit !important;
white-space: normal !important;
}
$('.select2').select2();
.select2-selection--single {
height: 100% !important;
}
.select2-selection__rendered{
word-wrap: break-word !important;
text-overflow: inherit !important;
white-space: normal !important;
}
<link href="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/css/select2.css" rel="stylesheet"/>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/js/select2.js"></script>
<select class="select2" style="width:100px">
<option value="AL">Really long name that normally wouldn't be visible</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
</select>
更新
!important
不是必需的。感谢@KyleMit 指出。
如何让 Select2 中的选定文本换行而不是使用省略号?选项项换行,但我希望输入字段能够向下展开而不是展开。
举个例子:
$('.select2').select2();
<link href="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/css/select2.css" rel="stylesheet"/>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/js/select2.js"></script>
<select class="select2" style="width:100px">
<option value="AL">Really long name that normally wouldn't be visible</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
</select>
默认Select2 adds the following code:
.select2-selection--single {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
但是,删除这些属性并不能解决问题,因为它们仍然嵌套在其他容器中。
我认为 .select2-selection__rendered
元素需要一些调整。
像这样的怎么样?
.select2-selection--single {
height: 100% !important;
}
.select2-selection__rendered{
word-wrap: break-word !important;
text-overflow: inherit !important;
white-space: normal !important;
}
$('.select2').select2();
.select2-selection--single {
height: 100% !important;
}
.select2-selection__rendered{
word-wrap: break-word !important;
text-overflow: inherit !important;
white-space: normal !important;
}
<link href="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/css/select2.css" rel="stylesheet"/>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/js/select2.js"></script>
<select class="select2" style="width:100px">
<option value="AL">Really long name that normally wouldn't be visible</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
</select>
更新
!important
不是必需的。感谢@KyleMit 指出。