2014-09-01 13 views
11

Mam więc formularz logowania HTML z dwoma polami: E-mail i hasło. Można je łatwo wypełnić w przeglądarce dowolnego urządzenia innego niż urządzenia IOS (iPhone, iPad). Na polach IOS prawie nie można ustawić ostrości, a gdy ostrość zostanie ustawiona, klawiatura wyskoczy, zaczynam pisać, ale nic nie jest faktycznie wypełniane. Próbowałem zarówno w przeglądarce Chrome, jak i safari, i nadal uzyskuję ten sam rezultat. Pole pozostaje czarne. Poniżej znajduje się sposób formatowania mojego formularza:Problemy z urządzeniami IOS z wprowadzaniem danych w formacie HTML (typ = tekst)

<form method="post" name="login" action="login"> 
    <div class="divInputWrapper "> 
     <i class="icon-envelope inputIcon inlineElt"></i> 
     <label for="email"></label> 
     <input type="text" name="email" placeholder="Enter your email address" class="formInput"/> 
    </div> 
    <div class="divInputWrapper "> 
     <i class="icon-envelope inputIcon inlineElt"></i> 
     <label for="password"></label> 
     <input type="password" name="password" class="formInput"/> 
    </div> 
    <button class="blue centeredContent">Login</button> 
</form> 

Próbowałem dodać atrybut automatycznego ustawiania ostrości, ustawić wartość i zachować tę samą wartość.

+0

Czy masz jakieś zewnętrzne css/js działa? – DickieBoy

+0

Czy w klasie formInput istnieją jakieś dziwne style? jak ustawić kolor i kolor tła na tę samą wartość? na przykład W przykładowym kodzie nie ma niczego złego technicznie ... więc powinno działać. – scunliffe

+0

Nie sądzę, że nie możemy wstawić tekstu do pola tekstowego w urządzeniach ios. Faceci w jabłkach nie są tacy głupi. Istnieje wiele projektów mających formy, w których ludzie mogą wprowadzać tekst na urządzeniach ios. To oczywiste, że problem jest specyficzny dla twojego projektu. takie jak js, css itp., których nie dostarczyłeś. –

Odpowiedz

39

Znaleźliśmy problem, to reset arkusza stylów Znalazłem online, aby pomóc w zachowaniu urządzeń dotykowych, gdy użytkownik dotknie/przytrzyma element i skopiowałem go przez większość moich projektów. Jeśli masz ten problem, najprawdopodobniej masz te linie w swoim kodzie:

*, *:before, *:after { 
     -webkit-user-select: none; 
     -khtml-user-select: none; 
     -moz-user-select: none; 
     -ms-user-select: none; 
     user-select: none; 
    } 

Po prostu usuń lub ustaw domyślnie. A jeśli twoim zamiarem jest, aby powstrzymać ludzi od wybierając materiał na swojej stronie internetowej, a następnie upewnij się, że ta właściwość stylu zresetować domyślne na wejść

input, input:before, input:after { 
     -webkit-user-select: initial; 
     -khtml-user-select: initial; 
     -moz-user-select: initial; 
     -ms-user-select: initial; 
     user-select: initial; 
    } 
+0

Doskonałe, szukałem długo i ciężko dla tego, byłem debugowania i całkowicie otumaniony. Dzięki za to. Właściwie skończyłem z tymi stylami z importu zrobiłem z bootstrapu mniej plików, ale mam style bazowe takie same dla moich wejść i przycisków, więc CSS do pomocy z przyciskami jednocześnie dostał się do moich wejść .. – gdgr

+1

I ' Mam ten sam problem i powyższe rozwiązanie nie działa. – Ben

+0

Och, dziękuję. Naprawdę trudno jest go debugować. Myślałem, że to jest na części javascript, ponieważ używam kątowe. Dane wejściowe mogą przyjmować tylko jeden znak i wydaje się, że stracił ostrość, podczas gdy tak naprawdę nie jest. – dieend