C# 组合框下拉列表显示在错误的位置

C# 组合框下拉列表显示在错误的位置,c#,asp.net,.net,ajaxcontroltoolkit,C#,Asp.net,.net,Ajaxcontroltoolkit,有一个ajaxcontroltoolkit combox。不知何故,下拉列表没有显示在左侧(见图) .Net代码 <ajaxToolkit:ComboBox ID="cbState" runat="server" AutoPostBack="true" DropDownStyle="Dropdownlist" AutoCompleteMode="None" ItemInsertLocation="Append" CssClass="searchcontentCombobox" />

有一个ajaxcontroltoolkit combox。不知何故,下拉列表没有显示在左侧(见图)

.Net代码

<ajaxToolkit:ComboBox ID="cbState" runat="server" AutoPostBack="true" DropDownStyle="Dropdownlist" AutoCompleteMode="None" ItemInsertLocation="Append" CssClass="searchcontentCombobox" />

有什么想法吗?

我也经历过类似的事情。我必须添加一个元标记,以确保ie8在doctype声明中。您可以通过使用开发者工具栏或firebug查看是否存在相同的问题。一旦我将doctype更改为模拟ie8,一切都很好。

我将组合框放在一个div中。该div没有设置定位

然后我把它放在我的样式表中:

.ajax__combobox_itemlist
{
    position:relative !important; 
    height: 100px !important;
    overflow: auto !important;
    top: 0px !important;
    left: 0px !important;
}

弹出的下拉列表然后绑定到div的左上角。

这个css让下拉列表对齐

.ajax__combobox_itemlist
{
    position:fixed !important;
}

那么你想控制下拉字段的渲染位置?我认为这是不可能的,因为浏览器负责这样做。你所能做的最好是制作自己的元素,并适当地显示/隐藏/设置样式。我正在尝试将左侧的下拉列表与select对齐。不幸的是,这在所有浏览器上都会发生。
.ajax__combobox_itemlist
{
    position:fixed !important;
}