EMA Context banner
{#
- "href" (string): url of the landing page (default: '#')
- "links" (array): array of links components
- "title" (string): section title (default: '')
- "description" (string): description text (default: '')
- "extra_classes" (string): extra CSS classes to be added
- "extra_attributes" (array): extra attributes classes (optional, format: [{ 'name': 'name_of_the_attribute', 'value': 'value_of_the_attribute'}])
#}
{# Internal properties #}
{% set _href = href|default('#') %}
{% set _title = title|default('') %}
{% set _description = description|default('') %}
{% set _css_class = 'ema-context-banner' %}
{% set _extra_attributes = '' %}
{# Internal logic - Process properties #}
{% if extra_class is defined %}
{% set _css_class = _css_class ~ ' ' ~ extra_classes %}
{% endif %}
{% if extra_attributes is defined %}
{% for attr in extra_attributes %}
{% set _extra_attributes = _extra_attributes ~ ' ' ~ attr.name ~ '="' ~ attr.value ~'"' %}
{% endfor %}
{% endif %}
{# Print the result #}
<div class="{{ _css_class }}" {{ _extra_attributes }}>
<div class="ecl-container">
<div class="ema-context-banner__wrapper">
{% if _title is defined and _title is not empty %}
<a href="{{_href}}" class="ema-context-banner__title">{{ _title }}</a>
{% endif %}
{% if _description is defined and _description is not empty %}
<p class="ecl-paragraph ecl-paragraph--ema ecl-paragraph--l">{{ _description }}</p>
{% endif %}
<ul class="ema-context-banner__links">
{% for _link in links %}
{% set _link_class_name = 'ema-context-banner__link' ~ (_link.is_active ? ' ema-context-banner__link--active' : '') %}
<li class="ema-context-banner__item">
<a href="{{ _link.href }}" class="{{ _link_class_name }}">{{ _link.label }}</a>
</li>
{% endfor %}
</ul>
</div>
</div>
</div>
{
"title": "Human regulatory",
"description": "This section of the website provides information on the regulation of medicines for human use in the European Union (EU). It particularly concerns the centralised procedure, where the European Medicines Agency (EMA) plays a key role.",
"links": [
{
"label": "Overview",
"href": "#item1-1"
},
{
"label": "Marketing authorisation",
"href": "#item1-4"
},
{
"label": "Research and development",
"href": "#item1-2",
"is_active": true
},
{
"label": "Post authorisation",
"href": "#item1-5"
},
{
"label": "Herbal products",
"href": "#item1-3"
}
]
}
<div class="ema-context-banner">
<div class="ecl-container">
<div class="ema-context-banner__wrapper">
<a href="#" class="ema-context-banner__title">Human regulatory</a>
<p class="ecl-paragraph ecl-paragraph--ema ecl-paragraph--l">This section of the website provides information on the regulation of medicines for human use in the European Union (EU). It particularly concerns the centralised procedure, where the European Medicines Agency (EMA) plays a key role.</p>
<ul class="ema-context-banner__links">
<li class="ema-context-banner__item">
<a href="#item1-1" class="ema-context-banner__link">Overview</a>
</li>
<li class="ema-context-banner__item">
<a href="#item1-4" class="ema-context-banner__link">Marketing authorisation</a>
</li>
<li class="ema-context-banner__item">
<a href="#item1-2" class="ema-context-banner__link ema-context-banner__link--active">Research and development</a>
</li>
<li class="ema-context-banner__item">
<a href="#item1-5" class="ema-context-banner__link">Post authorisation</a>
</li>
<li class="ema-context-banner__item">
<a href="#item1-3" class="ema-context-banner__link">Herbal products</a>
</li>
</ul>
</div>
</div>
</div>
-
Content:
/** * EMA Context banner component */ .ema-context-banner { background-color: map-get($ema-colors, 'light-grey-2'); margin: 0; } .ema-context-banner--standalone { background-color: map-get($ema-colors, 'light-grey-2'); } .ema-context-banner__wrapper { background-color: map-get($ema-colors, 'light-grey-2'); padding: map-get($ecl-spacing, 's'); } .ema-context-banner__title { color: #000; font-size: map-get($ecl-font-size, 'xxl'); font-weight: normal; line-height: 1.1; margin: 0 0 1.66rem; text-decoration: none; &:hover, &:focus { text-decoration: underline; } } .ema-context-banner__links { display: flex; flex-wrap: wrap; list-style: none; margin-bottom: 0; padding: 0; width: 100%; } .ema-context-banner__item { flex-basis: 100%; } .ema-context-banner__link { color: #000; display: block; padding: map-get($ecl-spacing, 's'); text-decoration: none; &:hover, &:focus { text-decoration: underline; } } .ema-context-banner__link--active { background-color: map-get($ema-colors, 'grey-3'); } @media (min-width: map-get($ecl-grid-breakpoints, 'md')) { .ema-context-banner__item { flex-basis: 50%; } } @media (min-width: map-get($ecl-grid-breakpoints, 'lg')) { .ema-context-banner__item { flex-basis: 33.33%; } }
- URL: /components/raw/ema-context-banners/ema-context-banners.scss
- Filesystem Path: framework/components/ema-context-banners/ema-context-banners.scss
- Size: 1.3 KB
- Handle: @ec-europa/ema-context-banners
- Tags: molecule
- Preview:
- Filesystem Path: framework/components/ema-context-banners/ema-context-banners.twig