css和js實現(xiàn)瀑布流效果示例
發(fā)布時間:2014-05-05 16:19:50 作者:佚名
我要評論
這篇文章主要介紹了css和js實現(xiàn)瀑布流效果示例,需要的朋友可以參考下
瀑布流效果
html代碼
復制代碼
代碼如下:<div class="wrap">
<div class="bigbox" id="bigbox">
<!--每一小塊開始-->
<div class="listbox">
<div class="listbox-con">
<h2>圖片介紹和描述</h2>
<p>此為介紹和描述</p>
</div>
</div>
<div class="listbox">
<div class="listbox-con">
<h2>圖片介紹和描2述</h2>
<p>此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述2</p>
</div>
</div>
<div class="listbox">
<div class="listbox-con">
<h2>圖片介紹和描3述</h2>
<p>此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述3</p>
</div>
</div>
<div class="listbox">
<div class="listbox-con">
<h2>圖片介紹和描4述</h2>
<p>此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述4</p>
</div>
</div>
<div class="listbox">
<div class="listbox-con">
<h2>圖片介紹和描5述</h2>
<p>此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述5</p>
</div>
</div>
<div class="listbox">
<div class="listbox-con">
<h2>圖片介紹和描述</h2>
<p>此為介紹和描述</p>
</div>
</div>
<div class="listbox">
<div class="listbox-con">
<h2>圖片介紹和描2述</h2>
<p>此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述2</p>
</div>
</div>
<div class="listbox">
<div class="listbox-con">
<h2>圖片介紹和描3述</h2>
<p>此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述3</p>
</div>
</div>
<div class="listbox">
<div class="listbox-con">
<h2>圖片介紹和描4述</h2>
<p>此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述4</p>
</div>
</div>
<div class="listbox">
<div class="listbox-con">
<h2>圖片介紹和描5述</h2>
<p>此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述此為介紹和描述5</p>
</div>
</div>
</div>
</div>
css樣式代碼
復制代碼
代碼如下:*{ margin:0px; padding:0px;}
.wrap{ padding:15px;}
.bigbox{ width:100%; position:relative;}
.listbox{ width:23%; padding:1%; position:absolute; box-shadow:0 0 1px #CCC;}
.listbox-con{ background:#fefefe;}
.listbox-con h2{ font-size:16px; color:#333;}
.listbox-con p{ font-size:14px; color:#666;}
插件代碼
復制代碼
代碼如下:(function($){
var defaults ={
wflist:'.listbox'
};
$.fn.waterfal = function(opt){
opt =$.extend({},defaults,opt);
// 變量
var obj = $(this);//當前對象
var wfwidth = $(opt.wflist).outerWidth(true),
minHeight = 0,
maxcol=Math.floor($(window).width()/wfwidth);
(function(wflist,maxcol,wfwidth,minHeight){
var wfarr = new Array(),minHeight = 0,minCol=0;
for(i=0;i<wflist.length;i++){
colHeight=wflist.eq(i).outerHeight(true);
if(i<maxcol){
wfarr[i] = colHeight;
wflist.eq(i).css({'top':0,left:i*wfwidth});
}else{
minHeight=Math.min.apply(null,wfarr);//
minCol = getArrayKey(wfarr, minHeight);
wfarr[minCol] += colHeight; //加上新高度后更新高度值
wflist.eq(i).css({"top":minHeight,left:minCol * wfwidth}); //先得到高度最小的Li,然后把接下來的li放到它的下面
}
wflist.eq(i).attr('id',"post_"+i);
};
})( $(opt.wflist),maxcol,wfwidth,minHeight);
function getArrayKey(wfa,minh){//使用for in運算返回數(shù)組中某一值的對應項數(shù)(比如算出最小的高度值是數(shù)組里面的第幾個)
for( ind in wfa ) {
if( wfa[ind] == minh) {
return ind;
}
}
};
var wfAreaH = parseInt( $(opt.wflist).last().css("top")) + $(opt.wflist).last().outerHeight(true)+ "px"; //顯示區(qū)域的高度為 最后一個元素的Top值+自身高度
obj.css({ "width":wfwidth * maxcol,"height":wfAreaH }); //設置顯示區(qū)域寬度和高度
}
})(jQuery);
相關文章
css3 column實現(xiàn)卡片瀑布流布局的示例代碼
這篇文章主要介紹了css3 column實現(xiàn)卡片瀑布流布局的示例代碼的相關資料,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-06-22- 這篇文章主要介紹了用CSS3實現(xiàn)瀑布流布局的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-10

CSS3實現(xiàn)瀑布流布局與無限加載圖片相冊的實例代碼
本篇文章主要介紹了CSS3實現(xiàn)瀑布流布局與無限加載圖片相冊的實例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-12-22- 這篇文章主要為大家詳細介紹了CSS3使用多列制作瀑布流的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-05-10
基于CSS3的CSS 多欄(Multi-column)實現(xiàn)瀑布流源碼分享
瀑布流,又稱瀑布流式布局。是比較流行的一種網(wǎng)站頁面布局,視覺表現(xiàn)為參差不齊的多欄布局,隨著頁面滾動條向下滾動,這種布局還會不斷加載數(shù)據(jù)塊并附加至當前尾部。我們只2014-06-11- css實現(xiàn)瀑布流空白處背景粉色背景塊,需要的朋友可以參考一下2013-02-22

詳解純css實現(xiàn)瀑布流(multi-column多列及flex布局)
這篇文章主要介紹了詳解純css實現(xiàn)瀑布流(multi-column多列及flex布局)的相關資料,用multi-column多列布局及flex布局實現(xiàn)瀑布流,感興趣的小伙伴們可以參考一下2018-09-04



