View difference between Paste ID: W2KjyqiT and LjN6u8MG
SHOW: | | - or go back to the newest paste.
1
/**
2
 * Large site headers act more like mastheads. They have a faux-fluid-height
3
 * which is controlled by the wrapping element inside it.
4
 *
5
 * 1. Mastheads will typically have dark backgrounds, so we need to make sure
6
 *    the contrast is okay. This value is subject to change as the background
7
 *    image changes.
8
 * 2. We need to delegate a lot of the masthead’s layout to its wrapper element
9
 *    rather than the masthead itself: it is to this wrapper that most things
10
 *    are positioned.
11
 * 3. The wrapper needs positioning context for us to lay our nav and masthead
12
 *    text in.
13
 * 4. Faux-fluid-height technique: simply create the illusion of fluid height by
14
 *    creating space via a percentage padding, and then position everything over
15
 *    the top of that. This percentage gives us a 16:9 ratio.
16
 * 5. When the viewport is at 758px wide, our 16:9 ratio means that the masthead
17
 *    is currently rendered at 480px high. Let’s…
18
 * 6. …seamlessly snip off the fluid feature at this height, and…
19
 * 7. …fix the height at 480px. This means that we should see no jumps in height
20
 *    as the masthead moves from fluid to fixed. This actual value takes into
21
 *    account the padding and the top border on the header itself.
22
 */
23
24
.page-head--masthead {
25
    margin-bottom: 0;
26
    background: url(/img/css/masthead.jpg) center center #2e2620;
27
    @include vendor(background-size, cover);
28
    color: $color-masthead; /* [1] */
29
    border-top-color: $color-masthead;
30
    border-bottom-width: 0;
31
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1) inset;
32
33
    @include media-query(lap-and-up) {
34
        background-image: url(/img/css/masthead-medium.jpg);
35
    }
36
37
    @include media-query(desk) {
38
        background-image: url(/img/css/masthead-large.jpg);
39
    }
40
41
    > .wrapper { /* [2] */
42
        position: relative; /* [3] */
43
        padding-top: 56.25%; /* [4] */
44
45
        @media screen and (min-width: 758px) { /* [5] */
46
            padding-top: 0; /* [6] */
47
            height: $header-max-height - double($spacing-unit) - $header-border-width; /* [7] */
48
        }
49
50
    }
51
52
}