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="">Bereikbaar van maandag tot en met zaterdag van 8 tot 19 uur.</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="#">Contactformulier</a></li>
</ul>
</div>
<button type="button" class="button button-primary gentinfo-chat-button button icon-chat-round ">
Chat met Gentinfo
</button>
</div>
</div>
<div class="footer--column">
<div class="dg-block-disclaimer">
<h2>Nuttige links</h2>
<ul class="">
<li><a href="https://jobs.gent.be/">Vacatures</a></li>
<li><a href="https://stad.gent/over-gent-en-het-stadsbestuur/over-gent/kaarten-cijfers-en-data/gent-kaart/stadsplan">Stadsplan</a></li>
<li><a href="https://persruimte.stad.gent/nl">Persruimte Stad Gent</a></li>
<li><a href="https://stad.gent/over-gent-en-het-stadsbestuur/vragen-suggesties-en-meldingen/juridische-info">Juridische info</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>Postadres</h2>
<address>
Stad Gent<br />
Botermarkt 1<br />
9000 Gent
</address>
</div>
</div>
</div>
</div>
<div class="footer-bottom content-container">
<div class="footer--column">
<div class="db-block-partnership">
<p class="">In samenwerking met Digipolis</p>
<i aria-hidden="true" class="icon-digipolis"></i>
</div>
</div>
<div class="footer--column">
<div class="dg-blocks-social">
<span>Volg de Stad Gent op sociale 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": "Bereikbaar van maandag tot en met zaterdag van 8 tot 19 uur.",
"phone": {
"label": "09 210 10 10",
"machine": "+32 9 210 10 10"
},
"email": "gentinfo@stad.gent",
"form": "Contactformulier",
"chat": "Chat met Gentinfo"
},
"disclaimer": {
"title": "Nuttige links",
"links": [
"Vacatures",
"Stadsplan",
"Persruimte Stad Gent",
"Juridische info",
"Privacy"
]
},
"address": {
"title": "Postadres",
"name": "Stad Gent",
"street": "Botermarkt 1",
"city": "9000 Gent"
},
"bottom": {
"partnership": "In samenwerking met Digipolis",
"social": "Volg de Stad Gent op sociale 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;
}
}
}