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

Safari Technology Preview 251: пробел перед block внутри inline

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

Safari Technology Preview 251: хвостовой пробел перед block-level box внутри inline оставляет лишнюю ширину или перенос. People-first проверка: карта пробела «DOM offset → Range rect → line index → видимый gap»; синтетический стенд, опровержимый контроль, один обратимый шаг, stop-line и минимизированный handoff.

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

Этот запрос решается сравнением двух воспроизводимых веток на синтетическом стенде. Запрос «как проверить схлопывание trailing whitespace перед block внутри inline в Safari Technology Preview 251» относится только к ситуации: хвостовой пробел перед block-level box внутри inline оставляет лишнюю ширину или перенос. Условие успеха записывается до запуска: добавленный пробел не создаёт отдельный видимый gap или перенос перед block, а контрольная геометрия стабильна. Внешне похожая ошибка сама по себе ничего не доказывает; отдельно проверяется ловушка «разница метрик шрифта или zoom, ошибочно принятая за правило whitespace collapsing». Граница намеренно узкая: один механизм, один synthetic fixture и одна версия. Любой соседний сбой получает отдельную гипотезу, а не подгоняется под этот commit. Производственный сайт, реальный аккаунт и пользовательские данные исключены.

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

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

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

Стенд: минимальный абзац с текстовым узлом, одним ASCII-пробелом и block внутри inline при отключённых шрифтах сети. До воздействия без интерпретации запишите: textContent, DOM offsets, client rect каждого Range, число line boxes, ширина контейнера и screenshot crop. Рабочий артефакт — карта пробела «DOM offset → Range rect → line index → видимый gap». Собирайте только allowlist полей стенда и отметку валидности. Любая потребность в реальном аккаунте, полном логе, адресе, секрете или содержимом пользователя немедленно останавливает эксперимент. Наблюдение не интерпретируется до прохождения control и финального cleanup.

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

Отрицательная ветка нужна, чтобы одинаковый внешний результат не подменил одинаковую причину. Для этой боли используется: пара без пробела и пара с обычным block вне inline при той же типографике. Он проходит тот же порядок запуска, settle-событие и набор полей, что основная ветка. Риск «разница метрик шрифта или zoom, ошибочно принятая за правило whitespace collapsing» получает отдельный признак. Положительный результат допустим лишь при валидной отрицательной ветке. Отказ обеих веток показывает проблему fixture либо среды и блокирует технический вывод. Такой дизайн делает тезис опровержимым и не требует доступа к исходным данным пользователя.

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

Разрешён один шаг: добавить ровно один хвостовой пробел перед вложенным block и затем удалить его для rollback. Сначала снимите baseline, затем выполните только указанную операцию, дождитесь заранее выбранного события завершения и повторите поля «textContent, DOM offsets, client rect каждого Range, число line boxes, ширина контейнера и screenshot crop». Не добавляйте вторую мутацию. Сначала запишите исходное состояние, затем одну проверку, а в конце докажите возврат тем же набором полей. PASS допустим, когда добавленный пробел не создаёт отдельный видимый gap или перенос перед block, а контрольная геометрия стабильна. Результат не усиливают словами о массовости; production, VPN, маршрутизация, чужие сайты и реальные media остаются вне опыта.

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

Любое расхождение сначала проверяют повтором baseline после rollback. Остановитесь, если white-space не normal, включена редактура DOM, webfont не загрузился или ширина контейнера меняется. Финальная запись хранит карта пробела «DOM offset → Range rect → line index → видимый gap», результат контроля, отметку rollback и ссылку на 318653@main. Решение хранится как один из шести статусов с причиной. Это не прогноз stable Safari и не обещание автоматического исправления проекта. Разработчику передают минимальный код, обезличенную таблицу, статус control/cleanup и ссылку на commit. Полный профиль браузера или пользовательский контент не нужен. PASS означает только условие «добавленный пробел не создаёт отдельный видимый gap или перенос перед block, а контрольная геометрия стабильна». Материал не обещает индексацию, позиции, поисковый спрос, stable-поддержку или автоматическое исправление.

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

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

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

Ответы

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

Ваш ответ

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

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

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