我在 angularjs 和 materializecss 的帮助下开发网站。我面临的问题是我在两张卡片之间的图片中看到了空白区域。
我试过这个 this解决方案,但随后卡片从上到下排序,我希望它们从左到右排序。有什么我可以用花车做的吗?我可以使用 masonry ,但我发现很难让它发挥作用。因为我需要在更改 ng-repeat 时更新它,而且当图像加载缓慢时,masonry 也无法满足我的要求。
也许有人可以为我指明正确的方向。
<div class="container">
<div ng-controller="featured">
<h1>Featured</h1>
<input type="search" ng-model="q" placeholder="search..."/>
<div class="row">
<div class="cards-container">
<div class="col s12 m6 l4" ng-repeat="x in data | filter:q as results" repeat-end="onEnd()">
<div class="card" post-id="{{x.id}}">
<a style="display:block" href="#post/{{x.id}}">
<div class="card-image">
<img ng-src="{{x.thumb}}">
<span class="card-title">{{x.title | limitTocustom:30}}</span>
</div>
</a>
<div class="card-content">
<p>{{x.description}}</p>
</div>
<div class="card-action grey-text lighten-2" ng-animate="'animate'" style="padding:15px 15px 15px 15px !important;">
<div>
<!-- <span><span><i class="material-icons" style="margin-right:5px;">account_circle</i>{{x.author}}</span><span style="float:right;"><i class="material-icons red-text text-lighten-2" style="margin-right:5px;">favorite</i>{{x.points}}</span></span> -->
<span><i class="fa fa-user"></i> {{x.author}}</span>
<span style="float:right;"><i class="fa fa-heart"></i> {{x.points}}</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
我找到的第一个解决方案 有了这个,我可以配置我想要 clearfix 的 div。因此,当用户使用较小的屏幕时,它将使用 .col:nth-child(2n+1) 来实现。
@media only screen and (min-width: 601px) and (max-width: 993px) {
.col:nth-child(2n+1) {
clear: both;
}
}
@media only screen and (min-width: 993px) and (max-width: 1400px) {
.col:nth-child(3n+4) {
clear: both;
}
}
@media only screen and (min-width: 1400px) {
.col:nth-child(3n+4) {
clear: both;
}
}
最佳答案
.card{
height:300px;
}
<div class="container">
<div ng-controller="featured">
<h1>Featured</h1>
<input type="search" ng-model="q" placeholder="search..."/>
<div class="row">
<div class="cards-container">
<div class="col s12 m6 l4" ng-repeat="x in data | filter:q as results" repeat-end="onEnd()">
<div class="card" post-id="{{x.id}}">
<a style="display:block" href="#post/{{x.id}}">
<div class="card-image">
<img ng-src="{{x.thumb}}">
<span class="card-title">{{x.title | limitTocustom:30}}</span>
</div>
</a>
<div class="card-content">
<p>{{x.description}}</p>
</div>
<div class="card-action grey-text lighten-2" ng-animate="'animate'" style="padding:15px 15px 15px 15px !important;">
<div>
<!-- <span><span><i class="material-icons" style="margin-right:5px;">account_circle</i>{{x.author}}</span><span style="float:right;"><i class="material-icons red-text text-lighten-2" style="margin-right:5px;">favorite</i>{{x.points}}</span></span> -->
<span><i class="fa fa-user"></i> {{x.author}}</span>
<span style="float:right;"><i class="fa fa-heart"></i> {{x.points}}</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
像这样为您的卡片提供固定高度。它会解决你的问题
关于html - Materialisecss卡分布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44198449/