Skip to content

Commit 5da6c70

Browse files
committed
fix(next): use outline for Input border to achieve 36px height
1 parent d9f740c commit 5da6c70

1 file changed

Lines changed: 12 additions & 9 deletions

File tree

  • packages/eds-core-react/src/components/next/Input

packages/eds-core-react/src/components/next/Input/input.css

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,19 @@
99
box-sizing: border-box;
1010
inline-size: 100%;
1111
background: var(--eds-color-bg-canvas);
12-
border: var(--eds-sizing-stroke-thin) solid var(--eds-color-border-subtle);
12+
/* Use outline instead of border to not affect height (36px target) */
13+
outline: var(--eds-sizing-stroke-thin) solid var(--eds-color-border-subtle);
14+
outline-offset: calc(-1 * var(--eds-sizing-stroke-thin));
1315
border-radius: var(--eds-spacing-border-radius-none);
1416
padding-inline: var(--eds-selectable-space-horizontal);
1517
padding-block: var(--eds-selectable-space-vertical);
18+
transition:
19+
background-color 150ms,
20+
outline-color 150ms;
1621

1722
/* Hover - only for enabled inputs */
1823
&:hover:not([data-disabled]):not([data-readonly]) {
19-
border-color: var(--eds-color-border-strong);
24+
outline-color: var(--eds-color-border-strong);
2025

2126
& .eds-input {
2227
color: var(--eds-color-text-strong);
@@ -40,15 +45,13 @@
4045

4146
/* Focus state */
4247
&:focus-within {
43-
border-color: transparent;
44-
outline: var(--eds-sizing-stroke-thick) solid
45-
var(--eds-color-border-focus);
46-
outline-offset: calc(-1 * var(--eds-sizing-stroke-thick));
48+
outline: var(--eds-sizing-stroke-thin) solid var(--eds-color-border-focus);
49+
outline-offset: var(--eds-sizing-stroke-thick);
4750
}
4851

4952
/* Invalid state */
5053
&[data-invalid] {
51-
border-color: var(--eds-color-border-medium);
54+
outline-color: var(--eds-color-border-medium);
5255

5356
&:focus-within {
5457
outline-color: var(--eds-color-border-strong);
@@ -63,7 +66,7 @@
6366
/* Disabled state */
6467
&[data-disabled] {
6568
cursor: not-allowed;
66-
border-color: transparent;
69+
outline-color: transparent;
6770

6871
& .eds-input {
6972
color: var(--eds-color-border-medium);
@@ -88,7 +91,7 @@
8891

8992
/* Readonly state */
9093
&[data-readonly] {
91-
border-color: transparent;
94+
outline-color: transparent;
9295

9396
& .eds-input {
9497
color: var(--eds-color-border-strong);

0 commit comments

Comments
 (0)