К обсуждениям

Safari Technology Preview 251: пустой orthogonal block растягивает строку

Редакция VOne Технологии

Safari Technology Preview 251: пустой block с ортогональным writing-mode внутри inline необоснованно растягивает line box. People-first проверка: профиль строки «writing-mode → empty box rect → baseline → line height»; синтетический стенд, опровержимый контроль, один обратимый шаг, stop-line и минимизированный handoff.

Ответ и граница: Rendering

Надёжный ответ появляется только после явного baseline и способного опровергнуть гипотезу контроля. Запрос «как проверить высоту строки с пустым orthogonal block внутри inline в Safari Technology Preview 251» относится только к ситуации: пустой block с ортогональным writing-mode внутри inline необоснованно растягивает line box. Условие успеха записывается до запуска: пустой orthogonal box не увеличивает line box сверх геометрии контрольной пустой строки. Внешне похожая ошибка сама по себе ничего не доказывает; отдельно проверяется ловушка «реальный размер border box, ошибочно принятый за паразитное растяжение пустого orthogonal block». До опыта определите, что будет считаться invalid и unknown. Это защищает от вывода по отсутствующему API, случайному exception или одновременной смене нескольких условий. Производственный сайт, реальный аккаунт и пользовательские данные исключены.

Что подтверждают Release 251 и 318659@main

Официальные WebKit Release Notes датированы 26 августа 2026 года и для Safari Technology Preview 251 сообщают: исправлено растягивание строки пустым orthogonal block, вложенным в inline box. Строка релиза ведёт к первичной записи 318659@main; её commit title и доступность перепроверены 29 августа. Факт релиза отделён от спроса: прямые страницы подтверждают формулировку change item, тогда как реакции форума и поисковые snippets не подтверждают причину либо популярность. Технический предел статьи совпадает с формулировкой 318659@main и не расширяется поисковым заголовком.

Стенд и рабочий артефакт 318659

Стенд: две одинаковые строки, где только в canary есть пустой block с writing-mode vertical-rl и нулевым содержимым. До воздействия без интерпретации запишите: writing-mode, offsetWidth, offsetHeight, line-height, rect соседнего текста, baseline marker и высота абзаца. Рабочий артефакт — профиль строки «writing-mode → empty box rect → baseline → line height». Паспорт опыта хранит только технические величины, необходимые для опровержения. Cookie, IP, bearer-данные, локальные пути, приватные URL и рабочие документы в него не попадают. Наблюдение не интерпретируется до прохождения control и финального cleanup.

Контроль, который может опровергнуть гипотезу

Control не доказывает универсальность; он проверяет, что стенд способен различить соседнюю причину. Для этой боли используется: пустой inline и непустой orthogonal block с фиксированным глифом. Он проходит тот же порядок запуска, settle-событие и набор полей, что основная ветка. Риск «реальный размер border box, ошибочно принятый за паразитное растяжение пустого orthogonal block» получает отдельный признак. Контроль проходит то же settle-событие и те же поля. Его задача — различить механизм, поэтому совпавший сбой закрывает прогон статусом invalid. Такой дизайн делает тезис опровержимым и не требует доступа к исходным данным пользователя.

Одно обратимое воздействие

Разрешён один шаг: переключить writing-mode единственного пустого узла horizontal-tb ↔ vertical-rl и вернуть baseline. Сначала снимите baseline, затем выполните только указанную операцию, дождитесь заранее выбранного события завершения и повторите поля «writing-mode, offsetWidth, offsetHeight, line-height, rect соседнего текста, baseline marker и высота абзаца». Протокол имеет три точки: before, one-change и after-rollback. Различие засчитывается только между сопоставимыми снимками; невосстановившееся состояние закрывает опыт. PASS допустим, когда пустой orthogonal box не увеличивает line box сверх геометрии контрольной пустой строки. Результат не усиливают словами о массовости; production, VPN, маршрутизация, чужие сайты и реальные media остаются вне опыта.

Stop-line, решение и минимальный handoff

Результат может быть reproduced, not reproduced, unsupported, environment-blocked, invalid или unknown. Остановитесь, если у узла есть border или padding, шрифт меняется, присутствует ruby или контейнер получает transform. Финальная запись хранит профиль строки «writing-mode → empty box rect → baseline → line height», результат контроля, отметку rollback и ссылку на 318659@main. Сомнительный прогон остаётся invalid или unknown, а не новой уверенной публикационной формулировкой. Масштаб вывода ограничен паспортом стенда. Воспроизводимость обеспечивают короткий fixture и рабочий артефакт, а не полный лог машины. Добавьте commit, expected, actual и отметку успешного возврата. PASS означает только условие «пустой orthogonal box не увеличивает line box сверх геометрии контрольной пустой строки». Материал не обещает индексацию, позиции, поисковый спрос, stable-поддержку или автоматическое исправление.

Материал подготовлен редакцией VOne с помощью ИИ; дата, WebKit Release 251, primary commit 318659@main, техническая граница, независимый контроль, обратимость, privacy-stop и роль community lead постатейно проверены 29 августа 2026 года.

Источники и проверка

Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.

Ответы

0 опубликовано
Ответов пока нет. Вы можете начать обсуждение.

Ваш ответ

Добавьте свой опыт или уточнение по теме.

Вы публикуете как Аноним Аватар отличает разговоры, но не раскрывает личные данные.

Ответ появится сразу. Не публикуйте личные данные, ключи и приватные ссылки.