2008-11-16 15 views
7

Mam pytanie dotyczące zachowania użytkownika Internet Explorer. Jeśli ładuję stronę, wszystko jest w porządku - przycisk przesyłania wygląda tak, jak powinien.Styl przycisku wysyłania w IE

Inactive state http://img58.imageshack.us/img58/7214/inactiveci9.jpg

Ale jeśli kliknę wewnątrz formy, przycisk Prześlij dostaje jakiś dodatkowy styl, który mi się nie podoba (patrz obrazek po więcej informacji).

Active state http://img238.imageshack.us/img238/5282/activeyi0.jpg

Jak mogę wyłączyć tę funkcję. Używam IE7 pod Vistą.

Odpowiedz

5

CSS:

input:focus, 
input:active, 
input:hover 
{ 
    outline: none; 
    border: 1px solid; 
} 

Brak gwarancji, ale to powinien zatrzymać IE jest głupie.

Powinieneś nieco przedłużyć powyższy styl, na przykład zmienić kolor tła lub kolor obramowania, aby uzyskać alternatywną zmianę wskazującą ostrość.

(naciśnij na tabulator, zobaczysz go przenieść;), dodatkowy styl jest wskaźnik pokazujący, jakie działania będą wykonywane po naciśnięciu ENTER)

+2

Dlaczego IE jest głupi? Jest to zgodne tylko ze standardowymi konwencjami Windows UI. –

+1

@John, yay, ale co jest pierwsze, W3C, lub windows,? –

+3

@Kent - Gdzie W3C określa, jakie przyciski powinny wyglądać? –

2

Napotkano na to samo zachowanie w IE. O ile wiem, jedynym sposobem, aby temu zapobiec, jest ustawienie właściwości obramowania przycisku na none - nie jest to idealne, ponieważ w oczywisty sposób wpływa to na styl twojego przycisku.

1

Jest to tylko standardowe zachowanie systemu Windows, w którym domyślny przycisk —, tj. Przycisk kliknięty po naciśnięciu klawisza Enter —, uzyskuje nieco grubsze obramowanie.

5

Wskazuje, że przycisk jest skupiony. Jest potrzebny do nawigacji po klawiaturze. Nie powinieneś go usuwać.

Jeśli jednak oceniasz wygląd swojego projektu nad użytecznością i dostępnością, wypróbuj właściwość hideFocus (przynajmniej nie jest tak szkodliwa jak blur()).

Powiązane problemy