C# Internet Explorer中的下拉列表宽度

C# Internet Explorer中的下拉列表宽度,c#,asp.net,internet-explorer,C#,Asp.net,Internet Explorer,我有一个ASP.NET下拉列表,内容相当广泛,而封闭列表的宽度必须非常小,因为网站上的空间限制。这就是为什么我需要能够在列表关闭时为其设置特定的宽度,但希望它与打开时的内容一样宽 默认情况下,Firefox会在打开时自动将下拉列表设置为与内容一样宽。另一方面,Internet Explorer则没有 有没有办法告诉IE在打开DDL时使其与内容一样宽,但在关闭时使其尺寸更小?最好不使用javascript 编辑:好的,我在第一篇文章中不够清楚。重点在于何时打开。我希望列表关闭时有一个特定的宽度,但

我有一个ASP.NET下拉列表,内容相当广泛,而封闭列表的宽度必须非常小,因为网站上的空间限制。这就是为什么我需要能够在列表关闭时为其设置特定的宽度,但希望它与打开时的内容一样宽

默认情况下,Firefox会在打开时自动将下拉列表设置为与内容一样宽。另一方面,Internet Explorer则没有

有没有办法告诉IE在打开DDL时使其与内容一样宽,但在关闭时使其尺寸更小?最好不使用javascript


编辑:好的,我在第一篇文章中不够清楚。重点在于何时打开。我希望列表关闭时有一个特定的宽度,但我希望它与打开时的内容一样宽。正如我所说,Firefox做到了这一点,IE没有做到。

IE默认情况下会使其与内容一样宽。如果在DDL上指定宽度或通过在父容器中的某个位置放置宽度来约束DDL,则此行为会发生改变。

我认为最好的办法是计算最大宽度,并将其设置在下拉列表中。这样,无论内容是什么,您都可以获得一致的外观,而且您还可以绕过此问题。

IE默认为与内容一样宽

设置CSSClass并为其指定宽度,您将能够更改它

你也可以去

select{
  width:42px;
}

编辑:从你现在所说的,我觉得你需要做一些javascript,因为IE不会处理这个问题。尝试查看jquery

我建议不要使用下拉列表,而是像这样一个对javascript更友好的列表


这将允许您的内容扩展超过选定的宽度。

是否希望与内容一样宽?我很困惑,好吧,我试着让它更清楚一点。这不是我想要的,但因为javascript看起来是唯一的解决方案,我会给你答案标签。:)谢谢不幸的是,javascript(或其他类似flash的东西)是唯一的选择。但有时情况就是这样