Make the app work better on iPhone and iPad
Build and Push Docker Image / build-and-push (push) Successful in 7m32s
Build and Push Docker Image / build-and-push (push) Successful in 7m32s
- Text fields are at least 16px on touch screens (stops iOS zooming on focus) - Chapter swipe ignores sheets, fields, sliders, sideways-scrolling rows and text selection - vh -> dvh for sheets, palette and dialogs - Bigger tap targets for small links, chips and the logo; no double-tap delay - No tap flash or landscape text inflation Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
bdb04cdedc
commit
d29a66f984
12 files changed
+99
-14
No files matched your search
@@ -31,6 +31,51 @@ select {
|
||||
font: inherit;
|
||||
}
|
||||
|
||||
/* iPhone and iPad: don't inflate text when the phone is turned sideways, no grey flash on tap, and no
|
||||
double-tap-to-zoom delay on controls. */
|
||||
html {
|
||||
-webkit-text-size-adjust: 100%;
|
||||
text-size-adjust: 100%;
|
||||
-webkit-tap-highlight-color: transparent;
|
||||
}
|
||||
button,
|
||||
a,
|
||||
select,
|
||||
summary,
|
||||
label,
|
||||
input,
|
||||
[role='button'],
|
||||
[role='tab'],
|
||||
[role='option'],
|
||||
[role='menuitem'] {
|
||||
touch-action: manipulation;
|
||||
}
|
||||
|
||||
/* iOS Safari zooms the whole page when a text field under 16px gets focus (and doesn't zoom back).
|
||||
On touch screens, text fields are at least 16px. */
|
||||
@media (pointer: coarse) {
|
||||
input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='color']):not([type='file']):not([type='button']):not([type='submit']),
|
||||
select:not([data-keep-size]),
|
||||
textarea:not([data-keep-size]) {
|
||||
font-size: max(16px, 1em);
|
||||
}
|
||||
|
||||
/* Small text links and buttons (no padding of their own) get a finger-sized height. */
|
||||
:is(button, a).text-xs:not([class^='p-'], [class^='py-'], [class*=' p-'], [class*=' py-']) {
|
||||
padding-block: 0.55rem;
|
||||
}
|
||||
|
||||
/* Small pill buttons (tags, chips) keep their look but get a bigger area to tap. */
|
||||
:where(button.rounded-full) {
|
||||
position: relative;
|
||||
}
|
||||
:where(button.rounded-full)::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
inset: -7px -3px;
|
||||
}
|
||||
}
|
||||
|
||||
/* Top bars leave room for the status bar / notch when the app is installed or full-screen
|
||||
(env() is 0 in an ordinary browser tab). */
|
||||
.safe-top {
|
||||
|
||||
Reference in new issue
Block a user