2014-02-06 62 views
1

我有一個容器div覆蓋屏幕設置ratio如何在我的情況下設置元素的絕對位置?

我想將一些元素放在absolute的位置,並做出響應(縮小或放大)。

我有類似

http://jsfiddle.net/hsD2G/2/

當我縮width或瀏覽器的height。元素位置會改變並且看起來不合適。任何人都可以幫助我嗎?

+0

你的意思是'HIGHLIGHTS'形象? –

+2

問題是div的寬度爲100%,所以您可以將Highlights圖像與BLOCK對齊。但是bg圖像特別是用'background-size:contains'定位,即不覆蓋整個塊。這不是一個元素,所以你不能達到你想要的。嘗試一些不同的東西,比如使用中心塊,或者用Javascript計算比例 –

+0

@Hashem是的我的意思是突出顯示圖像。 – FlyingCat

回答

0

再次,這可能不是最佳解決方案。至少CSS可以部分使用,以突出顯示圖像居中,或使用%寬度。如果可以,不知何故,使包含DIV的背景圖像平方,只能用CSS來完成。 以下是帶有jQuery解決方案的Fiddle

$(document).ready(function() { 
    function update(){ 
     var top=20,left=40; 
     var height = $(window).height(); 
     var width = $(window).width(); 
     var highlights = $('#cover-img img'); 
     if (height > width){ 
      // Image limited by width 
      var blank_top = Math.round((height - width)/2);   
      highlights.css('top',blank_top+top); 
      highlights.css('left',left); 
      // make it responsive 1/3 ratio 
      highlights.width(Math.round(width/3));  
     }else{ 
      // Image limited by height 
      var blank_left = Math.round((width - height)/2);   
      highlights.css('left',blank_left+left); 
      highlights.css('top',top);   
      highlights.width(Math.round(height/3)); 
     } 
    } 
    $(window).resize(update); 

    update(); 
)}; 

希望這有助於

相關問題