govuk_publishing_components 27.8.0 → 27.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/assets/javascripts/govuk_publishing_components/analytics/google-analytics-universal-tracker.js +9 -0
- data/app/assets/javascripts/govuk_publishing_components/analytics/init.js +12 -8
- data/app/assets/javascripts/govuk_publishing_components/components/intervention.js +1 -0
- data/app/assets/javascripts/govuk_publishing_components/components/layout-super-navigation-header.js +20 -40
- data/app/assets/stylesheets/govuk_publishing_components/components/_intervention.scss +13 -10
- data/app/assets/stylesheets/govuk_publishing_components/components/_layout-for-public.scss +0 -12
- data/app/assets/stylesheets/govuk_publishing_components/components/_layout-super-navigation-header.scss +434 -366
- data/app/assets/stylesheets/govuk_publishing_components/components/_search.scss +17 -10
- data/app/assets/stylesheets/govuk_publishing_components/components/print/_layout-super-navigation-header.scss +2 -2
- data/app/assets/stylesheets/govuk_publishing_components/components/print/_organisation-logo.scss +3 -0
- data/app/views/govuk_publishing_components/components/_intervention.html.erb +39 -26
- data/app/views/govuk_publishing_components/components/_layout_for_public.html.erb +1 -4
- data/app/views/govuk_publishing_components/components/_layout_super_navigation_header.html.erb +80 -74
- data/app/views/govuk_publishing_components/components/_search.html.erb +1 -0
- data/app/views/govuk_publishing_components/components/docs/intervention.yml +45 -6
- data/app/views/govuk_publishing_components/components/docs/layout_for_public.yml +0 -8
- data/app/views/govuk_publishing_components/components/docs/layout_super_navigation_header.yml +12 -3
- data/app/views/govuk_publishing_components/components/docs/title.yml +0 -11
- data/app/views/govuk_publishing_components/components/layout_for_public/_account-layout.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/layout_for_public/_account-navigation.html.erb +0 -9
- data/app/views/govuk_publishing_components/components/search/_search_icon.html.erb +28 -0
- data/config/locales/en.yml +3 -14
- data/lib/govuk_publishing_components/presenters/intervention_helper.rb +19 -0
- data/lib/govuk_publishing_components/version.rb +1 -1
- data/lib/govuk_publishing_components.rb +1 -0
- metadata +5 -3
- data/app/views/govuk_publishing_components/components/layout_for_public/_account-feedback-footer.html.erb +0 -18
@@ -92,170 +92,73 @@
|
|
92
92
|
}
|
93
93
|
}
|
94
94
|
|
95
|
-
$
|
95
|
+
$icon-size: 20px;
|
96
|
+
$chevron-indent-spacing: 7px;
|
97
|
+
|
98
|
+
@mixin chevron($colour, $update: false) {
|
99
|
+
@if ($update == true) {
|
100
|
+
border-bottom-color: $colour;
|
101
|
+
border-right-color: $colour;
|
102
|
+
} @else {
|
103
|
+
border-bottom: 3px solid $colour;
|
104
|
+
border-right: 3px solid $colour;
|
105
|
+
content: " ";
|
106
|
+
display: inline-block;
|
107
|
+
height: 8px;
|
108
|
+
margin: 0 8px 0 2px;
|
109
|
+
transform: translateY(-35%) rotate(45deg);
|
110
|
+
vertical-align: middle;
|
111
|
+
width: 8px;
|
112
|
+
}
|
113
|
+
}
|
96
114
|
|
97
|
-
@mixin
|
98
|
-
|
99
|
-
|
115
|
+
@mixin make-selectable-area-bigger {
|
116
|
+
background: none;
|
117
|
+
bottom: 0;
|
100
118
|
content: " ";
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
vertical-align: middle;
|
106
|
-
width: 8px;
|
119
|
+
left: 0;
|
120
|
+
position: absolute;
|
121
|
+
right: 0;
|
122
|
+
top: 0;
|
107
123
|
}
|
108
124
|
|
109
|
-
|
125
|
+
@mixin pseudo-underline {
|
110
126
|
background: none;
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
&,
|
121
|
-
&:link,
|
122
|
-
&:visited {
|
123
|
-
color: $govuk-link-colour;
|
124
|
-
}
|
127
|
+
bottom: 0;
|
128
|
+
content: " ";
|
129
|
+
height: govuk-spacing(1);
|
130
|
+
left: govuk-spacing(4);
|
131
|
+
position: absolute;
|
132
|
+
right: govuk-spacing(4);
|
133
|
+
top: auto;
|
134
|
+
}
|
125
135
|
|
136
|
+
@mixin focus-and-focus-visible {
|
126
137
|
&:focus {
|
127
|
-
|
128
|
-
border-color: $govuk-focus-text-colour;
|
129
|
-
border-top-color: $govuk-focus-colour;
|
130
|
-
color: $govuk-focus-text-colour;
|
131
|
-
outline: 3px solid transparent;
|
132
|
-
box-shadow: none;
|
133
|
-
z-index: 1;
|
134
|
-
}
|
135
|
-
|
136
|
-
@include govuk-media-query($from: "tablet") {
|
137
|
-
padding: govuk-spacing(6);
|
138
|
-
}
|
139
|
-
|
140
|
-
@include govuk-media-query($from: "desktop") {
|
141
|
-
@include govuk-font($size: 16, $weight: false, $line-height: 20px);
|
142
|
-
color: govuk-colour("white");
|
143
|
-
display: inherit;
|
144
|
-
height: govuk-spacing(9);
|
145
|
-
padding: govuk-spacing(4);
|
146
|
-
|
147
|
-
&:after {
|
148
|
-
background: govuk-colour("black");
|
149
|
-
bottom: 0;
|
150
|
-
content: " ";
|
151
|
-
display: block;
|
152
|
-
height: govuk-spacing(1);
|
153
|
-
left: govuk-spacing(4);
|
154
|
-
position: absolute;
|
155
|
-
right: govuk-spacing(4);
|
156
|
-
}
|
157
|
-
|
158
|
-
&:hover {
|
159
|
-
background: govuk-colour("black");
|
160
|
-
color: govuk-colour("mid-grey");
|
161
|
-
|
162
|
-
&:after {
|
163
|
-
background-color: govuk-colour("mid-grey");
|
164
|
-
}
|
165
|
-
}
|
166
|
-
|
167
|
-
&:focus {
|
168
|
-
@include govuk-focused-text;
|
169
|
-
box-shadow: none;
|
170
|
-
|
171
|
-
&:after {
|
172
|
-
background-color: $govuk-focus-text-colour;
|
173
|
-
}
|
174
|
-
}
|
175
|
-
|
176
|
-
&,
|
177
|
-
&:visited {
|
178
|
-
color: govuk-colour("white");
|
179
|
-
}
|
138
|
+
@content;
|
180
139
|
}
|
181
|
-
}
|
182
|
-
|
183
|
-
%toggle-base {
|
184
|
-
@extend %top-level-navigation-link-base;
|
185
|
-
@include govuk-font($size: 16, $weight: false, $line-height: 20px);
|
186
|
-
border-radius: 0;
|
187
|
-
cursor: pointer;
|
188
|
-
padding: govuk-spacing(4);
|
189
|
-
right: 0;
|
190
|
-
top: 0;
|
191
140
|
|
192
|
-
|
193
|
-
|
141
|
+
&:focus-visible {
|
142
|
+
@content;
|
194
143
|
}
|
195
144
|
}
|
196
145
|
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
height: govuk-spacing(9);
|
201
|
-
|
202
|
-
&:focus {
|
203
|
-
border-color: $govuk-focus-colour;
|
146
|
+
@mixin focus-not-focus-visible {
|
147
|
+
& {
|
148
|
+
@content;
|
204
149
|
}
|
205
150
|
|
206
|
-
|
207
|
-
|
208
|
-
border-right-color: govuk-colour("black");
|
209
|
-
|
210
|
-
&,
|
211
|
-
&:hover {
|
212
|
-
background: govuk-colour("light-grey");
|
213
|
-
color: govuk-colour("light-grey");
|
214
|
-
}
|
215
|
-
|
216
|
-
&:focus {
|
217
|
-
color: $govuk-focus-colour;
|
218
|
-
background: $govuk-focus-colour;
|
219
|
-
}
|
220
|
-
|
221
|
-
&:before,
|
222
|
-
&:after {
|
223
|
-
$width: govuk-spacing(4);
|
224
|
-
$height: 4px;
|
225
|
-
|
226
|
-
border: none;
|
227
|
-
content: " ";
|
228
|
-
display: block;
|
229
|
-
margin: 0;
|
230
|
-
width: $width;
|
231
|
-
height: $height;
|
232
|
-
background: govuk-colour("black");
|
233
|
-
transform-origin: center;
|
234
|
-
position: absolute;
|
235
|
-
top: calc(50% - #{$height / 2});
|
236
|
-
left: calc(50% - #{$width / 2});
|
237
|
-
}
|
238
|
-
|
239
|
-
&:before {
|
240
|
-
transform: rotate(45deg);
|
241
|
-
}
|
242
|
-
|
243
|
-
&:after {
|
244
|
-
transform: rotate(-45deg);
|
245
|
-
}
|
151
|
+
&:focus:not(:focus-visible) {
|
152
|
+
@content;
|
246
153
|
}
|
247
154
|
}
|
248
155
|
|
249
|
-
%search-icon {
|
250
|
-
height: $search-icon-size;
|
251
|
-
pointer-events: none;
|
252
|
-
width: $search-icon-size;
|
253
|
-
}
|
254
|
-
|
255
156
|
// Header layout - black bar and logo.
|
256
157
|
.gem-c-layout-super-navigation-header {
|
257
158
|
background: govuk-colour("black");
|
159
|
+
border-top: 1px solid govuk-colour("black");
|
258
160
|
position: relative;
|
161
|
+
top: -1px;
|
259
162
|
|
260
163
|
.lte-ie8 & {
|
261
164
|
height: govuk-spacing(9);
|
@@ -276,8 +179,8 @@ $search-icon-size: 20px;
|
|
276
179
|
|
277
180
|
.gem-c-layout-super-navigation-header__header-logo {
|
278
181
|
height: govuk-spacing(6);
|
279
|
-
padding-top: govuk-spacing(3);
|
280
182
|
padding-bottom: govuk-spacing(3);
|
183
|
+
padding-top: govuk-spacing(3);
|
281
184
|
|
282
185
|
@include govuk-media-query($from: "desktop") {
|
283
186
|
display: block;
|
@@ -292,6 +195,10 @@ $search-icon-size: 20px;
|
|
292
195
|
}
|
293
196
|
}
|
294
197
|
|
198
|
+
.gem-c-layout-super-navigation-header__navigation-toggle-wrapper {
|
199
|
+
position: relative;
|
200
|
+
}
|
201
|
+
|
295
202
|
// Top level navigation and search.
|
296
203
|
.gem-c-layout-super-navigation-header__navigation-items,
|
297
204
|
.gem-c-layout-super-navigation-header__search-items {
|
@@ -314,7 +221,11 @@ $search-icon-size: 20px;
|
|
314
221
|
}
|
315
222
|
|
316
223
|
.gem-c-layout-super-navigation-header__navigation-items {
|
317
|
-
|
224
|
+
@include govuk-media-query($from: "desktop") {
|
225
|
+
display: inline-block;
|
226
|
+
}
|
227
|
+
|
228
|
+
.js-module-initialised & {
|
318
229
|
padding: 0 0 govuk-spacing(9) 0;
|
319
230
|
|
320
231
|
@include govuk-media-query($from: "desktop") {
|
@@ -325,94 +236,276 @@ $search-icon-size: 20px;
|
|
325
236
|
|
326
237
|
.gem-c-layout-super-navigation-header__navigation-item,
|
327
238
|
.gem-c-layout-super-navigation-header__search-item {
|
328
|
-
|
329
|
-
|
239
|
+
display: block;
|
240
|
+
margin: 0 govuk-spacing(3);
|
241
|
+
position: relative;
|
242
|
+
|
243
|
+
@include govuk-media-query($from: "tablet") {
|
244
|
+
margin: 0 govuk-spacing(6);
|
245
|
+
}
|
330
246
|
|
331
247
|
@include govuk-media-query($from: "desktop") {
|
332
|
-
|
248
|
+
background: govuk-colour("black");
|
249
|
+
display: block;
|
333
250
|
float: left;
|
251
|
+
margin: 0;
|
334
252
|
padding: 0;
|
253
|
+
position: static;
|
335
254
|
}
|
336
255
|
}
|
337
256
|
|
338
257
|
.gem-c-layout-super-navigation-header__navigation-item {
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
height: 1px;
|
344
|
-
left: 0;
|
345
|
-
right: 0;
|
346
|
-
position: absolute;
|
258
|
+
border-bottom: 1px solid $govuk-border-colour;
|
259
|
+
|
260
|
+
@include govuk-media-query($from: "desktop") {
|
261
|
+
border-bottom: 0;
|
347
262
|
}
|
263
|
+
}
|
264
|
+
|
265
|
+
// Top level navigation links and search link.
|
266
|
+
.gem-c-layout-super-navigation-header__navigation-item-link,
|
267
|
+
.gem-c-layout-super-navigation-header__search-item-link,
|
268
|
+
.gem-c-layout-super-navigation-header__navigation-second-toggle-button {
|
269
|
+
@include govuk-link-common;
|
270
|
+
@include govuk-link-style-no-visited-state;
|
271
|
+
@include govuk-link-style-no-underline;
|
272
|
+
|
273
|
+
display: inline-block;
|
274
|
+
font-size: 19px;
|
275
|
+
font-size: govuk-px-to-rem(19px);
|
276
|
+
font-weight: bold;
|
277
|
+
margin: govuk-spacing(3) 0;
|
348
278
|
|
349
279
|
@include govuk-media-query($from: "desktop") {
|
280
|
+
display: block;
|
281
|
+
margin: 0;
|
282
|
+
}
|
283
|
+
|
284
|
+
&:hover {
|
285
|
+
@include govuk-link-hover-decoration;
|
286
|
+
}
|
287
|
+
|
288
|
+
&,
|
289
|
+
&:link,
|
290
|
+
&:visited {
|
291
|
+
@include focus-and-focus-visible {
|
292
|
+
@include govuk-focused-text;
|
293
|
+
}
|
294
|
+
|
295
|
+
// Undoes the :focus styles *only* for browsers that support :focus-visible.
|
296
|
+
// See https://www.tpgi.com/focus-visible-and-backwards-compatibility/
|
297
|
+
&:focus:not(:focus-visible) {
|
298
|
+
background: none;
|
299
|
+
box-shadow: none;
|
300
|
+
color: $govuk-link-colour;
|
301
|
+
|
302
|
+
&:hover {
|
303
|
+
@include govuk-link-decoration;
|
304
|
+
@include govuk-link-hover-decoration;
|
305
|
+
color: $govuk-link-hover-colour;
|
306
|
+
}
|
307
|
+
}
|
308
|
+
|
350
309
|
&:after {
|
351
|
-
|
310
|
+
@include make-selectable-area-bigger;
|
311
|
+
}
|
312
|
+
|
313
|
+
@include govuk-media-query($from: "desktop") {
|
314
|
+
float: left;
|
315
|
+
font-size: 16px;
|
316
|
+
font-size: govuk-px-to-rem(16px);
|
317
|
+
height: govuk-spacing(4);
|
318
|
+
padding: govuk-spacing(4);
|
319
|
+
position: relative;
|
320
|
+
|
321
|
+
&:before {
|
322
|
+
@include chevron(govuk-colour("white"), true);
|
323
|
+
}
|
324
|
+
|
325
|
+
&:hover {
|
326
|
+
color: govuk-colour("mid-grey");
|
327
|
+
|
328
|
+
&:after {
|
329
|
+
background: govuk-colour("mid-grey");
|
330
|
+
}
|
331
|
+
}
|
332
|
+
|
333
|
+
// stylelint-disable max-nesting-depth
|
334
|
+
@include focus-and-focus-visible {
|
335
|
+
box-shadow: none;
|
336
|
+
color: $govuk-focus-text-colour;
|
337
|
+
|
338
|
+
&:after {
|
339
|
+
background: $govuk-focus-text-colour;
|
340
|
+
}
|
341
|
+
}
|
342
|
+
|
343
|
+
@include focus-not-focus-visible {
|
344
|
+
&,
|
345
|
+
&:hover {
|
346
|
+
color: govuk-colour("white");
|
347
|
+
text-decoration: none;
|
348
|
+
}
|
349
|
+
}
|
350
|
+
// stylelint-enable max-nesting-depth
|
351
|
+
|
352
|
+
&:focus:not(:focus-visible) {
|
353
|
+
&:after {
|
354
|
+
background: none;
|
355
|
+
}
|
356
|
+
}
|
357
|
+
|
358
|
+
&:after {
|
359
|
+
@include pseudo-underline;
|
360
|
+
}
|
352
361
|
}
|
353
362
|
}
|
363
|
+
|
364
|
+
&:after {
|
365
|
+
@include make-selectable-area-bigger;
|
366
|
+
}
|
354
367
|
}
|
355
368
|
|
356
|
-
// Top level navigation links.
|
357
369
|
.gem-c-layout-super-navigation-header__navigation-item-link {
|
358
|
-
|
370
|
+
.js-module-initialised & {
|
371
|
+
margin-left: govuk-spacing(4);
|
372
|
+
}
|
373
|
+
}
|
359
374
|
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
375
|
+
.gem-c-layout-super-navigation-header__navigation-second-toggle-button {
|
376
|
+
background: none;
|
377
|
+
border: 0;
|
378
|
+
color: $govuk-link-colour;
|
379
|
+
cursor: pointer;
|
380
|
+
padding: 0;
|
364
381
|
|
365
|
-
|
366
|
-
|
382
|
+
@include focus-not-focus-visible {
|
383
|
+
&:before {
|
384
|
+
@include chevron($govuk-link-colour);
|
385
|
+
}
|
386
|
+
}
|
367
387
|
|
368
|
-
|
369
|
-
|
388
|
+
@include focus-not-focus-visible {
|
389
|
+
&:hover {
|
390
|
+
&:before {
|
391
|
+
@include chevron($govuk-link-hover-colour, true);
|
370
392
|
}
|
371
393
|
}
|
394
|
+
}
|
372
395
|
|
373
|
-
|
374
|
-
|
396
|
+
&:focus {
|
397
|
+
&:before {
|
398
|
+
@include chevron($govuk-focus-text-colour, true);
|
375
399
|
}
|
400
|
+
}
|
376
401
|
|
377
|
-
|
402
|
+
@include govuk-media-query($from: "desktop") {
|
403
|
+
&:after {
|
404
|
+
@include pseudo-underline;
|
405
|
+
}
|
406
|
+
|
407
|
+
@include focus-not-focus-visible {
|
378
408
|
color: govuk-colour("white");
|
409
|
+
float: left;
|
410
|
+
font-size: 16px;
|
411
|
+
font-size: govuk-px-to-rem(16px);
|
412
|
+
height: govuk-spacing(9);
|
413
|
+
padding: govuk-spacing(4);
|
414
|
+
position: relative;
|
415
|
+
text-decoration: none;
|
416
|
+
|
417
|
+
&:before {
|
418
|
+
@include chevron(govuk-colour("white"), true);
|
419
|
+
}
|
420
|
+
}
|
421
|
+
@include focus-not-focus-visible {
|
422
|
+
&:hover {
|
423
|
+
color: govuk-colour("mid-grey");
|
424
|
+
text-decoration: none;
|
425
|
+
|
426
|
+
&:after {
|
427
|
+
background: govuk-colour("mid-grey");
|
428
|
+
}
|
429
|
+
|
430
|
+
&:before {
|
431
|
+
@include chevron(govuk-colour("mid-grey"), true);
|
432
|
+
}
|
433
|
+
}
|
379
434
|
}
|
380
|
-
}
|
381
435
|
|
382
|
-
|
383
|
-
|
384
|
-
|
385
|
-
|
436
|
+
@include focus-and-focus-visible {
|
437
|
+
color: $govuk-focus-text-colour;
|
438
|
+
|
439
|
+
&:after {
|
440
|
+
background: $govuk-focus-text-colour;
|
441
|
+
}
|
442
|
+
|
443
|
+
&:before {
|
444
|
+
@include chevron($govuk-focus-text-colour, true);
|
445
|
+
}
|
446
|
+
}
|
386
447
|
}
|
387
448
|
|
388
|
-
|
389
|
-
@include
|
390
|
-
|
449
|
+
&.gem-c-layout-super-navigation-header__open-button {
|
450
|
+
@include focus-not-focus-visible {
|
451
|
+
&:before {
|
452
|
+
transform: translateY(0) rotate(225deg);
|
453
|
+
}
|
391
454
|
}
|
392
455
|
|
393
|
-
@include govuk-media-query($
|
394
|
-
|
456
|
+
@include govuk-media-query($from: "desktop") {
|
457
|
+
@include focus-not-focus-visible {
|
458
|
+
background: govuk-colour("light-grey");
|
459
|
+
color: $govuk-link-colour;
|
460
|
+
|
461
|
+
&:before {
|
462
|
+
@include chevron($govuk-link-colour, true);
|
463
|
+
}
|
464
|
+
|
465
|
+
&:after {
|
466
|
+
background-color: $govuk-link-colour;
|
467
|
+
}
|
468
|
+
}
|
469
|
+
|
470
|
+
@include focus-and-focus-visible {
|
471
|
+
background-color: $govuk-focus-colour;
|
472
|
+
color: $govuk-focus-text-colour;
|
473
|
+
|
474
|
+
&:before {
|
475
|
+
@include chevron($govuk-focus-text-colour, true);
|
476
|
+
}
|
477
|
+
|
478
|
+
&:after {
|
479
|
+
background: $govuk-focus-text-colour;
|
480
|
+
}
|
481
|
+
}
|
395
482
|
}
|
396
483
|
}
|
397
484
|
}
|
398
485
|
|
399
486
|
// Search link and dropdown.
|
400
487
|
.gem-c-layout-super-navigation-header__search-item-link {
|
401
|
-
|
488
|
+
&:link,
|
489
|
+
&:visited {
|
490
|
+
@include govuk-media-query($from: "desktop") {
|
491
|
+
background: $govuk-brand-colour;
|
402
492
|
|
403
|
-
|
404
|
-
|
405
|
-
margin-left: 0;
|
493
|
+
&:hover {
|
494
|
+
background: none;
|
406
495
|
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
496
|
+
&:before {
|
497
|
+
left: 0;
|
498
|
+
right: 0;
|
499
|
+
}
|
500
|
+
}
|
411
501
|
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
502
|
+
&:focus {
|
503
|
+
background: $govuk-focus-colour;
|
504
|
+
|
505
|
+
&:before {
|
506
|
+
content: none;
|
507
|
+
}
|
508
|
+
}
|
416
509
|
}
|
417
510
|
}
|
418
511
|
}
|
@@ -423,18 +516,17 @@ $search-icon-size: 20px;
|
|
423
516
|
}
|
424
517
|
}
|
425
518
|
|
426
|
-
.gem-c-layout-super-navigation-header__search-item-link-icon
|
427
|
-
|
428
|
-
|
429
|
-
|
430
|
-
|
431
|
-
display: block;
|
432
|
-
}
|
519
|
+
.gem-c-layout-super-navigation-header__search-item-link-icon,
|
520
|
+
.gem-c-layout-super-navigation-header__search-toggle-button-link-icon {
|
521
|
+
height: $icon-size;
|
522
|
+
pointer-events: none;
|
523
|
+
width: $icon-size;
|
433
524
|
}
|
434
525
|
|
435
|
-
.gem-c-layout-super-navigation-header__search-
|
436
|
-
@
|
437
|
-
|
526
|
+
.gem-c-layout-super-navigation-header__search-item-link-icon {
|
527
|
+
@include govuk-media-query($until: "desktop") {
|
528
|
+
@include govuk-visually-hidden;
|
529
|
+
}
|
438
530
|
}
|
439
531
|
|
440
532
|
// Search and popular content dropdown.
|
@@ -443,230 +535,196 @@ $search-icon-size: 20px;
|
|
443
535
|
padding-bottom: govuk-spacing(4);
|
444
536
|
padding-top: govuk-spacing(4);
|
445
537
|
|
446
|
-
.js-
|
538
|
+
.js-module-initialised & {
|
447
539
|
display: block;
|
448
540
|
}
|
449
541
|
}
|
450
542
|
|
451
543
|
// Styles for top level navigation toggle button.
|
452
544
|
.gem-c-layout-super-navigation-header__navigation-top-toggle-button {
|
453
|
-
@
|
454
|
-
|
545
|
+
@include govuk-font($size: 19, $weight: "bold", $line-height: 20px);
|
546
|
+
background: govuk-colour("black");
|
547
|
+
border: 0;
|
548
|
+
border-left: 1px solid govuk-colour("white");
|
549
|
+
border-right: 1px solid govuk-colour("white");
|
550
|
+
box-sizing: border-box;
|
455
551
|
color: govuk-colour("white");
|
552
|
+
cursor: pointer;
|
553
|
+
height: govuk-spacing(9);
|
554
|
+
margin-right: -1px;
|
555
|
+
padding: govuk-spacing(4);
|
456
556
|
position: absolute;
|
457
|
-
right:
|
458
|
-
|
459
|
-
&.gem-c-layout-super-navigation-header__open-button {
|
460
|
-
border-top-color: govuk-colour("black");
|
461
|
-
}
|
557
|
+
right: (govuk-spacing(9) - govuk-spacing(3));
|
558
|
+
top: 0;
|
462
559
|
|
463
560
|
@include govuk-media-query($from: 360px) {
|
464
|
-
|
465
|
-
@include chevron("white");
|
466
|
-
}
|
467
|
-
}
|
561
|
+
right: govuk-spacing(9);
|
468
562
|
|
469
|
-
&:focus {
|
470
563
|
&:before {
|
471
|
-
|
564
|
+
@include chevron(govuk-colour("white"));
|
472
565
|
}
|
473
566
|
}
|
474
567
|
|
475
|
-
@include
|
476
|
-
|
477
|
-
|
568
|
+
@include focus-and-focus-visible {
|
569
|
+
@include govuk-focused-text;
|
570
|
+
border-color: $govuk-focus-colour;
|
571
|
+
box-shadow: none;
|
572
|
+
z-index: 10;
|
478
573
|
|
479
|
-
|
480
|
-
|
574
|
+
@include govuk-media-query($from: 360px) {
|
575
|
+
&:before {
|
576
|
+
@include chevron(govuk-colour("black"), true);
|
577
|
+
}
|
578
|
+
}
|
481
579
|
}
|
482
|
-
}
|
483
580
|
|
484
|
-
// styles for
|
485
|
-
.
|
486
|
-
@
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
right: (0 - govuk-spacing(3));
|
492
|
-
|
493
|
-
&:after {
|
494
|
-
background-color: $govuk-link-colour;
|
495
|
-
content: " ";
|
496
|
-
left: 0;
|
497
|
-
right: 0;
|
498
|
-
}
|
581
|
+
// Undoes the :focus styles *only* for browsers that support :focus-visible.
|
582
|
+
// See https://www.tpgi.com/focus-visible-and-backwards-compatibility/
|
583
|
+
@include focus-not-focus-visible {
|
584
|
+
background: none;
|
585
|
+
border-color: govuk-colour("white");
|
586
|
+
box-shadow: none;
|
587
|
+
color: govuk-colour("white");
|
499
588
|
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
border-top-color: $govuk-focus-colour;
|
589
|
+
@include govuk-media-query($from: 360px) {
|
590
|
+
&:before {
|
591
|
+
@include chevron(govuk-colour("white"), true);
|
592
|
+
}
|
505
593
|
}
|
506
594
|
}
|
507
595
|
|
508
|
-
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
height: govuk-spacing(9);
|
516
|
-
margin-left: govuk-spacing(3);
|
517
|
-
padding: govuk-spacing(4);
|
518
|
-
position: relative;
|
519
|
-
float: right;
|
520
|
-
|
521
|
-
&.gem-c-layout-super-navigation-header__open-button {
|
522
|
-
border-top-color: govuk-colour("black");
|
596
|
+
// Open button modifier
|
597
|
+
&.gem-c-layout-super-navigation-header__open-button {
|
598
|
+
@include focus-and-focus-visible {
|
599
|
+
@include govuk-focused-text;
|
600
|
+
border-color: $govuk-focus-colour;
|
601
|
+
box-shadow: none;
|
602
|
+
color: $govuk-focus-colour;
|
523
603
|
|
524
|
-
|
525
|
-
|
604
|
+
@include govuk-media-query($from: 360px) {
|
605
|
+
&:before {
|
606
|
+
@include chevron($govuk-focus-colour, true);
|
607
|
+
}
|
526
608
|
}
|
527
609
|
}
|
528
610
|
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
// One solution is to use `@media(hover: hover)`. This turns on the hover
|
533
|
-
// state only for devices that aren't touchscreen, but means that browsers
|
534
|
-
// that don't support this media query won't get a hover state at all.
|
535
|
-
//
|
536
|
-
// To get around this, we do the opposite - we turn off the hover state for
|
537
|
-
// for touchscreen devices.
|
538
|
-
@media (hover: none), (pointer: coarse) {
|
539
|
-
&:not(:focus):hover {
|
540
|
-
background-color: $govuk-link-colour;
|
541
|
-
color: govuk-colour("white");
|
611
|
+
@include focus-not-focus-visible {
|
612
|
+
background: govuk-colour("light-grey");
|
613
|
+
color: govuk-colour("light-grey");
|
542
614
|
|
543
|
-
|
544
|
-
|
615
|
+
@include govuk-media-query($from: 360px) {
|
616
|
+
&:before {
|
617
|
+
@include chevron(govuk-colour("light-grey"));
|
545
618
|
}
|
546
619
|
}
|
547
620
|
}
|
548
621
|
}
|
549
622
|
}
|
550
623
|
|
551
|
-
//
|
552
|
-
.gem-c-layout-super-navigation-
|
553
|
-
@
|
554
|
-
|
624
|
+
// Styles for search toggle button.
|
625
|
+
.gem-c-layout-super-navigation-header__search-toggle-button {
|
626
|
+
@include govuk-font($size: 19, $weight: "bold", $line-height: 20px);
|
627
|
+
background: govuk-colour("black");
|
555
628
|
border: 0;
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
629
|
+
border-left: 1px solid govuk-colour("white");
|
630
|
+
color: govuk-colour("white");
|
631
|
+
cursor: pointer;
|
632
|
+
height: govuk-spacing(9);
|
633
|
+
padding: govuk-spacing(4);
|
634
|
+
position: absolute;
|
635
|
+
right: (0 - govuk-spacing(3));
|
636
|
+
top: 0;
|
637
|
+
width: govuk-spacing(9);
|
562
638
|
|
563
|
-
|
564
|
-
@include
|
639
|
+
@include focus-and-focus-visible {
|
640
|
+
@include govuk-focused-text;
|
641
|
+
border-color: $govuk-focus-colour;
|
642
|
+
box-shadow: none;
|
565
643
|
}
|
566
644
|
|
567
|
-
|
568
|
-
|
569
|
-
color:
|
570
|
-
|
571
|
-
|
572
|
-
color: govuk-colour("white");
|
573
|
-
}
|
645
|
+
&:focus:not(:focus-visible) {
|
646
|
+
background: none;
|
647
|
+
border-color: govuk-colour("white");
|
648
|
+
box-shadow: none;
|
649
|
+
color: govuk-colour("white");
|
574
650
|
}
|
575
651
|
|
576
|
-
@include govuk-media-query($from:
|
577
|
-
|
652
|
+
@include govuk-media-query($from: 360px) {
|
653
|
+
right: 0;
|
578
654
|
}
|
579
655
|
|
580
656
|
@include govuk-media-query($from: "desktop") {
|
581
|
-
@include
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
position: relative;
|
587
|
-
|
588
|
-
&:before {
|
589
|
-
border-color: govuk-colour("white");
|
657
|
+
@include focus-not-focus-visible {
|
658
|
+
background: $govuk-brand-colour;
|
659
|
+
border-bottom: govuk-spacing(1) solid $govuk-brand-colour;
|
660
|
+
border-left: none;
|
661
|
+
position: relative;
|
590
662
|
}
|
591
663
|
|
592
664
|
&:hover {
|
665
|
+
background: govuk-colour("black");
|
666
|
+
border-bottom-color: govuk-colour("mid-grey");
|
593
667
|
color: govuk-colour("mid-grey");
|
594
|
-
|
595
|
-
&:after {
|
596
|
-
background-color: govuk-colour("mid-grey");
|
597
|
-
}
|
598
|
-
|
599
|
-
&:before {
|
600
|
-
border-color: govuk-colour("mid-grey");
|
601
|
-
}
|
602
668
|
}
|
603
669
|
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
background-color: $govuk-focus-text-colour;
|
609
|
-
}
|
610
|
-
|
611
|
-
&:before {
|
612
|
-
border-color: $govuk-focus-text-colour;
|
613
|
-
}
|
670
|
+
@include focus-and-focus-visible {
|
671
|
+
@include govuk-focused-text;
|
672
|
+
border-bottom-color: $govuk-focus-colour;
|
673
|
+
box-shadow: none;
|
614
674
|
}
|
615
675
|
}
|
616
676
|
|
677
|
+
// Open button modifier
|
617
678
|
&.gem-c-layout-super-navigation-header__open-button {
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
@include govuk-media-query($from: "desktop") {
|
625
|
-
background-color: govuk-colour("light-grey");
|
626
|
-
color: $govuk-link-colour;
|
627
|
-
|
628
|
-
&:after {
|
629
|
-
background: $govuk-link-colour;
|
630
|
-
}
|
631
|
-
|
632
|
-
&:before {
|
633
|
-
border-color: $govuk-link-colour;
|
634
|
-
}
|
635
|
-
|
636
|
-
&:focus {
|
637
|
-
background-color: $govuk-focus-colour;
|
638
|
-
color: $govuk-focus-text-colour;
|
639
|
-
|
640
|
-
&:after {
|
641
|
-
background-color: $govuk-focus-text-colour;
|
642
|
-
}
|
679
|
+
@include focus-and-focus-visible {
|
680
|
+
@include govuk-focused-text;
|
681
|
+
border-color: $govuk-focus-colour;
|
682
|
+
box-shadow: none;
|
683
|
+
color: $govuk-focus-colour;
|
643
684
|
|
685
|
+
@include govuk-media-query($from: 360px) {
|
644
686
|
&:before {
|
645
|
-
|
687
|
+
@include chevron($govuk-focus-colour, true);
|
646
688
|
}
|
647
689
|
}
|
690
|
+
}
|
648
691
|
|
649
|
-
|
650
|
-
|
651
|
-
|
652
|
-
|
653
|
-
&:before {
|
654
|
-
border-color: $govuk-link-colour;
|
655
|
-
}
|
656
|
-
}
|
692
|
+
@include focus-not-focus-visible {
|
693
|
+
background: govuk-colour("light-grey");
|
694
|
+
border-bottom-color: govuk-colour("light-grey");
|
695
|
+
color: govuk-colour("light-grey");
|
657
696
|
}
|
658
697
|
}
|
659
698
|
}
|
660
699
|
|
700
|
+
.gem-c-layout-super-navigation-header__navigation-top-toggle-close-icon {
|
701
|
+
color: $govuk-text-colour;
|
702
|
+
display: none;
|
703
|
+
font-size: 36px;
|
704
|
+
font-weight: normal;
|
705
|
+
left: 0;
|
706
|
+
line-height: 22px;
|
707
|
+
padding: govuk-spacing(4) 0;
|
708
|
+
pointer-events: none;
|
709
|
+
position: absolute;
|
710
|
+
right: 0;
|
711
|
+
text-align: center;
|
712
|
+
top: 0;
|
713
|
+
|
714
|
+
.gem-c-layout-super-navigation-header__open-button & {
|
715
|
+
display: block;
|
716
|
+
}
|
717
|
+
}
|
718
|
+
|
661
719
|
// Dropdown menu.
|
662
720
|
.gem-c-layout-super-navigation-header__navigation-dropdown-menu {
|
663
|
-
background: govuk-colour("
|
721
|
+
background: govuk-colour("light-grey");
|
664
722
|
|
665
723
|
@include govuk-media-query($from: "desktop") {
|
666
|
-
background: govuk-colour("light-grey");
|
667
724
|
left: 0;
|
668
725
|
position: absolute;
|
669
726
|
right: 0;
|
727
|
+
top: govuk-spacing(9);
|
670
728
|
}
|
671
729
|
}
|
672
730
|
|
@@ -682,7 +740,12 @@ $search-icon-size: 20px;
|
|
682
740
|
|
683
741
|
// Dropdown menu items.
|
684
742
|
.gem-c-layout-super-navigation-header__dropdown-list-item {
|
743
|
+
margin: 0 0 0 $chevron-indent-spacing;
|
744
|
+
padding: govuk-spacing(2) 0;
|
745
|
+
position: relative;
|
746
|
+
|
685
747
|
@include govuk-media-query($from: "desktop") {
|
748
|
+
margin: 0;
|
686
749
|
padding: govuk-spacing(2) 0;
|
687
750
|
}
|
688
751
|
}
|
@@ -720,11 +783,11 @@ $search-icon-size: 20px;
|
|
720
783
|
}
|
721
784
|
|
722
785
|
.gem-c-layout-super-navigation-header__navigation-second-item-link {
|
723
|
-
|
724
|
-
|
786
|
+
&:after {
|
787
|
+
@include make-selectable-area-bigger;
|
788
|
+
}
|
725
789
|
|
726
790
|
@include govuk-media-query($from: "desktop") {
|
727
|
-
display: inline;
|
728
791
|
font-weight: bold;
|
729
792
|
padding: 0;
|
730
793
|
}
|
@@ -732,8 +795,8 @@ $search-icon-size: 20px;
|
|
732
795
|
|
733
796
|
.gem-c-layout-super-navigation-header__navigation-second-item-link--with-description {
|
734
797
|
@include govuk-font($size: 19, $weight: bold);
|
735
|
-
margin-top: govuk-spacing(2);
|
736
798
|
margin-bottom: 0;
|
799
|
+
margin-top: govuk-spacing(2);
|
737
800
|
}
|
738
801
|
|
739
802
|
// Dropdown menu footer links.
|
@@ -754,11 +817,14 @@ $search-icon-size: 20px;
|
|
754
817
|
}
|
755
818
|
|
756
819
|
.gem-c-layout-super-navigation-header__navigation-second-footer-item {
|
820
|
+
padding: govuk-spacing(2) 0 govuk-spacing(2) $chevron-indent-spacing;
|
821
|
+
position: relative;
|
822
|
+
|
757
823
|
@include govuk-media-query($from: "desktop") {
|
758
824
|
box-sizing: border-box;
|
759
825
|
float: left;
|
760
|
-
width: 50%;
|
761
826
|
padding: 0 govuk-spacing(3);
|
827
|
+
width: 50%;
|
762
828
|
}
|
763
829
|
}
|
764
830
|
|
@@ -766,7 +832,10 @@ $search-icon-size: 20px;
|
|
766
832
|
@include govuk-font($size: 19, $weight: bold);
|
767
833
|
display: inline-block;
|
768
834
|
margin: govuk-spacing(1) 0;
|
769
|
-
|
835
|
+
|
836
|
+
&:after {
|
837
|
+
@include make-selectable-area-bigger;
|
838
|
+
}
|
770
839
|
|
771
840
|
@include govuk-media-query($from: "desktop") {
|
772
841
|
display: inline;
|
@@ -787,11 +856,10 @@ $search-icon-size: 20px;
|
|
787
856
|
@include govuk-media-query($from: "desktop") {
|
788
857
|
margin: 0;
|
789
858
|
|
790
|
-
.js-
|
859
|
+
.js-module-initialised & {
|
791
860
|
left: 0;
|
792
861
|
position: absolute;
|
793
862
|
right: 0;
|
794
|
-
top: 60px;
|
795
863
|
}
|
796
864
|
}
|
797
865
|
}
|