position: absolute を持つ ajaxtoolkit AutoCompleteExtender があります。position: relative で div 内に配置しました。これにより、位置が div ではなくウィンドウの左上を基準とする Chrome/Safari を除くすべてのブラウザーで、エクステンダー ドロップダウンが完全に配置されます。
AutoCompleteExtender 用に生成された HTML と同じ css クラスとインライン スタイルを持つ別の ul を配置すると、配置は Chrome で正常に機能します。そのため、HTML コードの下部 (終了タグの直前) にレンダリングするエクステンダーに固有のものがあるため、その位置を計算するときに div を親として使用しません。
これを修正するために私ができることはありますか?
コード:
<div class="searching">
<ajaxToolkit:AutoCompleteExtender
runat="server"
ID="biznameOrCategoryAutoComplete"
TargetControlID="txtBizNameOrCategory"
ServicePath="~/AutoComplete.asmx"
ServiceMethod="GetBiznameOrCategoryCompletionList"
MinimumPrefixLength="1"
CompletionInterval="1000"
EnableCaching="true"
CompletionSetCount="10"
CompletionListCssClass="autocomplete_completionCompyNameListElement"
CompletionListItemCssClass="autocomplete_listItem"
CompletionListHighlightedItemCssClass="autocomplete_highlightedListItem"
ShowOnlyCurrentWordInCompletionListItem="true">
</ajaxToolkit:AutoCompleteExtender>
</div>
CSS:
.searching {
margin-left:5px;
padding-top:10px;
width:366px;
position: relative;
}
.autocomplete_completionCompyNameListElement {
background: #fff;
font-family:Arial, Helvetica, sans-serif;
font-size: 17px;
width: 340px !important;
left: 20px !important;
border: 1px solid #d9d9d9;
font-size: 12px;
top: 48px !important;
padding: 2px 4px !important;
}