Веб-приложение для iPad 3 в браузере Safari

Я работаю над отладкой нашего веб-приложения уже несколько дней, и я не уверен, что вызывает его сбой в мобильном сафари. Приложение прекрасно работает на iPad2, но по какой-то причине вылетает на iPad3. Я закомментировал каждый фрагмент кода, и проблема, по-видимому, заключается в абсолютном позиционировании элемента. Вот мой код для раздела.

.page .main-content .study-bo {
   background: #F4F4F4;
   border-top: 1px solid #D1D1D1;
   border-bottom: 1px solid #D1D1D1;
   width: 644px;
   position: absolute;
   top: 501px;
   left: 0px;
   padding: 30px 40px;
   z-index:500;
   -webkit-transition: top .5s ease-in-out;
}   
.page .main-content .study-bo .text {
    width: 100%;
    height: 100%;
    position: relative;
    left:auto;
}
.page .main-content .study-bo p {
   font-family: "FrutigerRoman";
   font-size: 12px;
   color: #000000;
   margin-bottom: 15px;
}
.page .main-content .study-bo .study-design {
   width: 92px;
   height: 20px;
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(199, 199, 199, 1)), color-stop(100%,rgba(167, 167, 167, 1)));
   -webkit-border-radius: 5px 5px 0px 0px;
   border: 1px solid #999;
   font-family: "FrutigerItalic";
   font-size: 13px;
   color: white;
   text-shadow: 1px 1px 0px #8E8E8E;
   filter: dropshadow(color=#8e8e8e, offx=1, offy=1);
   text-align: center;
   padding-top: 4px;
   -webkit-box-shadow: inset 0px 1px 0px 0px #e5e4e4;
   position: absolute;
   top: -26px;
   font-style: italic;
   z-index: 50;
   left: 44px;
}
.page .main-content .study-bo .study-design .btn.active {
   background: #6c6a6a;
   text-shadow: 1px 1px 0px #434343;
   filter: dropshadow(color=#434343, offx=1, offy=1);
   -webkit-box-shadow: inset 0px 1px 0px 0px #9e9d9d;
}

Часть кода, которая вызывает сбой приложения:

   position: absolute;
   top: 501px;
   left: 0px;

Я не уверен, что это ошибка яблока? У меня есть несколько элементов абсолютно без проблем. Если я закомментирую эти три строки (и только эти три строки), приложение будет работать. Я попытался закомментировать другие разделы моего кода и сохранить эти три строки, и это не работает. У кого-нибудь есть предложения? Спасибо!

1 ответ

Это может быть ошибкой, но трудно сказать, не увидев и не изучив веб-приложение из первых рук. Я бы попытался возиться с макетом, чтобы попытаться:

  • получить относительное позиционирование на работу, а не абсолютное,
  • используя проценты вместо пикселей в верхнем и левом атрибутах,
  • работа с float:left или float:right, с полями или отступами вместо абсолютного позиционирования,
  • примените CSS reset/normalizer перед вашим другим CSS, таким как normalize.css, чтобы увидеть, если это волшебным образом решит проблему,
  • или, в крайнем случае, посмотрите на альтернативный макет, который не заставляет вас использовать абсолютное позиционирование здесь.

Это все выстрелы в темноте, но, возможно, они помогут.

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