我正在使用jQuery Mobile 1.4.5。我有一個不顯示的元素,在下列條件下: 1.它的CSS的定位是「絕對」 2.這是DOM中的JQM「網格」下:DOM元素在位置時不顯示:絕對
<div class="ui-grid-a">
<div class="ui-block-a">
<div class="tt_autocomplete_wrap">
<ul class="jqm_autocomplete ui-listview ...bla >
<li class="ui-first-child" >
<a class="ui-btn ui-btn-icon-right ui-icon-carat-r" href="#">Not Seen If Absolute</a>
查看詳細信息點擊這裏:http://jsfiddle.net/needlethread/kkpjq8ww/
如果.jqm_autocomplete元素的CSS位置設置爲「絕對」,則演示中的第一個元素不會顯示。我把它放在小提琴顯示,但取消註釋行顯示的問題:
.jqm_autocomplete {
/* uncomment the next line to see the problem */
/* position: absolute; */
但是:它是正確定位 - 它可以使用開發者工具在提綱的形式可以看出,正是它應該是。而且它的z軸位置也在一切之前。
我看不到任何工作和非工作元素的計算樣式的差異,但我錯過了什麼?
編輯:看起來像他們其中之一正在削減。小提琴更新,以清楚地表明這一點:http://jsfiddle.net/needlethread/kkpjq8ww/16/
這有效 - 但爲什麼?原因在於_wrap是相對的,所以絕對定位的ul將相對於它放置(而不是更高一些的其他元素)。哪些工作 - 但爲什麼它阻止它顯示? – Dan
當它設置爲position:relative時,div高度爲0px,如果你想讓它與位置相關,那麼add height:54px;爲那個div – gamini2006
謝謝。我現在看到它正在被相對分區裁剪。在此更新以顯示div大小。 [鏈接](http://jsfiddle.net/needlethread/kkpjq8ww/14/)。我想這引發了一個問題:爲什麼只有其中一個元素被修剪?此下拉菜單可以有任何垂直尺寸,所以我需要它顯示在頁面其餘部分的「頂部」,而不會被其他元素截斷。 – Dan