Skip to content

Commit f631907

Browse files
Update card styles to work with nhsuk-frontend v10.4
1 parent 3169d4c commit f631907

1 file changed

Lines changed: 80 additions & 20 deletions

File tree

app/assets/stylesheets/components/_card.scss

Lines changed: 80 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,84 @@
11
@use "sass:color";
22
@use "../vendor/nhsuk-frontend" as *;
33

4+
$_blue-background-colour: nhsuk-tint(nhsuk-colour("blue"), 80%);
5+
$_blue-border-colour: nhsuk-tint(nhsuk-colour("blue"), 50%);
6+
$_blue-border-hover-colour: nhsuk-shade(nhsuk-colour("blue"), 10%);
7+
$_blue-text-colour: nhsuk-shade(nhsuk-colour("blue"), 30%);
8+
9+
$_green-background-colour: nhsuk-tint(nhsuk-colour("green"), 80%);
10+
$_green-border-colour: nhsuk-tint(nhsuk-colour("green"), 40%);
11+
$_green-border-hover-colour: nhsuk-shade(nhsuk-colour("green"), 10%);
12+
$_green-text-colour: nhsuk-shade(nhsuk-colour("green"), 40%);
13+
14+
$_red-background-colour: nhsuk-tint(nhsuk-colour("red"), 80%);
15+
$_red-border-colour: nhsuk-tint(nhsuk-colour("red"), 50%);
16+
$_red-border-hover-colour: nhsuk-shade(nhsuk-colour("red"), 10%);
17+
$_red-text-colour: nhsuk-shade(nhsuk-colour("red"), 50%);
18+
19+
$_orange-background-colour: nhsuk-tint(nhsuk-colour("warm-yellow"), 70%);
20+
$_orange-border-colour: nhsuk-tint(nhsuk-colour("warm-yellow"), 10%);
21+
$_orange-border-hover-colour: nhsuk-shade(nhsuk-colour("warm-yellow"), 10%);
22+
$_orange-text-colour: nhsuk-shade(nhsuk-colour("warm-yellow"), 70%);
23+
424
.app-card {
525
&--blue {
6-
border-color: nhsuk-tint(nhsuk-colour("blue"), 30%);
7-
color: nhsuk-shade(nhsuk-colour("blue"), 30%);
8-
background-color: nhsuk-tint(nhsuk-colour("blue"), 80%);
26+
border-color: $_blue-border-colour;
27+
color: $_blue-text-colour;
28+
background-color: $_blue-background-colour;
29+
box-shadow: 0 $nhsuk-card-border-bottom-width 0 $_blue-border-colour;
30+
31+
&.nhsuk-card--clickable:hover,
32+
&.nhsuk-card--clickable:has(.nhsuk-card__heading a:hover),
33+
&.nhsuk-card--clickable:has(.nhsuk-card__link:hover) {
34+
border-color: $_blue-border-hover-colour;
35+
box-shadow: 0 $nhsuk-card-border-bottom-width 0 $_blue-border-hover-colour;
36+
}
937

10-
&.nhsuk-card--clickable:active {
11-
border-color: nhsuk-shade(nhsuk-colour("blue"), 30%);
38+
&.nhsuk-card--clickable:active,
39+
&.nhsuk-card--clickable:has(.nhsuk-card__heading a:active),
40+
&.nhsuk-card--clickable:has(.nhsuk-card__link:active) {
41+
box-shadow: none;
1242
}
1343
}
1444

1545
&--green {
16-
border-color: nhsuk-tint(nhsuk-colour("green"), 40%);
17-
color: nhsuk-shade(nhsuk-colour("green"), 40%);
18-
background-color: nhsuk-tint(nhsuk-colour("green"), 80%);
46+
border-color: $_green-border-colour;
47+
color: $_green-text-colour;
48+
background-color: $_green-background-colour;
49+
box-shadow: 0 $nhsuk-card-border-bottom-width 0 $_green-border-colour;
50+
51+
&.nhsuk-card--clickable:hover,
52+
&.nhsuk-card--clickable:has(.nhsuk-card__heading a:hover),
53+
&.nhsuk-card--clickable:has(.nhsuk-card__link:hover) {
54+
border-color: $_green-border-hover-colour;
55+
box-shadow: 0 $nhsuk-card-border-bottom-width 0 $_green-border-hover-colour;
56+
}
1957

20-
&.nhsuk-card--clickable:active {
21-
border-color: nhsuk-shade(nhsuk-colour("green"), 40%);
58+
&.nhsuk-card--clickable:active,
59+
&.nhsuk-card--clickable:has(.nhsuk-card__heading a:active),
60+
&.nhsuk-card--clickable:has(.nhsuk-card__link:active) {
61+
box-shadow: none;
2262
}
2363
}
2464

2565
&--orange {
26-
border-color: nhsuk-shade(nhsuk-colour("warm-yellow"), 10%);
27-
color: nhsuk-shade(nhsuk-colour("warm-yellow"), 70%);
28-
background-color: nhsuk-tint(nhsuk-colour("warm-yellow"), 70%);
66+
border-color: $_orange-border-colour;
67+
color: $_orange-text-colour;
68+
background-color: $_orange-background-colour;
69+
box-shadow: 0 $nhsuk-card-border-bottom-width 0 $_orange-border-colour;
70+
71+
&.nhsuk-card--clickable:hover,
72+
&.nhsuk-card--clickable:has(.nhsuk-card__heading a:hover),
73+
&.nhsuk-card--clickable:has(.nhsuk-card__link:hover) {
74+
border-color: $_orange-border-hover-colour;
75+
box-shadow: 0 $nhsuk-card-border-bottom-width 0 $_orange-border-hover-colour;
76+
}
2977

30-
&.nhsuk-card--clickable:active {
31-
border-color: nhsuk-shade(nhsuk-colour("warm-yellow"), 30%);
78+
&.nhsuk-card--clickable:active,
79+
&.nhsuk-card--clickable:has(.nhsuk-card__heading a:active),
80+
&.nhsuk-card--clickable:has(.nhsuk-card__link:active) {
81+
box-shadow: none;
3282
}
3383

3484
blockquote {
@@ -37,12 +87,22 @@
3787
}
3888

3989
&--red {
40-
border-color: nhsuk-tint(nhsuk-colour("red"), 50%);
41-
color: nhsuk-shade(nhsuk-colour("red"), 50%);
42-
background-color: nhsuk-tint(nhsuk-colour("red"), 80%);
90+
border-color: $_red-border-colour;
91+
color: $_red-text-colour;
92+
background-color: $_red-background-colour;
93+
box-shadow: 0 $nhsuk-card-border-bottom-width 0 $_red-border-colour;
94+
95+
&.nhsuk-card--clickable:hover,
96+
&.nhsuk-card--clickable:has(.nhsuk-card__heading a:hover),
97+
&.nhsuk-card--clickable:has(.nhsuk-card__link:hover) {
98+
border-color: $_red-border-hover-colour;
99+
box-shadow: 0 $nhsuk-card-border-bottom-width 0 $_red-border-hover-colour;
100+
}
43101

44-
&.nhsuk-card--clickable:active {
45-
border-color: nhsuk-shade(nhsuk-colour("red"), 50%);
102+
&.nhsuk-card--clickable:active,
103+
&.nhsuk-card--clickable:has(.nhsuk-card__heading a:active),
104+
&.nhsuk-card--clickable:has(.nhsuk-card__link:active) {
105+
box-shadow: none;
46106
}
47107
}
48108

0 commit comments

Comments
 (0)