I’m trying to give the page header div (<div class="page-header">) a full page width and the best solution seems to move it outside the main wrap (<div class="wrap container" role="document">) and put it in a new div (<div class="container-fluid">).
Your best bet is to create a custom base-page-full-width-header.php and place the call to <?php get_template_part('templates/page', 'header'); ?> before the div.wrap.container.
Thank you @cfx, I’ve removed <?php get_template_part('templates/page', 'header'); ?> from page.php and placed it just before the div.wrap.container in base.php. I haven’t created a new custom file.
because if the condition is false (if it is not a page) then you will be left with an empty header element in your html. or you could put the header element inside the page-header.php template.
generally speaking yes. you can have more than one header element. but using it has to be semantic. i.e. roots has a header element in the content-single.php template. i suggest you check this article on html5 doctor about the header element: http://html5doctor.com/the-header-element/