HTML选择下拉菜单离开屏幕

HTML选择下拉菜单离开屏幕,html,css,cross-browser,Html,Css,Cross Browser,考虑到以下准则: asd flkjh asdfkljha SDLKFJHASSLDJKFH aslkjdfh asjdhf alksjdhl k 1. 2. asd flkjh asdfkljha SDLKFJHASSLDJKFH aslkjdfh asjdhf alksjdhl k 1. 2. 查看此答案 使用纯HTML和select时,不可能将选项的内容自动包装成多行(这样它就不会离开屏幕)我想您的意思是选择框的右侧不可见,因此用户无法使用滚动条 除了改用JavaScript解决方案之

考虑到以下准则:


asd flkjh asdfkljha SDLKFJHASSLDJKFH aslkjdfh asjdhf alksjdhl k
1.
2.
asd flkjh asdfkljha SDLKFJHASSLDJKFH aslkjdfh asjdhf alksjdhl k
1.
2.
查看此答案


使用纯HTML和select时,不可能将选项的内容自动包装成多行(这样它就不会离开屏幕)

我想您的意思是选择框的右侧不可见,因此用户无法使用滚动条

除了改用JavaScript解决方案之外,我还可以看到两个潜在的选项,第一个是重新放置元素以允许更长的内容

第二种方法是将元素的宽度指定为如下所示的百分比值,缺点是select元素的宽度将动态更改,并且您将失去一些设计控制


asd flkjh asdfkljha SDLKFJHASSLDJKFH aslkjdfh asjdhf alksjdhl k
1.
2.

我最近(在Firefox上)遇到了这个问题-打开选择菜单将超出桌面屏幕的范围

我的解决方案是将选项内容复制到title属性中。并在更改时更新“选择”标题,因此将鼠标悬停在选项或“选择”上将在浏览器窗口中显示工具提示-


屏幕截图会有帮助。在本地设置代码,我真的看不出问题出在哪里。在firefox和safari中,您会看到一些非常长的菜单。。这就是你所说的“从屏幕上掉下来”吗?在FF4中,屏幕外的第一个选项“从屏幕上掉下来”是一句荷兰格言,不应该翻译成英语。。。对不起:)JSFIDLE示例正是我的意思,第一个选项仅部分可见。谢谢,我已经担心我必须使用JavaScript来解决这个问题。重新定位或放大选择框不是我的UI中的选项。这是个好主意。虽然它不能解决选项离开屏幕,使垂直滚动条无法访问的问题。这种弹出菜单不应该夹在屏幕边缘,所以这可能是操作系统或浏览器中的一个错误。扩展到浏览器窗口外部的系统级上下文菜单(如“选择”下拉菜单)应自动重新定位和调整大小,以保持在显示范围内。在某些情况下,它肯定会重新定位,但只是大小不合适。
var $select = $('select');

$select
    .on('change', function () {
        var $this = $(this),
            // use replace to remove extra white (if desired)
            txt = $this.find('option:selected').text().replace(/\s+/g, ' ');
        // add title to select
        $this.attr('title', txt);
    })
    .change()
    .find('option').each(function () {
        var $this = $(this);
        // add title to each option, so it works on hover
        $this.attr('title', $this.text());
    });