<div class="multi-column-content">
<div class="multi-column-content__column">
<div class="text-content">
<h3>3-Column Heading Lorem</h3>
<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. </p>
</div>
</div>
<div class="multi-column-content__column">
<div class="text-content">
<h3>3-Column Heading Lorem</h3>
<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. </p>
</div>
</div>
<div class="multi-column-content__column">
<div class="text-content">
<h3>3-Column Heading Lorem</h3>
<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. </p>
</div>
</div>
</div>
<div class="multi-column-content{% if columns|length < 3 %} multi-column-content-two-col{% endif %}">
{% for column in columns %}
<div class="multi-column-content__column">
<div class="text-content">
{{ column | raw }}
</div>
</div>
{% endfor %}
</div>
{
"columns": [
"<h3>3-Column Heading Lorem</h3><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. </p>",
"<h3>3-Column Heading Lorem</h3><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. </p>",
"<h3>3-Column Heading Lorem</h3><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. </p>"
]
}
.multi-column-content {
@include media-breakpoint-up(md) {
display: flex;
margin-right: rem(-40);
}
&.multi-column-content-two-col {
@include media-breakpoint-up(md) {
margin-right: rem(-100);
}
}
&.multi-column-content--alternative {
text-align: center;
margin-top: rem(60);
margin-bottom: rem(40);
@include media-breakpoint-up(md) {
display: flex;
margin-right: rem(-74);
}
}
}
.multi-column-content__column {
margin: 0 0 rem(40) 0;
@include media-breakpoint-up(md) {
flex: 1 1 0px;
padding-right: rem(40);
margin-bottom: 0;
}
.multi-column-content-two-col & {
@include media-breakpoint-up(md) {
padding-right: rem(100);
}
}
.multi-column-content--alternative & {
@include media-breakpoint-up(md) {
padding-right: rem(74);
position: relative;
}
&:after {
@include media-breakpoint-up(md) {
content: "";
position: absolute;
top: 0;
bottom: 0;
width: rem(2);
border-right: rem(2) solid $off-white;
right: rem(37);
}
}
&:last-child {
margin-bottom: 0;
&:after {
display: none;
}
}
}
.link-tertiary {
font-size: rem(18);
line-height: (25 / 18);
padding: 0 rem(13);
@include media-breakpoint-up(md) {
padding: 0;
}
.arrow {
bottom: rem(12);
}
}
.text-content {
margin-bottom: 0;
}
}
This is a custom component (no class prefix in place as it does not conflict with bootstrap)
default
is unstructured in terms of the content input and multi-column-content--alternative
is more structured and has fields for an icon/image (optional), title, description and tertiary link..multi-column-text-two-col
automatically added if 2 column to allow for custom gap spacing between columnsdefault
columns are set up to allow for raw html, so any markup (including images) could potentially be placed insideindex.scss
file as @import "../components/multi-column-text/multi-column-text";
<div class="paragraph-widget paragraph-widget--multicolumn-text">
.