我有一系列滾動水平佈局的圖像。圖像之間有一段距離。我正在使用一個jQuery腳本,負責根據瀏覽器的窗口大小來調整圖像大小。我的問題是,我怎樣才能調整圖像之間的邊距呢?根據瀏覽器的窗口大小調整邊距
我需要的設計是完全流暢的,所以在這種情況下媒體查詢不是解決方案。
HTML:
<div id="page">
<div id="header">
</div>
<div id="slides">
<div class="slide"><img src="image01.jpg" /></div>
<div class="slide"><img src="image02.jpg" /></div>
<div class="slide"><img src="image03.jpg" /></div>
....
<div class="slide"><img src="imageN.jpg" /></div>
</div>
<div id="footer">
</div>
</div>
CSS:
#slides {
width: 100%;
white-space: nowrap;
}
.slide {
display: inline-block;
margin-right: 20px;
vertical-align: top;
}
的jQuery:
jQuery(document).ready(function($){
var $window = $(window),
$header = $('#header'),
$footer = $('#footer');
var getHorizontalPageHeight = function() {
return $window.height() - $header.outerHeight() - $footer.outerHeight();
};
var $slides = $('#slides'),
$items = $slides.find('img, iframe');
$items.each(function() {
var $item = $(this),
width = $item.data('width') || $item.attr('width') || 1,
height = $item.data('height') || $item.attr('height') || 1;
$item.data({
height: height,
ratio: width/height
});
});
var resizer = function() {
var contentHeight = getHorizontalPageHeight(),
windowWidth = $window.width(),
windowHeight = $window.height();
$items.each(function() {
var $item = $(this),
originalHeight = $item.data('height'),
height = contentHeight > originalHeight ? originalHeight : contentHeight,
width,
ratio = $item.data('ratio');
width = height * ratio;
$item.css({
width: width,
maxWidth: 'none',
height: width/ratio
});
});
};
$window.on('resize', resizer);
resizer();
});
在此先感謝
你的意思是這樣使用'@ media'查詢 –
嗨,怎麼樣讓一個固定的寬度和高度爲你圖片。示例這樣的事情。它會根據父div的尺寸自動調整大小。大多數開發者使用這種方法 –
使用CSS(@media) –