Global Header block

Generic page header with top level navigation links

github location npm version

Variants

Nunjucks syntax

Depending on your environment you'll want to use render or include. As a rule of thumb: server-side use include, precompiled browser use render. If you're using vf-eleventy you should use include.

Using include

You'll need to pass a context object from your code or Yaml file (example), as well as the path to the Nunjucks template. Nunjucks' include is an abstraction of render and provides some additional portability.


{% set context fromYourYamlFile %}
- or -
{% set context = { 
"exampleMultiColumns" : "false",
"component-type" : "block",
"global_logo" : [object Object],
 }
%}
{% include "../path_to/vf-global-header/vf-global-header.njk" %}
                

Using render

This approach is best for bare-bones Nunjucks environments, such as precompiled templates with the Nunjucks slim runtime where include is not be available.


{% render '@vf-global-header', {
  "exampleMultiColumns" : "false",
  "component-type" : "block",
  "global_logo" : [object Object],}
%}
                
HTML
<header class="vf-global-header">


  <a href="/" class="vf-logo | vf-logo--has-text">
    <img class="vf-logo__image" src="../../assets/vf-logo/assets/logo.svg" alt="Visual Framework for Life Science websites" loading="eager">
    <span class="vf-logo__text">Visual Framework for Life Science websites</span>
  </a>

  <nav class="vf-navigation vf-navigation--global | vf-cluster">
    <ul class="vf-navigation__list | vf-list | vf-cluster__inner">
      <li class="vf-navigation__item">
        <a href="JavaScript:Void(0);" class="vf-navigation__link">Services</a>
      </li>
      <li class="vf-navigation__item">
        <a href="JavaScript:Void(0);" class="vf-navigation__link">Research</a>
      </li>
      <li class="vf-navigation__item">
        <a href="JavaScript:Void(0);" class="vf-navigation__link">Training</a>
      </li>
      <li class="vf-navigation__item">
        <a href="JavaScript:Void(0);" class="vf-navigation__link">About us</a>
      </li>
    </ul>
  </nav>

</header>
              

Examples

Installation info

This component is distributed with npm. After installing npm, you can install the vf-global-header with this command.

$ yarn add --dev @visual-framework/vf-global-header

Sass/CSS

The source files included are written in Sass(scss). You can point your Sass include-path at your node_modules directory and import it like this.

@import "@visual-framework/vf-global-header/index.scss";

Make sure you import Sass requirements along with the modules. You can use a project boilerplate or the vf-sass-starter

Changelog

Changelog

3.1.6

3.1.5

  • Version bump

3.1.4

  • Version bump

3.1.3

3.1.2

  • changes any set- style functions to cleaner version

3.1.0

  • Updates to expect vf-stack on the body.
  • Removes the backwards compatibility as we're at v3.x.
  • Tidies up and removes some unrequited CSS.

3.0.1

  • Removes padding.
  • Adds top margin for layout.

3.0.0

  • updates max-width of component
  • adds 'context' for the logo
  • removes text as you can make use of including text with the vf-logo

2.0.2

  • fixes layout issue so a logo will take the space it needs

2.0.1

  • add support for backwards compatibility with .vf-global-header 1.x's vf-global-header__inner
  • will be removed in vf-global-header 3.0

2.0.0

  • making a breaking change because of the HTML alterations

1.0.2

  • makes content wrap with flex-wrap
  • makes use of gap
  • adds spacing for browsers not supporting gap
  • move margin-left: auto to the vf-navigation--global component (v1.2.3 of vf-navigation)

1.0.1

  • removes left and right padding so we rely on the parent for horizontal spacing for better alignment

1.0.0

  • makes global header work on smaller screens
  • makes the layout wrap until 1024px

1.0.0-rc.2

  • Removes bottom underline

1.0.0-alpha.3

  • vf-global-header-dependencies (e98d8b6)

Assets



File system location: components/vf-global-header

Find an issue on this page? Propose a change or discuss it.

AI Assistant

Welcome! I'm here to help

Try asking me:

Disclaimer: This chatbot is designed to assist you with general information and basic inquiries. See our disclaimer notes.

Review AI generated content for accuracy. Leave feedback.

Close chat and delete conversation?

Are you sure you want to close the chat?
Your current conversation history will be permanently deleted.