jquery vertical align 2 divs

时间:2010-11-21 20:36:17

标签: jquery css alignment

这就是我想要实现的目标

alt text

我有一个流畅的工具提示和一个按钮。它们的宽度由文本和div填充决定。文字可能有所不同。那说如何通过Jquery垂直对齐它们呢?

我想使用jquery的原因是为了避免使用表格和过多的HTML。

我尝试了width()函数,但它没有给出确切的宽度。我想人们也应该得到填充物?

最后,我对数字很糟糕。我不确定可以使用什么公式,但我怀疑可能将div宽度除以2并以某种方式将middles居中?

编辑:单击按钮时,工具提示出现,绝对不会干扰/推动其他div。

编辑:正在进行的工作jsfiddle.net/Aezb6

3 个答案:

答案 0 :(得分:2)

获取calloutdiv的宽度//

widthCallout=$('#calloutdivWidth'); //这是动态的

将此值除以常数的按钮宽度。

左转:

left= widthCallout/pushbuttonwidth

你可以使用paddingLeft值+或 - 它可以提供你的中心:

答案 1 :(得分:1)

见这个例子:

var item = $(".tooltip");
var container = $("#container");

var position = item.position();

var mytop = position.top - container.height() + $(document).scrollTop();
var myleft = position.left - container.width() + $(document).scrollLeft();

// Correct relative coordinates for IE and WebKIT
if($.browser.msie || $.browser.webkit){
    mytop = position.top - container.height();
    myleft = position.left - container.width();
}

container.offset({top: mytop, left: myleft});

答案 2 :(得分:1)

http://jsfiddle.net/SebastianPataneMasuelli/Aezb6/1/

您只需要将center_it除以2即可获得工具提示的中间点。