简体   繁体   English

引导卡垂直对齐

[英]Bootstrap cards aligned vertically

I want to align a few bootstrap cards vertically. 我想垂直对齐一些引导卡。 I need this to be responsive. 我需要这个来回应。 I was trying to set the width of a parent div smaller, but that didn't do the trick for me. 我试图将父div的宽度设置为较小,但这对我没有帮助。 What I have: 我有的:

 <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" /> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script> <div class="news newspage"> <h4 class="heading">Nieuws</h4> <div class="card"> <div class="card-body"> <h4 class="card-title">Foo Bar</h4> <div class="card-subtitle"> <span class="eventdate"> <i class="fa fa-calendar-alt"></i> Geplaatst op d MMMM yyyy </span> </div> <div class="card-text"> <p> Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. </p> </div> <a href="#" class="card-link"> > Lees het hele bericht</a> </div> </div> <div class="card"> <div class="card-body"> <h4 class="card-title">Foo Bar</h4> <div class="card-subtitle"> <span class="eventdate"> <i class="fa fa-calendar-alt"></i> Geplaatst op d MMMM yyyy </span> </div> <div class="card-text"> <p> Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. </p> </div> <a href="#" class="card-link"> > Lees het hele bericht</a> </div> </div> </div> 

All help is appreciated! 感谢所有帮助!

You can put them in rows and columns and the rows will stack vertically. 您可以将它们放在行和列中,并且行将垂直堆叠。 IF you want a specific width, you can use one of the col-* classes 如果您想要特定的宽度,则可以使用col- *类之一

<div class="news newspage">
    <h4 class="heading">Nieuws</h4>
    @foreach (var _news in Model.News)
    {
        <div class="row">
            <div class="col">
                <div class="card">
                    <div class="card-body">
                        <h4 class="card-title">@_news.NewsTitle</h4>
                        <div class="card-subtitle">
                            <span class="eventdate">
                                <i class="fa fa-calendar-alt"></i> Geplaatst op @_news.PostedOn.ToString("d MMMM yyyy")
                            </span>
                        </div>
                        <div class="card-text">
                            <p>
                                @_news.NewsArticle
                            </p>
                        </div>
                        <a href="#" class="card-link"> > Lees het hele bericht</a>
                    </div>
                </div>
            </div>
        </div>
    }
</div>

You could use display:grid; 您可以使用display:grid; to achieve that. 实现这一目标。 At the moment I specified it to have two columns (two cards side-by-side) but you can add and remove the 1fr s of grid-template-columns to change the amount of columns. 目前,我指定它具有两列(并排放置两张卡),但是您可以添加和删除1fr s的grid-template-columns来更改grid-template-columns的数量。

You could also apply the CSS to .news but you'd have to move the <h4> -heading out of it. 您也可以将CSS应用于.news但必须将<h4>标题移出它。

 #news-grid { display: grid; grid-column-gap: 20px; grid-template-columns: 1fr 1fr; } 
 <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" /> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script> <div class="news newspage"> <h4 class="heading">Nieuws</h4> <div id="news-grid"> <div class="card"> <div class="card-body"> <h4 class="card-title">Foo Bar</h4> <div class="card-subtitle"> <p class="eventdate"> <i class="fa fa-calendar-alt">Geplaatst op d MMMM yyyy</i> </p> </div> <div class="card-text"> <p> Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. </p> </div> <a href="#" class="card-link"> > Lees het hele bericht</a> </div> </div> <div class="card"> <div class="card-body"> <h4 class="card-title">Foo Bar</h4> <div class="card-subtitle"> <p class="eventdate"> <i class="fa fa-calendar-alt">Geplaatst op d MMMM yyyy</i> </p> </div> <div class="card-text"> <p> Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. </p> </div> <a href="#" class="card-link"> > Lees het hele bericht</a> </div> </div> </div> </div> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM