diff --git a/.stylelintrc b/.stylelintrc
index 04784a0a11a772fc0661b6e868328cd6f5e58565..c0f21aed2926e7c48791d14fd5a83f24c0deb4dd 100644
--- a/.stylelintrc
+++ b/.stylelintrc
@@ -102,6 +102,6 @@
       "selector-pseudo-element-no-unknown":true,
       "shorthand-property-no-redundant-values":true,
       "string-quotes":"single",
-      "value-no-vendor-prefix":true
+      "value-no-vendor-prefix":[true, { ignoreValues: ["sticky"] }]
    }
 }
diff --git a/app/assets/stylesheets/framework/mixins.scss b/app/assets/stylesheets/framework/mixins.scss
index ba3b0906e2815a650606319af4bd1a1fa4092863..955ae80cd58330d266da5e7ccb6bff05445b605f 100644
--- a/app/assets/stylesheets/framework/mixins.scss
+++ b/app/assets/stylesheets/framework/mixins.scss
@@ -259,6 +259,7 @@
   background: $gray-light;
   border: 1px solid $border-color;
   color: $gl-text-color;
+  position: -webkit-sticky;
   position: sticky;
   top: $header-height;
   padding: $grid-size;
diff --git a/app/assets/stylesheets/pages/diff.scss b/app/assets/stylesheets/pages/diff.scss
index 0dbbe9e4c25f3852facb2726963905c70ebd3e63..84be53787b58dbb7b44d75c64bae79d09ab1c0a9 100644
--- a/app/assets/stylesheets/pages/diff.scss
+++ b/app/assets/stylesheets/pages/diff.scss
@@ -9,6 +9,7 @@
     @media (min-width: map-get($grid-breakpoints, md)) {
       $mr-file-header-top: $mr-version-controls-height + $header-height + $mr-tabs-height;
 
+      position: -webkit-sticky;
       position: sticky;
       top: $mr-file-header-top;
       z-index: 102;
@@ -721,6 +722,7 @@
   }
 
   @include media-breakpoint-up(sm) {
+    position: -webkit-sticky;
     position: sticky;
     top: $header-height;
     background-color: $white-light;
@@ -1011,6 +1013,7 @@
 }
 
 .diff-tree-list {
+  position: -webkit-sticky;
   position: sticky;
   $top-pos: $header-height + $mr-tabs-height + $mr-version-controls-height + 10px;
   top: $header-height + $mr-tabs-height + $mr-version-controls-height + 10px;
diff --git a/app/assets/stylesheets/pages/merge_requests.scss b/app/assets/stylesheets/pages/merge_requests.scss
index e73d1a1289df0d862e4ca844f8baf538129c8597..126b00af55289cbdc9c51dacda6ad2c3d790a9db 100644
--- a/app/assets/stylesheets/pages/merge_requests.scss
+++ b/app/assets/stylesheets/pages/merge_requests.scss
@@ -784,6 +784,7 @@
   }
 
   @include media-breakpoint-up(md) {
+    position: -webkit-sticky;
     position: sticky;
     top: $header-height + $mr-tabs-height;
     width: 100%;
@@ -810,6 +811,7 @@
   border-bottom: 1px solid $border-color;
 
   @include media-breakpoint-up(sm) {
+    position: -webkit-sticky;
     position: sticky;
   }