Div скрывается только в том случае, если то же место занято другим элементом HTML — только для iOS / Safari

#jquery #html #ios #hide #show

#jquery #HTML #iOS #скрыть #показать

Вопрос:

Я создал простую кнопку для входа в систему с помощью Facebook, fbButton приведенную ниже, но кнопка скрывается только в iOS / Safari Mobile с помощью jQuery hide() , и show() когда занимаемое ею пространство становится занятым другим элементом.

У меня нет проблем с тем, чтобы скрыть div при запуске страницы на моем ноутбуке (Firefox и Chrome), поэтому проблема существует только на iOS. Я не тестировал его на Android или иным образом.

 <div class="loginSignUp" style="display:none">
    <form>
        <label class="email" for="email">Email</label>
        <input class="email" type="email" id="email">
        <label class ="username" for="username">Username</label>
        <input type="username" id="username">
        <label for="password">Password</label>
        <input type="password" id="password">
        <label class="confirmPassword" for="confirmPassword">Confirm password</label>
        <input class="confirmPassword" type="password" id="confirmPassword">
        <div class="formSubmit">Submit</div>
    </form>
    <div class="loginOr">OR</div>
    <div class="fbButton">
        <img src="https://www.facebook.com/images/fb_icon_325x325.png" />
        <div class="fbTextHolder">
            <div class="fbText">Log in with Facebook</div>
        </div>
    </div>
</div>
  

Опять же, Javascript прост — просто jQuery hide() и show() .

Есть идеи?

Ответ №1:

когда занимаемое им пространство становится занятым другим элементом.

Для меня это похоже на проблему с z-индексом?. Происходит ли это и в ландшафтном режиме? Или попробуйте использовать .toggle() вместо этого или .css('display', 'none'); посмотрите, сохраняется ли проблема.

Комментарии:

1. Вау, хороший улов. На самом деле это была проблема с z-индексом. Я изначально добавил это в CSS, но на самом деле это было не нужно, и я не удалил его. Вы случайно не знаете, почему это повлияет на iOS, а не на Firefox / Chrome?

2. Не могу сказать, не глядя на код, но по опыту Chrome и firefox намного более снисходительны, особенно chrome, когда дело доходит до небольших синтаксических ошибок или упущений, таких как забывание установить родительский элемент в position: relative; значение etc. Когда я пишу код, я использую chrome, но всегда открываю другие браузеры, чтобы перепроверить результат.

3. Полезно знать. Спасибо!