aboutsummaryrefslogtreecommitdiff
path: root/scss/forms
diff options
context:
space:
mode:
authorTanguy Krotoff <[email protected]>2023-01-18 06:09:39 +0100
committerGitHub <[email protected]>2023-01-17 21:09:39 -0800
commit1369b81492a5368ac40dbfac3d6553e32065f706 (patch)
treec2008cced14753fa374664c546c2533bd853dfa7 /scss/forms
parent16aff741ecf47b2ce682b625c1a6ab3ae80f8256 (diff)
downloadbootstrap-1369b81492a5368ac40dbfac3d6553e32065f706.tar.xz
bootstrap-1369b81492a5368ac40dbfac3d6553e32065f706.zip
Fix Android Chrome input date dimensions (#36143)
* Bind Hugo to 0.0.0.0, helps debug on mobile when on the same network * Use http-server for visual tests * Add input visual tests * Fix input date dimensions on Android Chrome * Increase bootstrap.css max size * Revert "Bind Hugo to 0.0.0.0" & "Use http-server for visual tests" * Switch to pixels: this is an empirical minimum safe value * Update .bundlewatch.config.json Co-authored-by: Mark Otto <[email protected]>
Diffstat (limited to 'scss/forms')
-rw-r--r--scss/forms/_form-control.scss18
1 files changed, 15 insertions, 3 deletions
diff --git a/scss/forms/_form-control.scss b/scss/forms/_form-control.scss
index c81e3b4ea..ab72654d3 100644
--- a/scss/forms/_form-control.scss
+++ b/scss/forms/_form-control.scss
@@ -44,12 +44,24 @@
}
}
- // Add some height to date inputs on iOS
- // https://github.com/twbs/bootstrap/issues/23307
- // TODO: we can remove this workaround once https://bugs.webkit.org/show_bug.cgi?id=198959 is resolved
&::-webkit-date-and-time-value {
+ // On Android Chrome, form-control's "width: 100%" makes the input width too small
+ // Tested under Android 11 / Chrome 89, Android 12 / Chrome 100, Android 13 / Chrome 109
+ //
+ // On iOS Safari, form-control's "appearance: none" + "width: 100%" makes the input width too small
+ // Tested under iOS 16.2 / Safari 16.2
+ min-width: 85px; // Seems to be a good minimum safe width
+
+ // Add some height to date inputs on iOS
+ // https://github.com/twbs/bootstrap/issues/23307
+ // TODO: we can remove this workaround once https://bugs.webkit.org/show_bug.cgi?id=198959 is resolved
// Multiply line-height by 1em if it has no unit
height: if(unit($input-line-height) == "", $input-line-height * 1em, $input-line-height);
+
+ // Android Chrome type="date" is taller than the other inputs
+ // because of "margin: 1px 24px 1px 4px" inside the shadow DOM
+ // Tested under Android 11 / Chrome 89, Android 12 / Chrome 100, Android 13 / Chrome 109
+ margin: 0;
}
// Prevent excessive date input height in Webkit