0

早上好,我需要在 3 列布局上有一个“pinterest”样式的页面。每列将相互匹配相同的高度,但是当我们“显示/隐藏”内容时,我们只希望该列扩展,它确实(以某种方式),但列然后重新排序。我知道这就是列数应该如何工作,但是有没有强制列保持在原来的位置?

http://jsfiddle.net/2joLm7y9/

#columns {
-webkit-column-fill: balance;
-moz-column-fill: balance;
column-fill: balance;

我试图将列填充从自动更改为平衡,但这似乎不起作用。Click 1 效果很好,但我认为这是因为隐藏内容在播放后不久。

4

1 回答 1

0

 $( ".toggleDisplay" ).click(function() {
                $(this).children(".display_none").toggle("slow"); 
            });
body {
	background: url(http://subtlepatterns.com/patterns/scribble_light.png) ;
}

#wrapper {
	width: 90%;
	max-width: 1100px;
	min-width: 800px;
	margin: 50px auto;
}

#columns {
	-webkit-column-count: 3;
	-webkit-column-gap: 10px;
	-webkit-column-fill: auto;
	-moz-column-count: 3;
	-moz-column-gap: 10px;
	-moz-column-fill: auto;
	column-count: 3;
	column-gap: 15px;
	column-fill: auto;
}

.pin {
	display: inline-block;
	background: #FEFEFE;
	border: 2px solid #FAFAFA;
	box-shadow: 0 1px 2px rgba(34, 25, 25, 0.4);
	margin: 0 2px 15px;
	-webkit-column-break-inside: avoid;
	-moz-column-break-inside: avoid;
	column-break-inside: avoid;
	padding: 15px;
	padding-bottom: 5px;
	background: -webkit-linear-gradient(45deg, #FFF, #F9F9F9);
	opacity: 1;
	
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}

.pin img {
	width: 100%;
	border-bottom: 1px solid #ccc;
	padding-bottom: 15px;
	margin-bottom: 5px;
}

.pin p {
	font: 12px/18px Arial, sans-serif;
	color: #333;
	margin: 0;
}

@media (min-width: 960px) {
	#columns {
		-webkit-column-count: 4;
		-moz-column-count: 4;
		column-count: 4;
	}
}

@media (min-width: 1100px) {
	#columns {
		-webkit-column-count: 5;
		-moz-column-count: 5;
		column-count: 5;
	}
}


 .display_none {display:none;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="wrapper">
	<div id="columns">
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/2/2v3VhAp.png" />
			<p>
				Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
				Sed feugiat consectetur pellentesque. Nam ac elit risus, 
				ac blandit dui. Duis rutrum porta tortor ut convallis.
				Duis rutrum porta tortor ut convallis.
			</p>
            <div class="toggleDisplay">
                                <button>Click 1</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/1/1swi3Qy.png" />
			<p>
				Donec a fermentum nisi. 
			</p>
             <div class="toggleDisplay">
                                <button>Click 2</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/6/6f3nXse.png" />
			<p>
				Nullam eget lectus augue. Donec eu sem sit amet ligula 
				faucibus suscipit. Suspendisse rutrum turpis quis nunc 
				convallis quis aliquam mauris suscipit.
			</p>
             <div class="toggleDisplay">
                                <button>Click 3</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/8/8kEc1hS.png" />
			<p>
				Nullam eget lectus augue. Donec eu sem sit amet ligula 
				faucibus suscipit. Suspendisse rutrum turpis quis nunc 
				convallis quis aliquam mauris suscipit.
			</p>
             <div class="toggleDisplay">
                                <button>Click 4</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/1/1swi3Qy.png" />
			<p>
				Donec a fermentum nisi. Integer dolor est, commodo ut 
				sagittis vitae, egestas at augue. 
			</p>
             <div class="toggleDisplay">
                                <button>Click 5</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/6/6f3nXse.png" />
			<p>
				Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
				Sed feugiat consectetur pellentesque. Nam ac elit risus, 
				ac blandit dui. Duis rutrum porta tortor ut convallis.
				Duis rutrum porta tortor ut convallis.
			</p>
             <div class="toggleDisplay">
                                <button>Click 6</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>	
		
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/2/2v3VhAp.png" />
			<p>
				Nullam eget lectus augue. Donec eu sem sit amet ligula 
				faucibus suscipit. Suspendisse rutrum turpis quis nunc 
				convallis quis aliquam mauris suscipit.
				Duis rutrum porta tortor ut convallis.
			</p>
             <div class="toggleDisplay">
                                <button>Click 7</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/1/1swi3Qy.png" />
			<p>
				Nullam eget lectus augue. 
			</p>
             <div class="toggleDisplay">
                                <button>Click 8</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/8/8kEc1hS.png" />
			<p>
				Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
				Sed feugiat consectetur pellentesque. 
			</p>
             <div class="toggleDisplay">
                                <button>Click 9</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/2/2v3VhAp.png" />
			<p>
				Donec a fermentum nisi. Integer dolor est, commodo ut 
				sagittis vitae, egestas at augue. Suspendisse id nulla 
				ac urna vestibulum mattis. Duis rutrum porta tortor ut convallis.
			</p>
             <div class="toggleDisplay">
                                <button>Click 10</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/1/1swi3Qy.png" />
			<p>
				Donec a fermentum nisi. Integer dolor est, commodo ut 
				sagittis vitae, egestas at augue. Suspendisse id nulla 
				ac urna vestibulum mattis. 
			</p>
            
             <div class="toggleDisplay">
                                <button>Click 11</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/6/6f3nXse.png" />
			<p>
				Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
				Sed feugiat consectetur pellentesque. Nam ac elit risus, 
				ac blandit dui. Duis rutrum porta tortor ut convallis.
			</p>
             <div class="toggleDisplay">
                                <button>Click 12</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>	
		
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/2/2v3VhAp.png" />
			<p>
				Donec a fermentum nisi. Integer dolor est, commodo ut 
				sagittis vitae, egestas at augue. Suspendisse id nulla 
				ac urna vestibulum mattis. 
			</p>
             <div class="toggleDisplay">
                                <button>Click 13</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/1/1swi3Qy.png" />
			<p>
				Donec a fermentum nisi. Integer dolor est, commodo ut 
				sagittis vitae, egestas at augue. Suspendisse id nulla 
				ac urna vestibulum mattis. 
			</p>
             <div class="toggleDisplay">
                                <button>Click 14</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	
		<div class="pin">
			<img src="http://cssdeck.com/uploads/media/items/6/6f3nXse.png" />
			<p>
				Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
				Sed feugiat consectetur pellentesque. Nam ac elit risus, 
				ac blandit dui. Duis rutrum porta tortor ut convallis.
			</p>
             <div class="toggleDisplay">
                                <button>Click 15</button>
                                  <div class="display_none">
                                    <p>Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.  Donec a fermentum nisi. Integer dolor est, commodo ut sagittis vitae.</p>
                                  </div>
                            </div>
		</div>
	</div>
</div>

于 2015-08-20T08:41:32.143 回答