Различия между Safari для Windows и Safari для Mac

В чем разница с точки зрения разработчика между Safari для Mac и Safari для Windows?

Я думаю, это сводится к оценке различий между (если я что-то пропустил, исправьте):
- Рендеринг макета
- поведение Javascript

Необходимо принять окончательное решение:
Могут ли разработчики тестировать только в Safari Windows (зная, что мы не можем позволить себе пропустить важные ошибки)?

Спасибо, JB

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
26
0
18 230
11
Перейти к ответу Данный вопрос помечен как решенный

Ответы 11

Ответ принят как подходящий

Что касается рендеринга и JavaScript, разницы нет. Отличается библиотека пользовательского интерфейса, используемая для самого браузера, но рендеринг страницы такой же.

Отрисовка шрифтов в Mac и Windows Safari может отличаться, поскольку в системах обычно используются разные шрифты. Пока ваша страница может корректно обрабатывать отсутствующие шрифты или шрифты разных размеров, все должно быть в порядке.

Фактически, Apple перенесла свой движок рендеринга шрифтов на Windows. Так что даже рендеринг шрифтов такой же.

FeifanZ 08.03.2011 02:33

На сайте, над которым я сейчас работаю, есть проблема в Safari для Mac, которой нет в Safari 3 или 4 для Windows. Я не могу понять этого, хоть убей.

Я также видел проблемы в Safari для Windows, которых нет в Safari для Mac на сайтах с тяжелым CSS. Не могу вспомнить подробностей, но они были.

Хм ... это отклонено? Возможно, это не совсем ответ, но в нем есть полезный комментарий / понимание. Если это то, что думали другие, тогда следовало добавить комментарий, что это должно было быть отправлено как комментарий (где это возможно / применимо).

David 30.06.2012 12:05

В настоящее время у меня возникла проблема, из-за которой плавающие изображения в блоге с обтеканием текста текстом не заполняются должным образом в OS X; отлично работает в windows. В основном я добавил отступы, чтобы изображение было выровнено по левому или правому краю так, чтобы край изображения находился на том же смещении, что и край текста сообщения; в OS X изображение выступает за край текста.

Вызов java из javascript выдает:

java.net.MalformedURLException: no protocol: 
    at java.net.URL.(Unknown Source)
    at java.net.URL.(Unknown Source)
    at java.net.URL.(Unknown Source)
    at sun.plugin.liveconnect.SecureInvocation.checkLiveConnectCaller(Unknown Source)
    at sun.plugin.liveconnect.SecureInvocation.access$000(Unknown Source)
    at sun.plugin.liveconnect.SecureInvocation$2.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.plugin.liveconnect.SecureInvocation.CallMethod(Unknown Source) 

в окнах Safari, но не в Safari Mac.

У меня возникла проблема с блокировщиком всплывающих окон в Safari в Windows XP. Я предполагаю, что блокировщик не согласился с тем, что пользователь щелкнул ссылку Flash, которая затем запустила JavaScript, открывший окно. Тем не менее, он работал в других основных браузерах и Safari в OS X. Chrome также заблокировал мое окно в XP, но не в OS X или Ubuntu.

Визуализация таблиц стилей в Safari и Windows значительно отличается. Чтобы убедиться в этом, попробуйте создать страницу с элементом с z-индексом -1. Версия для Windows будет работать без проблем, версия для Mac не позволит вам выбирать элементы. Поверьте, я потратил около трех часов, пытаясь понять методом проб и ошибок, почему страница будет работать в одной системе, а в другой - нет. Хуже всего то, что когда Safari что-то не отображает должным образом, он делает это без каких-либо указаний. Вы должны отлаживать строку за строкой, ужасный опыт.

В Mac Safari я могу выполнять кросс-скрипт ajax с протоколом file: ///, но в Windows Mac я не могу этого сделать.

Я работаю над веб-сайтом с довольно стандартным макетом. У меня есть коробка, содержащая другие div. Он работает во всех основных браузерах, начиная с IE6 +, FF3 + и т. д. В Safari 5 на OSX поле находится полностью слева, за пределами моего веб-сайта. На той же версии сафари в окнах нет проблем. Я схожу с ума по этому поводу.

Просто хотел добавить этот опыт, с которым я столкнулся, для Safari. Наши разработчики все еще собираются изучить этот вопрос, но это не является для нас первоочередной задачей, поскольку Windows Safari - не большая часть нашей пользовательской базы, в отличие от Mac. Но я думаю, что это относится к одному (или обоим) - фактической низкоуровневой реализации Safari в браузере от Apple и / или различиям в javascript.

На нашем веб-сайте недавно был реализован инструмент загрузки нескольких файлов HTML5. Загрузка одного файла отлично работает в обеих версиях Safari. Но при загрузке нескольких файлов он не работает в Windows. У нас было два разных клиента загрузки и конечные точки для загрузчика (подумайте о потоке A / B-тестирования), и один из них предоставил более подробную информацию, которая может указывать или не указывать на причину проблемы. На одной из клиентских и конечных точек клиент отправляет сведения об именах файлов и размерах файлов для загрузки (как объект массива JSON) на конечную точку сервера (как видно через веб-инспектор). На Mac, где это работало, размеры файлов были допустимыми, в Windows - 0 байтов.

Я думаю, что загрузчик основан на JQuery или какой-либо другой библиотеке JS. Но я не разработчик, поэтому не могу быть уверенным. Но у меня есть подозрение, что эта проблема выходит за рамки JS-библиотек ...

Другие вопросы по теме