Лента

Лента

Сегодня

Вчера

Ранее

Данные вымышленные. Экран нужен, чтобы проверить инерционный скролл, разделители и схлопывание крупного заголовка.

Оболочка

Эти три переключателя реально управляют оболочкой — выключи и посмотри, что изменится.

Связь

Уведомления

Состояние переключателей живёт только в памяти вкладки: localStorage сознательно не используется.

Заявка на сеанс

Приоритет

Параметры

Повторов 2

Комментарий

Ничего никуда не уходит: форма показывает только поведение полей, клавиатуры и кнопок.

VERSION — кэш не определён

Режим отображения

display-mode: standalone —
navigator.standalone —
Активный режим —

Значения выводятся отдельно: matchMedia работает везде, navigator.standalone — только в Safari на iOS.

Сеть

navigator.onLine —
Последнее событие —

Service Worker

Зарегистрирован —
Контролирует страницу —
Состояние —
Scope —

Safe area

safe-area-inset-top —
safe-area-inset-bottom —
Вьюпорт —
Экран —
Мёртвая полоса снизу —
Зазор под таб-баром —

Единицы высоты

100vh—
100dvh—
100lvh—
100svh—
бокс position: fixed; inset: 0 —
--app-h сейчас—
фон таб-бара—
status-bar-style в DOM—

Сырые замеры

window.innerHeight —
documentElement.clientHeight —
visualViewport.height —
visualViewport.offsetTop —
screen.height —
window.screenX / screenY —
таб-бар rect.top / rect.bottom —
шапка rect.top —

padding-top / padding-bottom

html —
body —
.app —
высоты html / body / .app —

Зазор: два замера

старый: innerHeight − rect.bottom —
новый: screen − (offsetTop + rect.bottom) —
предки бара с containing block —

Хранилище

Занято —
Квота —

User Agent

—

Пока экран открыт, значения обновляются вживую.