Javascript 动态截断<;选项>;适合的文本<;选择>;列表
默认情况下,为Javascript 动态截断<;选项>;适合的文本<;选择>;列表,javascript,html,css,html-select,Javascript,Html,Css,Html Select,默认情况下,为元素显示的选择器列表将与其包含的最宽的子元素一样宽。如果我用CSS硬编码select标记的宽度,使其更窄,则显示中最宽的选项将被截断 我想缩小选项文本以适应选择列表,并附加。。。(省略号)显示选中该选项时它被截断,但是,当我展开下拉列表时,我希望下拉列表中的文本为全宽,不带尾随省略号 我该如何做到这一点呢?我相信您想要的是: option { width: 200px; // Adjustable white-space: nowrap; overflow: hidde
元素显示的选择器列表将与其包含的最宽的
子元素一样宽。如果我用CSS硬编码select标记的宽度,使其更窄,则显示中最宽的选项将被截断
我想缩小选项文本以适应选择列表,并附加。。。(省略号)显示选中该选项时它被截断,但是,当我展开下拉列表时,我希望下拉列表中的文本为全宽,不带尾随省略号
我该如何做到这一点呢?我相信您想要的是:
option {
width: 200px; // Adjustable
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
这将自动强制选择选项为指定的宽度,并将任何“溢出”文本转换为保留在边界内的省略号:)
希望这有帮助 我相信你要找的是:
option {
width: 200px; // Adjustable
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
这将自动强制选择选项为指定的宽度,并将任何“溢出”文本转换为保留在边界内的省略号:)
希望这有帮助 使用
css
和jQuery
:
$('select')。在('change',function()上{
$(this).find('option').removeClass('selected');
$(this).find('option:selected').addClass('selected');
});代码>
select,
选项。已选定{
宽度:100px;
溢出:隐藏;
空白:nowrap;
文本溢出:省略号;
}
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
使用css
和jQuery
:
$('select')。在('change',function()上{
$(this).find('option').removeClass('selected');
$(this).find('option:selected').addClass('selected');
});代码>
select,
选项。已选定{
宽度:100px;
溢出:隐藏;
空白:nowrap;
文本溢出:省略号;
}
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
我在这里找到了chrome的解决方案:
使用这种方法,选择标签中的插入符号图标将消失,因此您可能需要使用背景图像。我在这里找到了chrome的解决方案:
使用这种方法,select标记中的插入符号图标将消失,因此您可能需要为其使用背景图像。@clearlight我不确定新标题是否符合我的要求。我需要的选项标签的宽度是固定的,文本要修剪down@clearlight我不确定这个新的头衔是不是我想要的。我需要的选项标签的宽度是固定的,文本将被修剪downsuperb解决方案,afaictI同意,这是一个极好的解决方案。不过,要扩展这一点,您只需使用选项:选中而不是选项。选中,并完全避免jQuery:)@obsidiange是它的真值,但它也会在悬停时更改,而不仅仅是选中;在Chrome/Mac中,只有设置select元素的宽度才有任何效果。所有其他css属性和javascript都不起任何作用。@Doamon.s非常感谢,但我看不到您的演示中的省略号。极好的解决方案,afaictI同意这是一个极好的解决方案。不过,要扩展这一点,您只需使用选项:选中而不是选项。选中,并完全避免jQuery:)@obsidiange是它的真值,但它也会在悬停时更改,而不仅仅是选中;在Chrome/Mac中,只有设置select元素的宽度才有任何效果。所有其他css属性和javascript都不起作用。@Doamon.s非常感谢,但我看不到您的演示中的省略号。Chrome/Mac中没有关系Chrome/Mac中没有关系