2015-08-26 118 views
0

即使Squarespace在景物和肖像圖像之間具有不同的尺寸,但Squarespace如何居中放置每個圖像?Squarespace燈箱圖像居中

我一直在嘗試不同的解決方案整天,我似乎無法弄清楚。

http://bryant-demo.squarespace.com

看看他們的收藏和它的代碼。我試圖模仿它,但我似乎無法複製他們的結果。

+0

你想解釋他們是如何做到這一點的,或者是用於居中的方法? – sinisake

+0

我還沒有找到一種能夠很好地工作的方法。甚至寬度/ 2和高度/ 2頂部:50%和左:50%不適用於不同的圖像尺寸,有些是橫向和縱向圖像,或者至少我找不到解決方案:/ –

+0

好的,檢查答案...或提供(html)上下文(問題可能在此),所以我們可以調整它... ps全屏檢查小提琴...,看起來更好... – sinisake

回答

0

不知道他們做了什麼,因爲我可以看到他們獲得圖像尺寸和許多其他東西作爲屬性...但這裏是簡單的居中方法,與屏幕大小有關,這是基本的計算應用於他們的我想也是這樣。另外,還有一些用於定心不同的CSS方法...

screen_width=$(window).width(); 
     screen_height=$(window).height(); 

     img_width= $('#images img').eq(i).width(); 
     img_height= $('#images img').eq(i).height(); 

     //set to center 

     $('#images img').eq(i).css('margin-top',(screen_height-img_height)/2+'px'); 
     $('#images img').eq(i).css('margin-left',(screen_width-img_width)/2+'px'); 

演示:http://jsfiddle.net/dfwosy4m/

附:如果您在其他容器中設置圖像,而不是正文,則只需對不同的元素應用相同的計算。

編輯: 其實,同樣的方法作品,當然,不管容器是更大的,比圖像更小。所以,簡單的:圖像中心=集裝箱中心站,併爲overflow:hidden休息。

function centralize() { 
    screen_width = $('.box').width(); 
    screen_height = $('.box').height(); 

    $('#images img').each(function(i) { 

     img_width = $(this).width(); 
     img_height = $(this).height(); 

     //set to center 

     $(this).css('margin-top', (screen_height - img_height)/2 + 'px'); 
     $(this).css('margin-left', (screen_width - img_width)/2 + 'px'); 

}); 
} 

    centralize(); 

新的演示:

http://jsfiddle.net/dfwosy4m/3/

附:檢查他們頁面上的元素,並在我的演示中:你會看到使用相同的技術(隱藏的圖像部分將由檢查員顯示)...鍵是溢出:隱藏的固定框,所以...你應該應用類似CSS來獲得所需的效果。

+0

對不起,但我的意思是,在你點擊圖像之前,它是如何在每個div內居中的,即使每個圖像都是不同的尺寸。 –

+0

啊,對不起,我知道誤解是有問題的,而且你已經知道如何集中圖像...將刪除答案,這更有趣,他們的THUMBNAILS外觀......他們將圖像放在固定的盒子裏,而HIDE多餘的部分 - >你會看到圖像的一部分被隱藏起來,盒子的中心=圖像的中心,也許很快就會發送新的答案...... :) – sinisake