# Header
Header styles may vary from page to page. Those can be defined via data-
attributes right in HTML markup as described below. All the <header>
attributes are being updated after each AJAX transition.
There are 2 desktop variations of the menu. You can choose between fullscreen or classic versions. On mobiles there is always a fullscreen version of menu for the sake of saving space.
# Markup: Fullscreen Menu
<!-- PAGE HEADER -->
<header
class="header header_menu-right js-header-sticky header_fixed container-fluid"
id="page-header"
data-arts-theme-text="light"
data-arts-header-sticky-theme="bg-dark-2"
data-arts-header-logo="secondary"
data-arts-header-sticky-logo="secondary"
data-arts-header-overlay-theme="dark"
data-arts-header-overlay-background="#000"
>
<!-- top bar -->
<div class="header__container header__controls">
<div class="row justify-content-between align-items-center">
<!-- logo -->
<div class="col-auto header__col header__col-left">
...
</div>
<!-- - logo -->
<!-- burger icon -->
<div class="col-auto header__col">
...
</div>
<!-- - burger icon -->
<!-- "back" button for submenu nav -->
<div class="header__overlay-menu-back" id="js-submenu-back">
...
</div>
<!-- - "back" button for submenu nav -->
</div>
</div>
<!-- - top bar -->
<!-- fullscreen overlay container -->
<div class="header__wrapper-overlay-menu container-fluid container-fluid_paddings">
<!-- fullscreen menu -->
<div class="header__wrapper-menu">
...
</div>
<!-- - fullscreen menu -->
<!-- fullscreen widgets -->
<div class="header__wrapper-overlay-widgets">
...
</div>
<!-- - fullscreen widgets -->
</div>
<!-- - fullscreen overlay container -->
</header>
<!-- - PAGE HEADER -->
# Markup: Classic Menu
Note that there are 2 menus with the same items. The desktop menu is shown only on desktop screens using the combo of d-none d-lg-block
classes. The column with burger button is hidden on desktop screens using d-lg-none
class.
<!-- PAGE HEADER -->
<header
class="header header_menu-right js-header-sticky header_fixed container-fluid"
id="page-header"
data-arts-theme-text="light"
data-arts-header-sticky-theme="bg-dark-2"
data-arts-header-logo="secondary"
data-arts-header-sticky-logo="secondary"
data-arts-header-overlay-theme="dark"
data-arts-header-overlay-background="#000"
>
<!-- top bar -->
<div class="header__container header__controls">
<div class="row justify-content-between align-items-center">
<!-- logo -->
<div class="col-auto header__col header__col-left">
...
</div>
<!-- - logo -->
<!-- desktop menu-->
<div class="col-auto header__col d-none d-lg-block">
...
</div>
<!-- - desktop menu -->
<!-- burger icon -->
<div class="col-auto header__col d-lg-none">
...
</div>
<!-- - burger icon -->
<!-- "back" button for submenu nav -->
<div class="header__overlay-menu-back" id="js-submenu-back">
...
</div>
<!-- - "back" button for submenu nav -->
</div>
</div>
<!-- - top bar -->
<!-- fullscreen overlay container -->
<div class="header__wrapper-overlay-menu container-fluid container-fluid_paddings">
<!-- fullscreen menu -->
<div class="header__wrapper-menu">
...
</div>
<!-- - fullscreen menu -->
<!-- fullscreen widgets -->
<div class="header__wrapper-overlay-widgets">
...
</div>
<!-- - fullscreen widgets -->
</div>
<!-- - fullscreen overlay container -->
</header>
<!-- - PAGE HEADER -->
# <header> Attributes
js-header-sticky
class – defines if the header should follow the page scrolling.data-arts-theme-text=
[dark | light] – default (non-sticky) color themedata-arts-header-sticky-theme=
[bg-white | bg-light-1 | bg-light-2 | bg-light-3 | bg-light-4 | bg-dark-1 | bg-dark-2 | bg-dark-3 | bg-dark-4] – background color class that will be appended to the sticky header.data-arts-header-logo=
[primary | secondary] – logo version to show in the default (non-sticky) headerdata-arts-header-sticky-logo=
[primary | secondary] – logo version to show in the sticky headerdata-arts-header-overlay-theme=
[dark | light] – color theme for the opened fullscreen overlaydata-arts-header-overlay-background=
[#000 | #fff | var(--color-dark-1)] – background color of the curtain when opening a fullscreen overlay. The field accepts color HEX value or pre-defined color CSS variable.