All websites and all pages must include the footer.
The footer should be used as is.
See the specific requirements for the City of Ghent website and for separate websites below.
The footer component is the last visible component on every page. The position of the footer is fixed on the page.
The footer is fully responsive and shows the same content and functionalitiy on all screen resolutions.
The footer component contains the following elements:
The Gentinfo contact information in itself contains the following fixed elements:
Specific requirements for the City of Ghent website and for separate websites are listed below.
The footer on the City of Ghent website should always be used as is. The elements, style, layout and content in the footer cannot be changed in anyway.
In the examples the footer component is shown as it should be included in different languages.
Other requirements:
<section class="footer">
<h2 class="visually-hidden">{{ 'Footer' }}</h2>
<div class="footer-top">
<div class="content-container">
{# Gentinfo #}
<div class="footer--column">
<div class="gentinfo-block">
<div class="gentinfo-block-content">
<h2 class="visually-hidden">Gentinfo</h2>
{% include '@image' with {
src: '/styleguide/img/svg/gentinfo-logo.svg' | path,
modifier: 'gentinfo-logo',
alt_text: 'Gentinfo',
ratio: null
} %}
{% include '@paragraph' with {
'text': gentinfo.description
} %}
{% include '@list' with {
'type': 'icon-list',
'icon_items': [
'<i class="icon-phone" aria-hidden="true"></i><a href="tel:' ~ gentinfo.phone.machine ~ '" alt="Gentinfo tel link">' ~ gentinfo.phone.label ~ '</a>',
'<i class="icon-envelope" aria-hidden="true"></i><a href="mailto:' ~ gentinfo.email ~ '" alt="Gentinfo mail link">' ~ gentinfo.email ~ '</a>',
'<i class="icon-document" aria-hidden="true"></i><a href="#">' ~ gentinfo.form ~ '</a>'
]
} %}
</div>
{% include '@button' with { 'text': gentinfo.chat, 'type': 'primary', 'modifier': 'gentinfo-chat-button button icon-chat-round' } %}
</div>
</div>
{# Disclaimer #}
<div class="footer--column">
<div class="dg-block-disclaimer">
{% include '@heading' with {
'type': 'h2',
'heading_text': disclaimer.title
} %}
{% include "@list" with
{
"type": 'unordered',
"items": [
'<a href="https://jobs.gent.be/">' ~ disclaimer.links[0] ~ '</a>',
'<a href="https://stad.gent/over-gent-en-het-stadsbestuur/over-gent/kaarten-cijfers-en-data/gent-kaart/stadsplan">' ~ disclaimer.links[1] ~ '</a>',
'<a href="https://persruimte.stad.gent/nl">' ~ disclaimer.links[2] ~ '</a>',
'<a href="https://stad.gent/over-gent-en-het-stadsbestuur/vragen-suggesties-en-meldingen/juridische-info">' ~ disclaimer.links[3] ~ '</a>',
'<a href="https://stad.gent/over-gent-en-het-stadsbestuur/vragen-suggesties-en-meldingen/met-respect-voor-uw-privacy">' ~ disclaimer.links[4] ~ '</a>',
]
}
%}
</div>
</div>
{# Post address #}
<div class="footer--column">
<div class="dg-block-post-address">
{% include '@heading' with {
'type': 'h2',
'heading_text': address.title
} %}
<address>
{{ address.name }}<br/>
{{ address.street }}<br/>
{{ address.city }}
</address>
</div>
</div>
</div>
</div>
<div class="footer-bottom content-container">
{# Partnership #}
<div class="footer--column">
<div class="db-block-partnership">
{% include '@paragraph' with {
'text': bottom.partnership
} %}
<i aria-hidden="true" class="icon-digipolis"></i>
</div>
</div>
{# Social media #}
<div class="footer--column">
<div class="dg-blocks-social">
<span>{{ bottom.social }}</span>
<div class="social-list">
{% include "@list" with
{
"type": "unordered",
"items": [
'<a href="https://www.facebook.com/stadsbestuurgent"><i aria-hidden="true" class="icon-facebook"></i><span class="visually-hidden">Facebook</span></a>',
'<a href="https://www.twitter.com/stadgent"><i aria-hidden="true" class="icon-twitter"></i><span class="visually-hidden">Twitter</span></a>',
'<a href="https://www.linkedin.com/company/stad-gent"><i aria-hidden="true" class="icon-linkedin"></i><span class="visually-hidden">LinkedIn</span></a>',
'<a href="https://www.youtube.com/channel/UCmJLf8SFG0D0GTd6LSSTQLw"><i aria-hidden="true" class="icon-youtube"></i><span class="visually-hidden">Youtube</span></a>',
'<a href="https://www.instagram.com/stadgent/"><i aria-hidden="true" class="icon-instagram"></i><span class="visually-hidden">Instagram</span></a>'
]
}
%}
</div>
</div>
</div>
</div>
</section>
<section class="footer">
<h2 class="visually-hidden">Footer</h2>
<div class="footer-top">
<div class="content-container">
<div class="footer--column">
<div class="gentinfo-block">
<div class="gentinfo-block-content">
<h2 class="visually-hidden">Gentinfo</h2>
<figure class="gentinfo-logo"><img src="../../styleguide/img/svg/gentinfo-logo.svg" alt="Gentinfo" class="gentinfo-logo" /></figure>
<p class="">We can be reached from Monday to Saturday, from 8.00 am to 7.00 pm.</p>
<ul class="icon-list ">
<li><i class="icon-phone" aria-hidden="true"></i><a href="tel:+32 9 210 10 10" alt="Gentinfo tel link">09 210 10 10</a></li>
<li><i class="icon-envelope" aria-hidden="true"></i><a href="mailto:gentinfo@stad.gent" alt="Gentinfo mail link">gentinfo@stad.gent</a></li>
<li><i class="icon-document" aria-hidden="true"></i><a href="#">Contact form</a></li>
</ul>
</div>
<button type="button" class="button button-primary gentinfo-chat-button button icon-chat-round ">
Chat with Gentinfo
</button>
</div>
</div>
<div class="footer--column">
<div class="dg-block-disclaimer">
<h2>Useful links</h2>
<ul class="">
<li><a href="https://jobs.gent.be/">Vacancies</a></li>
<li><a href="https://stad.gent/over-gent-en-het-stadsbestuur/over-gent/kaarten-cijfers-en-data/gent-kaart/stadsplan">City plan</a></li>
<li><a href="https://persruimte.stad.gent/nl">City of Ghent newsroom</a></li>
<li><a href="https://stad.gent/over-gent-en-het-stadsbestuur/vragen-suggesties-en-meldingen/juridische-info">Legal information</a></li>
<li><a href="https://stad.gent/over-gent-en-het-stadsbestuur/vragen-suggesties-en-meldingen/met-respect-voor-uw-privacy">Privacy</a></li>
</ul>
</div>
</div>
<div class="footer--column">
<div class="dg-block-post-address">
<h2>Postal address</h2>
<address>
City of Ghent<br />
Botermarkt 1<br />
9000 Ghent
</address>
</div>
</div>
</div>
</div>
<div class="footer-bottom content-container">
<div class="footer--column">
<div class="db-block-partnership">
<p class="">In cooperation with Digipolis</p>
<i aria-hidden="true" class="icon-digipolis"></i>
</div>
</div>
<div class="footer--column">
<div class="dg-blocks-social">
<span>Follow the City of Ghent on social media</span>
<div class="social-list">
<ul class="">
<li><a href="https://www.facebook.com/stadsbestuurgent"><i aria-hidden="true" class="icon-facebook"></i><span class="visually-hidden">Facebook</span></a></li>
<li><a href="https://www.twitter.com/stadgent"><i aria-hidden="true" class="icon-twitter"></i><span class="visually-hidden">Twitter</span></a></li>
<li><a href="https://www.linkedin.com/company/stad-gent"><i aria-hidden="true" class="icon-linkedin"></i><span class="visually-hidden">LinkedIn</span></a></li>
<li><a href="https://www.youtube.com/channel/UCmJLf8SFG0D0GTd6LSSTQLw"><i aria-hidden="true" class="icon-youtube"></i><span class="visually-hidden">Youtube</span></a></li>
<li><a href="https://www.instagram.com/stadgent/"><i aria-hidden="true" class="icon-instagram"></i><span class="visually-hidden">Instagram</span></a></li>
</ul>
</div>
</div>
</div>
</div>
</section>
{
"gentinfo": {
"title": "gentinfo",
"description": "We can be reached from Monday to Saturday, from 8.00 am to 7.00 pm.",
"phone": {
"label": "09 210 10 10",
"machine": "+32 9 210 10 10"
},
"email": "gentinfo@stad.gent",
"form": "Contact form",
"chat": "Chat with Gentinfo"
},
"disclaimer": {
"title": "Useful links",
"links": [
"Vacancies",
"City plan",
"City of Ghent newsroom",
"Legal information",
"Privacy"
]
},
"address": {
"title": "Postal address",
"name": "City of Ghent",
"street": "Botermarkt 1",
"city": "9000 Ghent"
},
"bottom": {
"partnership": "In cooperation with Digipolis",
"social": "Follow the City of Ghent on social media"
}
}
// General footer styling.
.footer {
margin-top: 4rem;
.footer-top {
@include theme('background-color', 'color-primary--lighten-5', 'footer-background-color');
width: calc(100% + 2 * #{$gutter-width});
margin-right: -$gutter-width;
margin-left: -$gutter-width;
> .content-container {
display: flex;
flex-wrap: wrap;
max-width: calc(#{$bp-max-content} + 54px);
margin-bottom: 1rem;
padding: 0 $gutter-width 1.5rem;
@include desktop {
padding-top: 4rem;
padding-bottom: 4rem;
}
@media (min-width: $bp-max-content + 54px) {
max-width: $bp-max-content;
padding: 4rem 0;
}
}
.footer--column {
width: 100%;
@include phablet {
flex: 1 0 auto;
width: span(6 of 12);
}
@include desktop {
width: span(2 of 12);
}
&:nth-of-type(3) {
display: flex;
@include desktop {
justify-content: center;
width: span(2 of 12);
}
}
&:first-of-type {
width: 100%;
@include phablet {
width: span(12 of 12);
margin-top: 1.2rem;
margin-bottom: .4rem;
}
@include desktop {
order: 1;
width: span(7 of 12);
margin-top: 0;
}
}
}
}
.footer-bottom {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: .8rem;
overflow: hidden;
@include desktop {
flex-wrap: nowrap;
}
.footer--column {
width: 100%;
line-height: 1rem;
// Left column.
&:first-child {
order: 2;
@include desktop {
order: 1;
width: span(4 of 12);
}
}
// Right column.
&:last-child {
order: 1;
margin-bottom: 1.8rem;
@include phablet {
margin-bottom: 0;
}
@include desktop {
width: span(8 of 12);
}
}
}
}
.dg-block-post-address,
.dg-block-disclaimer {
margin-top: 2.2rem;
margin-left: 1.2rem;
@include desktop {
margin-left: 0;
}
}
.dg-blocks-social,
.db-block-partnership {
height: 2rem;
@include phablet {
margin-bottom: .4rem;
}
}
.db-block-partnership {
justify-content: center;
width: 100%;
@include desktop {
justify-content: flex-start;
}
}
///
/// Links in the footer should never have icons.
///
[class*="cs--"] & a {
&::after {
content: none;
}
}
}