Проблемы/артефакты рендеринга Safari 6 (на Mountain Lion)

Последнее обновление Я только что получил электронное письмо от Apple, подтверждающее, что эта ошибка была исправлена ​​в OS X Mountain Lion 10.8.3.


У меня были проблемы с рендерингом в Safari 6 на разных системах, на которых работает Mountain Lion, и я не могу найти решение. Я приложил несколько скриншотов, чтобы описать проблему.

Обновление . Дальнейшее исследование показывает, что это может быть проблема только с моделями Mac 2012 года, особенно с графикой HD4000.

Обновить Похоже, что артефакты не всегда появляются сразу, требуя перезагрузки и/или закрытия/повторного открытия вкладок, прежде чем они появятся.

Обновление Подтверждено, что проблема не связана с ошибкой WebKit и зарегистрирована как ошибка в Apple (проблема 12750455 от Саймона Фрейзера).

Веб-сайт Twitter Bootstrap в Safari

Веб-сайт Twitter Bootstrap в Safari

Веб-сайт Twitter Bootstrap в Firefox

Веб-сайт Twitter Bootstrap в Firefox

jsfiddle Тика в Safari

jsfiddle Тика в Safari

jsfiddle Тика в Firefox

jsfiddle Тика в Firefox

Ссылки на сайты, показанные на скриншотах:

Я попытался немного отредактировать текст, но прежде чем я попытаюсь предложить другой сайт, который был бы лучше, и перенести его, не могли бы вы уточнить, что вы ищете в первую очередь? Вы хотите, чтобы речь шла о JQuery, нуждающемся в патче, или о WebKit/Safari? Здесь мы больше ориентированы на пользователей, и хотя некоторые из них являются программистами и веб-разработчиками, мы не лучшее место для знаний об уровне кода и уровне ошибок/регрессии. Мы можем указать вам, как сообщить об ошибке в Apple, но, как правило, здесь нет подробных вопросов и ответов по html/css/js.
У меня все в порядке... imgur.com/a/vICCs Я использую Safari 6.0.1 на OS X Lion 10.7.5.
@bmike Я предполагаю, что это проблема Mountain Lion, а не проблема html/css/js.
Я только что спросил коллегу, который также управляет Mountain Lion: никаких проблем. Так что источник проблемы остается для меня загадкой.
Возможно, это что-то с видеокартой HD4000.
@ Рене Хорошо - здесь все в порядке - просто хотел убедиться, что вы знаете о своих вариантах. Можете ли вы указать место в Интернете, где другие могли бы увидеть и воспроизвести вашу проблему? Похоже, что DaviesGeek пытался загрузить jQuery и не смог воспроизвести ваши сбои.
Интересно: я могу подтвердить строки перед проблемой слов на странице jQuery. Но я не могу подтвердить проблемы на странице начальной загрузки. Получил степень MBA 2012 с HD4000 GFX.
Я также вижу странные артефакты в веб-приложении, которое я разрабатываю для RETINA MBP Pro в Safari 6. Интересно, это проблема рендеринга Safari на RETINA?
@René Согласно blackpixel.com/blog/2012/02/radar-or-gtfo.html , сообщать Apple о повторяющихся ошибках — хорошая идея, поэтому, вероятно, будет хорошей идеей, если вы тоже сообщите об этом!
@OllyHodgson спасибо, я немедленно отправлю дубликат ошибки!

Ответы (6)

Это была ошибка в Safari, исправленная в обновлении OSX 10.8.3!

Например, добавление соответствующей цитаты из заметок об обновлении значительно повысит ценность вашего ответа.
На самом деле это не было отмечено в примечаниях к обновлению, но оно решило эту проблему. Пробовал сам до и после обновления.
Похоже, это было исправлено Apple с выпуском Mountain Lion 10.8.3 + Safari 6.0.3 на этой неделе.

Я могу подтвердить, что это ошибка графического процессора Intel Graphics 4000. Я вижу графические артефакты на своем 13-дюймовом MacBook Pro Retina, а не на моем старом MBP с Mt. Lion и графическим процессором Nvidia Geforce.

У меня есть личный опыт решения этой проблемы, когда я пытался разработать кнопки css для веб-сайтов...

Я считаю, что артефакты можно воспроизвести, используя css3 border-radiusв сочетании с файлом box-shadow. Хотя очевидно, что это происходит и во многих других обстоятельствах. (Что я могу подтвердить)

Вот ссылка на отчет об ошибке на веб-сайте webkit (хотя я не уверен, что он там):

https://bugs.webkit.org/show_bug.cgi?id=103087

И вопрос SO, из которого он исходил:

https://stackoverflow.com/questions/13505314/artifacts-on-css-rendering-box-shadow-on-safari-6-0-2-on-mountain-lion

Спасибо, что поделились этим. Однако я не уверен, что это проблема вебкита, поскольку эта проблема характерна для OS X Mountain Lion и только с графикой HD4000.

Это не ошибка Intel HD 4000. Я вижу эту ошибку только в Safari на Intel HD 4000. Если я открою страницу с помощью (Opera, Chrome, Firefox) - я не могу воспроизвести эту ошибку.

Быстрое решение этой проблемы — использование преобразования объекта с радиусом границы или другим свойством, вызывающим повреждение. Таким образом, вы форсируете перерисовку с помощью видеокарты, и это устраняет проблему.

Примените следующее свойство: -webkit-transform: translate3d(0,0,0);- И у вас должно быть все в порядке.

Имеет немалое снижение производительности, если вы применяете его к div, содержащему много материала, но позволяет обойти ошибку.
Стоимость производительности? Я хотел бы увидеть некоторые данные по этому поводу. Любые дополнительные расходы должны быть обработаны графическим процессором.
Нулевое преобразование создает фоновую текстуру для этого элемента на графическом процессоре. Это делает перемещение элемента дешевым, так как это составной элемент, а не краска, но делает изменения элемента более дорогими (например, текст, размер, изменение стиля), поскольку необходимо загрузить новую текстуру в графический процессор, а также перерисовать элемент. . Вы также занимаете память графического процессора, что может быть проблемой на телефонах.
Спасибо тебе за это. Любые хорошие рекомендации для получения информации об этом?

Вот что я бы сделал, если вы не можете предоставить ссылку на что-то, что есть в Интернете, чтобы другие могли продублировать / выяснить, что происходит.

  1. Попробуйте ночную сборку webkit, чтобы увидеть, исправлена ​​ли ошибка, но не поставляется. http://nightly.webkit.org

  2. Удалите все расширения из Safari, чтобы убедиться, что они не вызваны одним из них.

Я добавил ссылки на сайты, показанные на скриншотах.
Я попробовал оба ваших предложения, но, к сожалению, они не сработали.

Я также могу подтвердить эту ошибку на 15-дюймовом macbook с сетчаткой (OSX 10.8.2, Safari 6.0.2).

Мой MacBook также имеет Intel HD4000, а также Nvidia GT 650M для внешнего дисплея.

Чтобы исключить все другие возможности, кроме видеокарты (драйвера), я использовал адаптер Thunderbolt-DVI для подключения внешнего дисплея к карте Nvidia.

Результат: Никаких странных линий и причудливых эффектов jquery!

вывод: проблема HD4000 (драйвер).