Şirket güvenlik duvarı görüntüleri engelliyor, bu yüzden diğer yorumlara göre neyin peşinde olduğunuzu tahmin ediyorum.
DÜZENLEME: Artık neyin peşinde olduğunu görebiliyorum, kemanımı buna göre güncelledim. Bütünlük için aşağıdaki kodu içerir.
İletişim kutusunun boyutunu hesaplamak, sabit div'in yüksekliğini çıkarmak ve dinamik div'in yüksekliğini bu hesaplanmış değere ayarlamak için bir işlev yazabilirim. Bu işleve bir çağrıyı iletişim kutusunun yeniden boyutlandırma olayına bağlardım. Here bir keman, kesin düzeniniz için biraz ayarlamaya ihtiyaç duyabilir, ancak yakın olmalıdır.
Bazı özellikler bir kaydırma/yeniden boyutlandırma olayının ortasındayken bazı tarayıcıların doğru bir şekilde hesaplanamayacağı, setTimeout ile yeniden boyutlandırma olayının tamamlanmasından sonra gerçekleşecek hesapların sıraya konulmasının sorunların çözülmesine yol açmasıdır. Yeniden boyutlandırma devam ederken biraz tempolu değiştirmek. Bu question'a bakın ve ayrıntıları için cevap verin.
function SetDivHeight() {
var $DynamicDiv = $('div.dynamic');
var $FixedDiv = $('div.fixed');
var $Container = $(window); //Update for containing element
/*Calculate the adjustment needed to account for the margin and
border of the dynamic div.*/
var HeightAdjustment = $DynamicDiv.outerHeight(true) - $DynamicDiv.height();
/*Get the values of the top and bottom margins which overlap
between the two divs.*/
var DynamicBottomMargin = parseInt($DynamicDiv.css('marginBottom'));
var FixedTopMargin = parseInt($FixedDiv.css('marginTop'));
/*Adjust for the overlapping top/bottom margin by subtracting
which ever is smaller from the adjustment value.*/
if (DynamicBottomMargin >= FixedTopMargin) {
HeightAdjustment -= FixedTopMargin;
} else {
HeightAdjustment -= DynamicBottomMargin;
}
/*subtract the height of the fixed div from the height of the
container, subtract the calculated height adjustment from that
value, and set the result as the height of the dynamic div.*/
$DynamicDiv.height(($Container.height() - $FixedDiv.outerHeight(true)) -
HeightAdjustment);
/*May need to use $Container.innerHeight instead, if container
is not a window element.*/
}
var t;
function QueueSetDivHeight() {
if (t) {
clearTimeout(t);
}
t = setTimeout(function() {
SetDivHeight();
}, 0);
}
$(document).ready(function() {
SetDivHeight();
$(window).resize(QueueSetDivHeight);
//Bind to resize of container element instead/as well
});
Bunu açıkça yapmanın doğru yolu. Onu bulmak için tebrikler. Hiç kimsenin bunu düşünmemesi şaşırtıcı. Belki StackOverflow artık cevaplar için en iyi yer değil - sadece burada yayınlanan gereksiz cevaplara bakın ... – Timwi
Ve sadece eğlenmek için, orta boyun yüksekliğini ayarlamak için bir miktar JavaScript kullanarak, üst üste yerleştirilmiş ve en alttan yerleştirilmiş öğelerin bulunduğu otomatik boyutlara sahip bir keman http://jsfiddle.net/cPwqN/3/. –
Bir bakışta bu, IE 8 ve 7'de çalışıyor, ancak 7 tane ek içerik eklendikçe ayrılmaya başlayacağından şüpheleniyorum. Kullanıcı tabanımın çoğu hala 7'de (hiçbirimiz 9'a geçmedi) ve 7'lerin konumlandırmasıyla ilgili hatalar, JavaScript/JQuery ile bu tür bir şeyin nasıl yapılacağına karar vermemden kaynaklanıyordu. – Rozwel