jQuery自动完成:移动列表位置?

时间:2011-02-02 03:54:52

标签: jquery css autocomplete position

我想知道我是否可以将下拉列表向下移动4px?

我在.ui-autocomplete {}尝试了几种风格。

,包括:

margin-top: 4px;
top: 4px

但它似乎没有用?

4 个答案:

答案 0 :(得分:9)

接受的答案是不再有效,因为the offset option was deprecated in jQuery UI v1.9 and completely removed in v1.10

  

已弃用offset选项,并且已将偏移量合并到myat选项中。位置的形式现在是命名位置,可选地后跟加号或减号,然后是偏移量。此外,抵消现在支持百分比(见上文)。您应该将offset选项的所有用途替换为my和/或at选项中的偏移量。

你现在应该写:

$(".my-autocomplete-field").autocomplete({
    position: {
        my: "left+0 top+4",
    }
});

答案 1 :(得分:8)

这是offset property position option的用途:

$('#myField').autocomplete({
    source: …,
    position: {
        offset: '0 4' // Shift 0px left, 4px down.
    }
});

答案 2 :(得分:4)

尝试

.ui-autocomplete {
     margin-top: 20px !important;
     top: 0px !important;
}

或尝试

.ui-autocomplete {
     margin-top: 20px !important;
     top: auto !important;
}

观看演示:

答案 3 :(得分:0)

不能说我的头脑,但这取决于现有的CSS是什么......

如果位置是绝对的,则边距不会影响框...你可以做的是获得结果div $('。ui-autocomplete')然后将4px添加到元素的位置。

它将是:

$('.ui-autocomplete').css('bottom')$('.ui-autocomplete').css('top')

获取这两者的价值并改变它们,看看会发生什么:)