Skip to content

Remove Internet Explorer specific CSS hacks, bugfixes and styles#6993

Draft
querkmachine wants to merge 4 commits into
mainfrom
remove-ie-css-hacks
Draft

Remove Internet Explorer specific CSS hacks, bugfixes and styles#6993
querkmachine wants to merge 4 commits into
mainfrom
remove-ie-css-hacks

Conversation

@querkmachine
Copy link
Copy Markdown
Member

@querkmachine querkmachine commented Apr 28, 2026

We ended support for all versions of IE in Frontend v6, so these styles aren't needed anymore.

Warning

...OR DID WE??

Some of the hacks (particularly @media (min-width: 0\0) and probably @media screen\0) can trip up CSS post-processors and validation tools, so it's nice to get rid of them.

This retains hacks connected to EdgeHTML (pre-Chromium) versions of Microsoft Edge, as those are still considered Grade C by our current browser support criteria. I've also added a little more detail to a style intended for older versions of Safari.

We ended support for all versions of IE in Frontend v6, so these styles aren't needed anymore. Some of the media query and selector hacks get flagged as invalid CSS as well, which isn't ideal!

This retains hacks for EdgeHTML/pre-Chromium versions of Microsoft Edge, as those are still considered Grade C in our current browser support criteria.
Due to supporting IE, these previously set a hover state and then removed it from user agents that didn't require it. Having ended support for IE, we can now only set the hover state if it's needed.
@querkmachine querkmachine requested a review from a team April 28, 2026 11:02
@querkmachine querkmachine self-assigned this Apr 28, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 28, 2026

Stylesheets changes to npm package

diff --git a/packages/govuk-frontend/dist/govuk/govuk-frontend.min.css b/packages/govuk-frontend/dist/govuk/govuk-frontend.min.css
index 1e80782ff..a0bdb51cf 100644
--- a/packages/govuk-frontend/dist/govuk/govuk-frontend.min.css
+++ b/packages/govuk-frontend/dist/govuk/govuk-frontend.min.css
@@ -711,7 +711,6 @@
     font-size: 1.1875rem;
     line-height: 1;
     display: inline-block;
-    max-width: 100%;
     margin-top: 5px;
     margin-bottom: 20px;
     text-align: center
@@ -940,7 +939,6 @@
 }
 
 .govuk-main-wrapper {
-    display: block;
     padding-top: 20px;
     padding-bottom: 20px
 }
@@ -982,12 +980,6 @@
     }
 }
 
-@media screen {
-    .govuk-template {
-        overflow-y: scroll
-    }
-}
-
 .govuk-template__body {
     margin: 0;
     background-color: var(--govuk-body-background-colour, #fff)
@@ -2136,7 +2128,6 @@
     font-size: 1.1875rem;
     line-height: 1.3157894737;
     box-sizing: border-box;
-    display: table;
     max-width: 100%;
     margin-bottom: 10px;
     padding: 0;
@@ -2280,7 +2271,6 @@
     transform: rotate(-45deg);
     border: solid;
     border-width: 0 0 5px 5px;
-    border-top-color: transparent;
     opacity: 0
 }
 
@@ -2411,25 +2401,16 @@ screen and (forced-colors:active) {
     box-shadow: 0 0 0 10px var(--govuk-hover-colour, #cecece)
 }
 
-.govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus+.govuk-checkboxes__label:before {
-    box-shadow: 0 0 0 3px var(--govuk-focus-colour, #fd0), 0 0 0 10px var(--govuk-hover-colour, #cecece)
-}
-
-@media (-ms-high-contrast:active),
-screen and (forced-colors:active) {
+@media (hover:hover) {
     .govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus+.govuk-checkboxes__label:before {
-        outline-color: Highlight
+        box-shadow: 0 0 0 3px var(--govuk-focus-colour, #fd0), 0 0 0 10px var(--govuk-hover-colour, #cecece)
     }
 }
 
-@media (hover:none),
-(pointer:coarse) {
-    .govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:not(:disabled)+.govuk-checkboxes__label:before {
-        box-shadow: none
-    }
-
+@media (hover:hover) and (-ms-high-contrast:active),
+screen and (hover:hover) and (forced-colors:active) {
     .govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus+.govuk-checkboxes__label:before {
-        box-shadow: 0 0 0 3px var(--govuk-focus-colour, #fd0)
+        outline-color: Highlight
     }
 }
 
@@ -2719,29 +2700,6 @@ screen and (forced-colors:active) {
     margin-bottom: 0
 }
 
-@media screen\0 {
-    .govuk-details {
-        border-left: 10px solid;
-        border-left-color: var(--govuk-border-colour, #cecece)
-    }
-
-    .govuk-details__summary {
-        margin-top: 15px
-    }
-
-    .govuk-details__summary-text {
-        font-weight: 700;
-        margin-bottom: 15px;
-        padding-left: 20px
-    }
-}
-
-@media screen\0 and (min-width:40.0625em) {
-    .govuk-details__summary-text {
-        margin-bottom: 20px
-    }
-}
-
 @supports not (-ms-ime-align:auto) {
     .govuk-details__summary {
         position: relative;
@@ -4148,7 +4106,6 @@ screen and (forced-colors:active) {
 @media (max-width:40.0525em) {
     .govuk-panel {
         padding: 15px;
-        word-wrap: break-word;
         overflow-wrap: break-word
     }
 }
@@ -4554,25 +4511,16 @@ screen and (forced-colors:active) {
     box-shadow: 0 0 0 10px var(--govuk-hover-colour, #cecece)
 }
 
-.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus+.govuk-radios__label:before {
-    box-shadow: 0 0 0 4px var(--govuk-focus-colour, #fd0), 0 0 0 10px var(--govuk-hover-colour, #cecece)
-}
-
-@media (-ms-high-contrast:active),
-screen and (forced-colors:active) {
+@media (hover:hover) {
     .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus+.govuk-radios__label:before {
-        outline-color: Highlight
+        box-shadow: 0 0 0 4px var(--govuk-focus-colour, #fd0), 0 0 0 10px var(--govuk-hover-colour, #cecece)
     }
 }
 
-@media (hover:none),
-(pointer:coarse) {
-    .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:not(:disabled)+.govuk-radios__label:before {
-        box-shadow: none
-    }
-
+@media (hover:hover) and (-ms-high-contrast:active),
+screen and (hover:hover) and (forced-colors:active) {
     .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus+.govuk-radios__label:before {
-        box-shadow: 0 0 0 4px var(--govuk-focus-colour, #fd0)
+        outline-color: Highlight
     }
 }
 
@@ -4882,12 +4830,6 @@ screen and (forced-colors:active) {
     }
 }
 
-@media screen and (min-width:40.0625em) and (min-width:0\0) {
-    .govuk-service-navigation__list {
-        display: block
-    }
-}
-
 .govuk-service-navigation__active-fallback {
     font-weight: inherit
 }
@@ -4940,14 +4882,13 @@ screen and (forced-colors:active) {
     padding: 10px 15px
 }
 
-.govuk-skip-link:not(:active):not(:focus):not(.\:focus) {
+.govuk-skip-link:not(:active):not(.\:focus):not(:focus) {
     position: absolute !important;
     width: 1px !important;
     height: 1px !important;
     margin: 0 !important;
     padding: 0 !important;
     overflow: hidden !important;
-    clip: rect(0 0 0 0) !important;
     -webkit-clip-path: inset(50%) !important;
     clip-path: inset(50%) !important;
     border: 0 !important;
@@ -5283,10 +5224,6 @@ screen and (forced-colors:active) {
 
 @media (-ms-high-contrast:none),
 screen and (-ms-high-contrast:active) {
-    .govuk-summary-card__action {
-        margin-bottom: 5px
-    }
-
     .govuk-summary-card__action:last-child {
         margin-bottom: 0
     }
@@ -5827,7 +5764,6 @@ screen and (-ms-high-contrast:active) {
     margin: 0 !important;
     padding: 0 !important;
     overflow: hidden !important;
-    clip: rect(0 0 0 0) !important;
     -webkit-clip-path: inset(50%) !important;
     clip-path: inset(50%) !important;
     border: 0 !important;
@@ -5842,14 +5778,13 @@ screen and (-ms-high-contrast:active) {
     content: " "
 }
 
-.govuk-visually-hidden-focusable:not(:active):not(:focus):not(.\:focus) {
+.govuk-visually-hidden-focusable:not(:active):not(.\:focus):not(:focus) {
     position: absolute !important;
     width: 1px !important;
     height: 1px !important;
     margin: 0 !important;
     padding: 0 !important;
     overflow: hidden !important;
-    clip: rect(0 0 0 0) !important;
     -webkit-clip-path: inset(50%) !important;
     clip-path: inset(50%) !important;
     border: 0 !important;

Action run for 0678d3b

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 28, 2026

Other changes to npm package

diff --git a/packages/govuk-frontend/dist/govuk/components/checkboxes/_mixin.scss b/packages/govuk-frontend/dist/govuk/components/checkboxes/_mixin.scss
index 295c2339f..cc600bfa0 100644
--- a/packages/govuk-frontend/dist/govuk/components/checkboxes/_mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/components/checkboxes/_mixin.scss
@@ -78,9 +78,6 @@
     transform: rotate(-45deg);
     border: solid;
     border-width: 0 0 5px 5px;
-    // Fix bug in IE11 caused by transform rotate (-45deg).
-    // See: alphagov/govuk_elements/issues/518
-    border-top-color: transparent;
     opacity: 0;
     background: transparent;
   }
@@ -280,30 +277,18 @@
     //
     // We use two box shadows, one that restores the original focus state [1]
     // and another that then applies the hover state [2].
-    .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus + .govuk-checkboxes__label::before {
-      // Set different HCM colour when we have both hover/focus applied at once
-      @media screen and (forced-colors: active), (-ms-high-contrast: active) {
-        outline-color: Highlight;
-      }
-      // prettier-ignore
-      box-shadow:
-        0 0 0 base.$govuk-focus-width base.govuk-functional-colour(focus), // 1
-        0 0 0 base.$govuk-hover-width base.govuk-functional-colour(hover); // 2
-    }
-
-    // For devices that explicitly don't support hover, don't provide a hover
-    // state (e.g. on touch devices like iOS).
     //
-    // We can't use `@media (hover: hover)` because we wouldn't get the hover
-    // state in browsers that don't support `@media (hover)` (like Internet
-    // Explorer) – so we have to 'undo' the hover state instead.
-    @media (hover: none), (pointer: coarse) {
-      .govuk-checkboxes__item:hover .govuk-checkboxes__input:not(:disabled) + .govuk-checkboxes__label::before {
-        box-shadow: initial;
-      }
-
+    // We only want this to apply to browsers that support hover states.
+    @media (hover: hover) {
       .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus + .govuk-checkboxes__label::before {
-        box-shadow: 0 0 0 base.$govuk-focus-width base.govuk-functional-colour(focus);
+        // Set different HCM colour when we have both hover/focus applied at once
+        @media screen and (forced-colors: active), (-ms-high-contrast: active) {
+          outline-color: Highlight;
+        }
+        // prettier-ignore
+        box-shadow:
+          0 0 0 base.$govuk-focus-width base.govuk-functional-colour(focus), // 1
+          0 0 0 base.$govuk-hover-width base.govuk-functional-colour(hover); // 2
       }
     }
   }
diff --git a/packages/govuk-frontend/dist/govuk/components/details/_mixin.scss b/packages/govuk-frontend/dist/govuk/components/details/_mixin.scss
index 83d5dd270..dce9bfade 100644
--- a/packages/govuk-frontend/dist/govuk/components/details/_mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/components/details/_mixin.scss
@@ -44,26 +44,6 @@
     margin-bottom: 0;
   }
 
-  // Hack to target IE8 - IE11 (and REALLY old Firefox)
-  // These browsers don't support the details element, so fall back to looking
-  // like inset text
-  @media screen\0 {
-    .govuk-details {
-      border-left: base.$govuk-border-width-wide solid;
-      border-left-color: base.govuk-functional-colour(border);
-    }
-
-    .govuk-details__summary {
-      margin-top: base.govuk-spacing(3);
-    }
-
-    .govuk-details__summary-text {
-      @include base.govuk-typography-weight-bold;
-      @include base.govuk-responsive-margin(4, "bottom");
-      padding-left: base.govuk-spacing(4);
-    }
-  }
-
   // We wrap styles for newer browsers in a feature query, which is ignored by
   // older browsers, which always expand the details element.
   //
diff --git a/packages/govuk-frontend/dist/govuk/components/fieldset/_mixin.scss b/packages/govuk-frontend/dist/govuk/components/fieldset/_mixin.scss
index c230362e9..2152f5fae 100644
--- a/packages/govuk-frontend/dist/govuk/components/fieldset/_mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/components/fieldset/_mixin.scss
@@ -23,16 +23,12 @@
   .govuk-fieldset__legend {
     @include base.govuk-font($size: 19);
 
-    // Fix legend text wrapping in Edge and IE
-    // 1. IE9-11 & Edge 12-13
-    // 2. IE8-11
+    // 1. Fix legend text wrapping in IE9-11 & Edge 12-13
     box-sizing: border-box; // 1
-    display: table; // 2
     max-width: 100%; // 1
     margin-bottom: base.govuk-spacing(2);
     padding: 0;
     color: base.govuk-functional-colour(text);
-
     white-space: normal; // 1
   }
 
diff --git a/packages/govuk-frontend/dist/govuk/components/panel/_mixin.scss b/packages/govuk-frontend/dist/govuk/components/panel/_mixin.scss
index 566c3998c..1937e7d3c 100644
--- a/packages/govuk-frontend/dist/govuk/components/panel/_mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/components/panel/_mixin.scss
@@ -17,9 +17,6 @@
     @media #{base.govuk-until-breakpoint(tablet)} {
       padding: base.govuk-spacing(4) - base.$govuk-border-width;
 
-      // Support IE (autoprefixer doesn't add this as it's not a prefix)
-      word-wrap: break-word;
-
       // This is an if-all-else-fails attempt to stop long words from
       // overflowing the container on very narrow viewports by forcing them to
       // break and wrap instead. This overflowing is more likely to happen when
diff --git a/packages/govuk-frontend/dist/govuk/components/password-input/_mixin.scss b/packages/govuk-frontend/dist/govuk/components/password-input/_mixin.scss
index edf5bbca5..0d23527de 100644
--- a/packages/govuk-frontend/dist/govuk/components/password-input/_mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/components/password-input/_mixin.scss
@@ -19,8 +19,8 @@
   }
 
   .govuk-password-input__input {
-    // IE 11 and Microsoft Edge comes with its own password reveal function. We
-    // want to hide it, so that there aren't two controls presented to the user
+    // Microsoft Edge comes with its own password reveal function. We want
+    // to hide it, so that there aren't two controls presented to the user
     // that do the same thing but aren't in sync with one another. This doesn't
     // affect the function that allows Edge users to toggle password visibility
     // by pressing Alt+F8, which cannot be programmatically disabled.
diff --git a/packages/govuk-frontend/dist/govuk/components/radios/_mixin.scss b/packages/govuk-frontend/dist/govuk/components/radios/_mixin.scss
index 7fdfe3a9f..011049c7a 100644
--- a/packages/govuk-frontend/dist/govuk/components/radios/_mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/components/radios/_mixin.scss
@@ -299,30 +299,18 @@
     //
     // We use two box shadows, one that restores the original focus state [1]
     // and another that then applies the hover state [2].
-    .govuk-radios__item:hover .govuk-radios__input:focus + .govuk-radios__label::before {
-      // Set different HCM colour when we have both hover/focus applied at once
-      @media screen and (forced-colors: active), (-ms-high-contrast: active) {
-        outline-color: Highlight;
-      }
-      // prettier-ignore
-      box-shadow:
-        0 0 0 $govuk-radios-focus-width base.govuk-functional-colour(focus), // 1
-        0 0 0 base.$govuk-hover-width base.govuk-functional-colour(hover); // 2
-    }
-
-    // For devices that explicitly don't support hover, don't provide a hover
-    // state (e.g. on touch devices like iOS).
     //
-    // We can't use `@media (hover: hover)` because we wouldn't get the hover
-    // state in browsers that don't support `@media (hover)` (like Internet
-    // Explorer) – so we have to 'undo' the hover state instead.
-    @media (hover: none), (pointer: coarse) {
-      .govuk-radios__item:hover .govuk-radios__input:not(:disabled) + .govuk-radios__label::before {
-        box-shadow: initial;
-      }
-
+    // We only want this to apply to browsers that support hover states.
+    @media (hover: hover) {
       .govuk-radios__item:hover .govuk-radios__input:focus + .govuk-radios__label::before {
-        box-shadow: 0 0 0 $govuk-radios-focus-width base.govuk-functional-colour(focus);
+        // Set different HCM colour when we have both hover/focus applied at once
+        @media screen and (forced-colors: active), (-ms-high-contrast: active) {
+          outline-color: Highlight;
+        }
+        // prettier-ignore
+        box-shadow:
+          0 0 0 $govuk-radios-focus-width base.govuk-functional-colour(focus), // 1
+          0 0 0 base.$govuk-hover-width base.govuk-functional-colour(hover); // 2
       }
     }
   }
diff --git a/packages/govuk-frontend/dist/govuk/components/service-navigation/_mixin.scss b/packages/govuk-frontend/dist/govuk/components/service-navigation/_mixin.scss
index 96d26fc6c..f7e3cb0ea 100644
--- a/packages/govuk-frontend/dist/govuk/components/service-navigation/_mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/components/service-navigation/_mixin.scss
@@ -174,16 +174,6 @@
       display: flex;
       flex-wrap: wrap;
       margin-bottom: 0;
-
-      // However... IE11 totally trips over flexbox and doesn't wrap anything,
-      // making all of the items into a single, horizontally scrolling row,
-      // which is no good. This CSS hack removes the flexbox definition for
-      // IE 9–11, reverting it to the flawed, but OK, non-flexbox version.
-      //
-      // CSS hack from http://browserhacks.com/#hack-a60b03e301a67f76a5a22221c739dc64
-      @media screen and (min-width: 0\0) {
-        display: block;
-      }
     }
   }
 
diff --git a/packages/govuk-frontend/dist/govuk/components/summary-list/_mixin.scss b/packages/govuk-frontend/dist/govuk/components/summary-list/_mixin.scss
index 18de5472b..c8bb4a62b 100644
--- a/packages/govuk-frontend/dist/govuk/components/summary-list/_mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/components/summary-list/_mixin.scss
@@ -244,19 +244,6 @@
 
   .govuk-summary-card__action {
     display: inline;
-
-    // We use the following media query to target IE11 and 10 only to add margin
-    // between actions.
-    //
-    // We do this because we're using row-gap to create space between actions on
-    // more evergreen browsers which IE doesn't support. @supports currently isn't
-    // a viable solution, see https://github.com/w3c/csswg-drafts/issues/3559.
-    //
-    // Solution taken from https://stackoverflow.com/questions/11173106/apply-style-only-on-ie#answer-36448860
-    // which also includes an explanation of why this works
-    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
-      margin-bottom: base.govuk-spacing(1);
-    }
   }
 
   .govuk-summary-card__action:last-child {
diff --git a/packages/govuk-frontend/dist/govuk/helpers/_links.scss b/packages/govuk-frontend/dist/govuk/helpers/_links.scss
index 332854078..b94093fd1 100644
--- a/packages/govuk-frontend/dist/govuk/helpers/_links.scss
+++ b/packages/govuk-frontend/dist/govuk/helpers/_links.scss
@@ -59,9 +59,9 @@
     // Disable ink skipping on underlines on hover. Browsers haven't
     // standardised on this part of the spec yet, so set both properties
     -webkit-text-decoration-skip-ink: none;
-            text-decoration-skip-ink: none; // Chromium, Firefox
+            text-decoration-skip-ink: none; // Chromium, Firefox, Safari 15.4+
     -webkit-text-decoration-skip: none;
-            text-decoration-skip: none; // Safari
+            text-decoration-skip: none; // Safari 12.1–15.3
   }
 }
 
diff --git a/packages/govuk-frontend/dist/govuk/helpers/_visually-hidden.scss b/packages/govuk-frontend/dist/govuk/helpers/_visually-hidden.scss
index 134283629..ca78ba018 100644
--- a/packages/govuk-frontend/dist/govuk/helpers/_visually-hidden.scss
+++ b/packages/govuk-frontend/dist/govuk/helpers/_visually-hidden.scss
@@ -26,9 +26,6 @@
   padding: 0 govuk-if($important, !important);
 
   overflow: hidden govuk-if($important, !important);
-
-  // `clip` is needed for IE11 support
-  clip: rect(0 0 0 0) govuk-if($important, !important);
   -webkit-clip-path: inset(50%) govuk-if($important, !important);
           clip-path: inset(50%) govuk-if($important, !important);
 
@@ -78,11 +75,10 @@
 /// @access public
 
 @mixin govuk-visually-hidden-focusable($important: true) {
-  // IE 11 doesn't support the combined `:not(:active, :focus)` syntax.
   // Also allows for ':focus' companion classes from postcss-pseudo-classes
   // which the plugin unfortunately doesn't handle automatically.
   // stylelint-disable-next-line selector-class-pattern
-  &:not(:active):not(:focus):not(.\:focus) {
+  &:not(:active):not(.\:focus):not(:focus) {
     @include _govuk-visually-hide-content($important: $important);
   }
 }
diff --git a/packages/govuk-frontend/dist/govuk/objects/_button-group.mixin.scss b/packages/govuk-frontend/dist/govuk/objects/_button-group.mixin.scss
index ad6d3c337..c5212df0c 100644
--- a/packages/govuk-frontend/dist/govuk/objects/_button-group.mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/objects/_button-group.mixin.scss
@@ -42,9 +42,6 @@
     .govuk-link {
       @include base.govuk-font($size: 19, $line-height: 19px);
       display: inline-block;
-      // Prevent links overflowing their container in IE10/11 because of bug
-      // with align-items: center
-      max-width: 100%;
       margin-top: $link-spacing;
       margin-bottom: $link-spacing + $vertical-gap;
       text-align: center;
diff --git a/packages/govuk-frontend/dist/govuk/objects/_main-wrapper.mixin.scss b/packages/govuk-frontend/dist/govuk/objects/_main-wrapper.mixin.scss
index b447b35f6..b3bbc75b7 100644
--- a/packages/govuk-frontend/dist/govuk/objects/_main-wrapper.mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/objects/_main-wrapper.mixin.scss
@@ -24,10 +24,6 @@
 /// @access private
 @mixin styles {
   .govuk-main-wrapper {
-    // In IE11 the `main` element can be used, but is not recognized  –
-    // meaning it's not defined in IE's default style sheet,
-    // so it uses CSS initial value, which is inline.
-    display: block;
     padding-top: base.govuk-spacing(4);
     padding-bottom: base.govuk-spacing(4);
 
diff --git a/packages/govuk-frontend/dist/govuk/objects/_template.mixin.scss b/packages/govuk-frontend/dist/govuk/objects/_template.mixin.scss
index 30192ad2d..cdad156bf 100644
--- a/packages/govuk-frontend/dist/govuk/objects/_template.mixin.scss
+++ b/packages/govuk-frontend/dist/govuk/objects/_template.mixin.scss
@@ -33,12 +33,6 @@
         scroll-padding-top: 0;
       }
     }
-
-    // Force the scrollbar to always display in IE, to prevent horizontal page
-    // jumps as content height changes (e.g. autocomplete results open).
-    @media screen {
-      overflow-y: scroll;
-    }
   }
 
   // Applied to the <body> element

Action run for 0678d3b

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 28, 2026

📋 Stats

File sizes

File Size Percentage change
dist/govuk-frontend-development.min.css 118.64 KiB -1%
packages/govuk-frontend/dist/govuk/govuk-frontend.min.css 118.63 KiB -1%

No changes to module sizes.


Action run for 0678d3b

@govuk-design-system-ci govuk-design-system-ci temporarily deployed to govuk-frontend-pr-6993 April 28, 2026 11:19 Inactive
overflow: hidden govuk-if($important, !important);

// `clip` is needed for IE11 support
clip: rect(0 0 0 0) govuk-if($important, !important);
Copy link
Copy Markdown
Contributor

@NickColley NickColley Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like given that IE11 may be used by some disabled people using assistive technologies (screen readers) that maybe this is justified to leave in if it's not causing any grief for users?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants