Рекомендации для объектов выпадающего меню, которые слишком широки?

Метод sort() работает на месте и возвращает None. Вы должны сначала сохранить список, а затем вызвать сортировку по нему. Для b вы сначала создаете список, затем сортируете его, при этом возвращаемое значение sort() присваивается b, а первоначальный список теряется.

8
задан ntownsend 25 February 2009 в 16:22
поделиться

7 ответов

Я соглашаюсь с GordonB относительно усечения опций. Чрезмерно долгие опции может быть трудно считать, и поскольку Вы упомянули, что это выглядит ужасным.

Если бы Ваше выпадающее заполняется от ввода данных пользователем, однако, я ограничил бы длину. То, что может быть сказано с 15 словами, должно быть сказано с 5..., если это не может, затем возможно, выпадающим не является Ваш наилучший вариант.

Например, если Ваши опции являются заголовками научно-исследовательских работ и их авторов, можно, вероятно, сократить их вниз до нескольких ключевых слов ("Теория струн и Вы [Brown 2008]"). С другой стороны, если сами опции отличаются только несколькими словами и теряют значение, если они являются усеченными (например, список опций как "Арахисовое масло и виноград превращает тестовую систему в желе с морковными палочками, и соевое молоко" и "Арахисовое масло и бойзенова ягода превращают sandwith в желе с морковными палочками и 2%-м молоком"), возможно, Вы лучше обслуживались бы путем отображения всех опций последовательно, сопровождались бы флажком или переключателем как соответствующие.

(Если Вы используете ASP.NET, в основном я говорю что использование повторителя вместо DropDownList),

Этот второй подход мог бы также позволить Вам включать другие элементы, что Вы не сможете в выпадающем. Смотрите на эту страницу результата поиска Amazon для идей.

2
ответ дан 5 December 2019 в 11:27
поделиться

Усечение с подсказкой было бы моим выбором....

В прошлый раз, когда я должен был сделать это, я использовал управление telerik, которое было вполне богатым UI.

3
ответ дан 5 December 2019 в 11:27
поделиться

Дайте элементу максимальную ширину со свойством CSS max-width.

2
ответ дан 5 December 2019 в 11:27
поделиться

Большинство браузеров показывает варианты в полной ширине независимо от фактической ширины dropdown тогда как обрезки IE их к ширине избранного поля. Таким образом, проблемой является действительно конкретный браузер.

Я сделал решение с помощью абсолютного расположения на выпадающее так, чтобы я мог расшириться, это - ширина на парении в IE, не повреждая мое расположение. Немного hacky, но это - одна опция.

1
ответ дан 5 December 2019 в 11:27
поделиться

Я использовал коммерческое управление ASP.NET, которое реализовано с помощью <отделения>, а не <выбора>. Таким образом, мы могли поместить многострочные элементы на него, разработать его, как мы хотели, и сделайте некоторый другой материал.

0
ответ дан 5 December 2019 в 11:27
поделиться

Зависит, как широкий Вы говорите, каков контекст. Часто это сводится к проблеме проектирования, а не проблеме кодирования. Если текст будет действительно длинен, то у Вас будут проблемы удобства использования независимо, потому что чтение длинного текста в выпадающем является трудным. Мои опции были бы:

Если выпадающее является действительно узким, и самые долгие объекты не очень длинны (например, 3-4 слова) изменяют дизайн для размещения его.

Если текст действительно длинен (например, предложения) затем усекают его, если Вы можете. Иногда текст не поддается этому (например, можно закончить с несколькими объектами с тем же текстом). Вы не можете действительно поместить подсказки на объекты списка выборки.

Если текст является действительно длинным и не может быть усеченным, можно хотеть рассмотреть другую возможность UI.

0
ответ дан 5 December 2019 в 11:27
поделиться

Я понимаю, что довольно поздно ответил на этот вопрос, но я искал ответ и, возможно, нашел довольно элегантное решение.

Посмотрите здесь:

Первая ссылка говорит о нескольких решениях, прежде чем рекомендовать решение, основанное на второй ссылке.

Идея состоит в том, что при нажатии вы изменяете ширину тега внутри div с параметром переполнения, установленным на «скрытый», он не мешает остальной части страницы.

Попробуйте - неплохое решение.

7
ответ дан 5 December 2019 в 11:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: