2009-06-08 27 views
6

JQuery vAligh eklentileri veya benzerleri ile ilgili herhangi bir deneyiminiz var mı?dikey hizalama div jquery'yi kullanarak bir div içinde mi?

Aşağıdakiler için hizalamayı denedim ama başarısız oluyor .. Basit bir eklenti eklentisi kullanıyordum (eklentiyi sonuna kadar koyacağım, bir jquery uzantısı). . Burada FN uzantısı

var overlayLayer = $("<div id='office-location'></div>").addClass('modal-overlay'); 
$('body').append(overlayLayer); 

$('<div id="content-for-overlay" style="background-color: white;"></div>').appendTo(overlayLayer); 

this.render({ to: "content-for-overlay", partial: "office-location-modal" }); // this just copies html into the layer 

$('#content-for-overlay').vAlign(); THIS USES a plugin called valign but it doesn't align 

$("body").css("overflow", "hidden"); 
$('#office-location').css("opacity", 0.8).fadeIn(150); 
$('#content-for-overlay').css("opacity", 1); 

..

(function($) { 
$.fn.vAlign = function() { 
    return this.each(function(i) { 
     var h = $(this).height(); 
     var oh = $(this).outerHeight(); 
     var mt = (h + (oh - h))/2; 
     $(this).css("margin-top", "-" + mt + "px"); 
     $(this).css("top", "50%"); 
     $(this).css("position", "absolute"); 
    }); 
}; 

}) (jQuery);

+0

sayesinde herkesi kullanarak, jQuery kullanarak biçimlendirme için bu css uygulamak oldukça kolay olurdu ki, nihayet, onun değil hatasız sonunda aşağıdaki seçti ama YORUMLAR içinde düzeltmeler var IE hatalar ama düzeltmeleri ile onun ince ...... http://code.google.com/p/jquerydevbrazil/wiki/jQueryCenterPlugin belki başka biri için birileri olacak –

cevap

6

here gösterildiği gibi öğeleri dikey olarak ortalamak için bir CSS tekniği kullanmayı deneyebilirsiniz. Yöntemin çapraz tarayıcı olduğuna inanıyorum, maalesef işaretlemeye fazladan bir boşluk ekler.

O $().css()

+1

http://stackoverflow.com/ sorular/967022/nasıl yapılır-dikey-orta-metin-sonraki-bir-resim-in-html-css de ilgili bir tartışma var. – ajm