Projet

Général

Profil

0004-header-refactorisation.patch

Thomas Jund, 04 août 2022 18:14

Télécharger (6,07 ko)

Voir les différences:

Subject: [PATCH 4/6] header refactorisation

 static/publik-famille-demo/_header.scss       | 145 +++++++++---------
 static/publik-famille-demo/_vars.scss         |   8 +-
 .../combo/page_template_homepage.html         |   3 +-
 3 files changed, 81 insertions(+), 75 deletions(-)
static/publik-famille-demo/_header.scss
1
div#header-wrapper {
2
	display: flex;
3
	@media($max-mobile-viewport) {
4
		height: 80px;
5
	}
6
}
7

  
8
body.has-header-background #header{
9
	background-size: contain;
10
	background-position-x: 30%;
11
}
1
$desktop-gray-header-height: 90px;
2
$mobile-top-links-height: 2rem;
12 3

  
13 4
body.has-header-background #header {
14
	display: flex;
15
	padding: 10px 0;
5
	background-position-x: 30%;
6
	background-size: contain;
16 7
	@media($max-mobile-viewport) {
17 8
		background-image: none;
18 9
	}
......
20 11

  
21 12
div#top {
22 13
	display: flex;
23
	flex-grow: 1;
24
	align-items: start;
14
	flex-wrap: wrap;
15
	align-items: center;
16
	@media ($min-desktop-viewport) {
17
		padding-right: $nav-menu-side * 1.5;
18
	}
19
	@media ($min-desktop-viewport) {
20
		height: $desktop-gray-header-height;
21
	}
25 22
}
26 23

  
27 24
h1#logo.has-logo {
25
	padding: 10px 0;
28 26
	flex-grow: 1;
29
	padding: 0;
30

  
31
	a {
32
		height: 60px;
33
	}
34
	
35
	@media($max-mobile-viewport) {
36
		display: none;
37
	}
38 27
}
39 28

  
40 29
#toplinks {
41
	border-bottom-right-radius: $border-radius;
42
	background: white;
43
	margin-right: 8rem;
44
	margin-top: 18px;
30
	position: static;
31
	display: flex;
32
	align-items: center;
33
	word-spacing: 1em;
45 34

  
46
	@media($min-desktop-viewport) {
47
		position: static;
48
		margin-top: 8px;
35
	@media ($max-mobile-viewport) {
36
		order: -1;
37
		min-height: 2em;
38
		flex: 1 0 100%;
39
		max-width: none;
40
		margin: 0 -0.7rem;
41
		padding: 0 0.7rem;
49 42
	}
50 43

  
51
	.sep {
52
		display: none;
44
	@media($min-desktop-viewport) {
45
		height: $nav-menu-side;
46
		padding: 0.5em 1.5em;
47
		border-radius: $nav-menu-side / 2;
53 48
	}
54 49

  
55 50
	a {
56
		margin: 0 0.5em;
57 51
		color: $orange-dark;
58

  
59 52
		&:first-child {
60 53
			font-weight: bold;
61 54
		}
......
69 62
}
70 63

  
71 64
.gru-nav-wrapper {
72
	width: 100%
65
	@extend .page-width;
66
	position: relative;
67
	@media ($max-mobile-viewport) {
68
		max-width: none;
69
	}
70
}
71
#nav {
72
	margin: 0;
73
	position: absolute;
74
	width: $nav-menu-side;
75
	height: $desktop-gray-header-height;
76
	top: 0;
77
	right: 0.7rem;
78
	display: flex;
79
	align-items: center;
80
	justify-content: center;
81
	transition: top 400ms;
82
	@media ($max-mobile-viewport) {
83
		body:not(.scrolled) & {
84
			top: $mobile-top-links-height;
85
		}
86
	}
73 87
}
74

  
75 88
div.gru-nav {
76
	position: relative;
77

  
78 89
	.gru-nav-button {
79
		position: absolute;
80
		top: 15px;
81
		right: 20px;
82
		left: auto;
83
		border-radius: 100%;
84

  
85
		.icon-bar {
86
			left: 25%;
87
			width: 50%;
88
		}
90
		position: relative;
91
		display: block;
92
		line-height: 0;
93
		top: 0;
94
		left: 0;
95
		border-radius: 50%;
89 96

  
90 97
		+ ul {
91 98
			&::before {
......
166 173
}
167 174

  
168 175
body.page-template-homepage {
169
	div#header-wrapper {
176
	.site-header {
170 177
		background: transparent;
171 178
	}
172 179

  
173 180
	#header {
174
		background: var(--page-picture);
175
		background-repeat: no-repeat;
176
		background-position-y: 50px;
177
		background-size: 100%;
178

  
181
		@media ($min-desktop-viewport) {
182
			background: var(--page-picture);
183
			background-repeat: no-repeat;
184
			background-position-y: 50px;
185
			background-size: 100%;
186
		}
179 187
		@media($min-desktop-viewport) {
180 188
			height: 550px;
181 189
			margin-bottom: -180px;
182 190
		}
191
	}
183 192

  
184
		@media($max-mobile-viewport) {
185
			background: none;
186
			flex-direction: column;
193
	#top {
194
		align-items: flex-end;
195
		@media ($min-desktop-viewport) {
196
			height: auto;
197
			flex-wrap: nowrap;
187 198
		}
188 199
	}
189

  
190 200
	h1#logo.has-logo {
191
		display: block;
192 201
		@media($max-mobile-viewport) {
193 202
			text-align: center;
194
			margin-top: 50px;
195 203
		}
196

  
197
		a {
204
		a::before {
198 205
			width: 260px;
199 206
			height: 150px;
200
			margin-top: 10px;
201 207
			@media($max-mobile-viewport) {
202 208
				width: 200px;
203 209
				height: 114px;
......
207 213

  
208 214
	#toplinks {
209 215
		background: $gray-light;
210
		@media($max-mobile-viewport) {
216
		@media ($min-desktop-viewport) {
211 217
			position: absolute;
218
			right: $nav-menu-side * 1.5;
219
			top: ($desktop-gray-header-height - $nav-menu-side) / 2;
212 220
		}
213 221
	}
214 222

  
......
216 224
		font-weight: bold;
217 225
		text-align: center;
218 226
		font-size: $fz-1;
227
		flex: 1 1 auto;
219 228

  
220 229
		@media($max-mobile-viewport) {
221 230
			padding: 1rem;
......
223 232
		}
224 233

  
225 234
		@media($min-desktop-viewport) {
226
			position: absolute;
227
			top: 70px;
228
			right: 8rem;
229
			width: 50%;
235
			flex: 1 1 50%;
236
			padding-bottom: 10px;
230 237
		}
231 238
	}
232 239
}
static/publik-famille-demo/_vars.scss
34 34
$border-radius: 1rem;
35 35
$link-color: $primary-color;
36 36

  
37
$header-full-width-background: false;
37
$header-full-width-background: true;
38 38
$header-background-color: $gray-light;
39
$header-height: 500px;
39
$header-logo-size: 105px 60px;
40 40

  
41 41
$toplinks-style: none;
42
$toplinks-padding: .75em 0.5em;
43
$toplinks-background: $gray-light;
44
$toplinks-border-radius: $border-radius;
42
$toplinks-background: white;
45 43

  
46 44
$nav-after-image: false;
47 45
$nav-mobile-limit: 20000px;
templates/variants/publik-famille-demo/combo/page_template_homepage.html
4 4
{% block content-pre %}
5 5
{% endblock %}
6 6

  
7
{% block header-bottom %}
7
{% block header-content %}
8 8
  <div class="pf-header-description">{{ page.description }}</div>
9
  {{ block.super }}
9 10
{% endblock %}
10 11

  
11
-