正如其他人所說,使用absolute
定位你的圖像是沒有意義的 - 它會使事情更難。但是,您可以使用absolute
元素可以將置於之後的其他元素,而不用推送內容。我的建議是隻有一個班級能夠告訴你當前正在顯示哪個圖片。顯示的圖像將有一個relative
的位置,其他將有一個absolute
的位置,允許圖像出現在左上角相同的位置,但一些被遮擋而另一些可見。
下面的方法的主要優點是您的圖像可以根據您的需要調整您的包裝盒的尺寸,並且photoset
可以作爲覆蓋層等內嵌放置在文檔流中......它非常靈活,所以給它一試。這也意味着你的JavaScript變得更輕鬆,更容易,因爲你需要做的就是將正確的類添加到圖像來顯示它。您還可以添加一個帶有標題的相對框,並且它可以正常工作。
// Don't worry about this, its just a quick implementation to make your photos rotate
var ps = Array.prototype.slice.call(document.querySelectorAll('.photoset')).forEach(function(set){
var all = Array.prototype.slice.call(set.querySelectorAll('img'));
var index = 0;
setInterval(function(){
all[index].className = '';
index = index + 1 >= all.length ? 0 : index + 1;
all[index].className = 'active';
},1000)
});
@import url('//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap-theme.min.css');
.body {
height: 100%;
width: 100%;
}
.photoset {
box-shadow: 0px 0px 25px -2px rgba(89,89,89,1);
overflow: hidden;
width: auto;
display: inline-block;
}
#absolute-photoset {
position: absolute;
left: 50%;
top: 50%;
max-width: 80%;
max-height: 80%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
z-index: 1;
}
.photoset img {
position: absolute;
left: 0;
top: 0;
max-width: 100%;
max-height: 100%;
opacity: 0;
display: block;
}
.photoset img.active {
position: relative;
opacity: 1;
}
<div class="photoset" id="absolute-photoset">
<img src="http://inspirebee.com/wp-content/uploads/2013/04/animal-fashion-parade.jpg" class="active" />
<img src="http://www.fubiz.net/wp-content/uploads/2013/03/Fashion-Zoo-Animals18.jpg" />
<img src="http://inspirebee.com/wp-content/uploads/2013/04/animal-in-fashion.jpg" />
<img src="http://www.fubiz.net/wp-content/uploads/2013/03/Fashion-Zoo-Animals20.jpg" />
</div>
<h1>My Title</h1>
<div class="photoset" id="inline-photoset">
<img src="http://inspirebee.com/wp-content/uploads/2013/04/animal-fashion-parade.jpg" class="active" />
<img src="http://www.fubiz.net/wp-content/uploads/2013/03/Fashion-Zoo-Animals18.jpg" />
<img src="http://inspirebee.com/wp-content/uploads/2013/04/animal-in-fashion.jpg" />
<img src="http://www.fubiz.net/wp-content/uploads/2013/03/Fashion-Zoo-Animals20.jpg" />
</div>
<p>The above photoset seems to be pushing this text down as expected!</p>
這photoset類也推內容出它的方式,如果它是不定位絕對的,我的猜測是,你在找什麼。你也可以調整.photoset
的大小,並且裏面的圖像應該跟隨(我不確定max-width
是否會改變圖像的比例,如果是這樣,請只使用單向max
值,如只是max-width
)。
主要優點是可以治療.photoset
作爲一個盒子,不用擔心它的內容,所以現在你可以在線使用,絕對定位,固定等..
絕對定位是一個**佈置網頁的方法非常糟糕。它非常不靈活,並且有更好更快的響應選項。看看[** LearnLayout.com **](http://learnlayout.com/) –