2013-01-10 6 views
5

Mam stronę logowania z dwoma polami wprowadzania danych. W Chrome, Firefox i IE10 wyglądają świetnie, ale w IE 7, 8, 9 są zbyt cienkie. Oto kod HTML i klasa dla pól.Jak zrobić, aby moje pola wejściowe wyglądały tak samo w różnych przeglądarkach?

HTML:

<div class="login-input"> 
<input data-val="true" data-val-required="Username is required." id="Username" name="Username" type="text" value=""> 
</div> 

CSS:

.login-input input 
{ 
width: 250px; 
height: 14px; 
} 

Jak to wygląda w Chrome, Firefox, IE10 (prawidłowy wygląd) http://i.imgur.com/6swf7.png

Jak to wygląda w IE 7, 8, 9 (nieprawidłowy wygląd) http://i.imgur.com/ltzdG.png

Dzięki!

+1

Miałem ten sam problem na mojej stronie. Rozwiązałem go, ładując inny arkusz stylów dla IE. Zobacz http://stackoverflow.com/questions/3541982/apply-css-rules-if-browser-is-ie – Bart

+1

spróbuj ustawić wartość wypełnienia. – dezman

+0

Resetowanie plików css jest czasem używane jako punkt "startowy", który sprawia, że ​​baza jest taka sama - na przykład domyślna dla 1em może się różnić w zależności od przeglądarki. –

Odpowiedz

1

Czy próbowałeś ustawić wartości wypełnienia?

+0

Właśnie usunąłem atrybut wysokości i dopełnienie do górnej i dolnej części pola wejściowego i wygląda znacznie lepiej. Dzięki! – Jonathan

1

Możesz spróbować box-sizing do border-box, ale jest no support dla ie7 do tego.

input { 
    -webkit-box-sizing: border-box; 
    -moz-box-sizing: border-box; 
    -ms-box-sizing: border-box; 
    box-sizing: border-box; 
} 
0

Użyj wysokości linii oprócz wysokości.

.login-input input 
{ 
    width: 250px; 
    height: 14px; 
    line-height: 14px; 
}