Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Formularz.
Forum PHP.pl > Forum > Po stronie przeglądarki
Miko6
Jak ustawić w stylach, żeby dla wszystkich pól text w formularzu były jakieś określone kolory, ale tak żeby nie wpisywać wszędzie CLASS="nazwa"?
mike
  1. input {
  2. height: 16px;
  3. padding: 2px;
  4. border: #cdcdcd solid 1px;
  5. background-color: #ffffff;
  6. font: 11px Verdana, Tahoma, Sans-Serif;
  7. }
  8.  
  9. <form action="" method="post">
  10. <input type="text" name="login" value="" />
  11. <input type="password" name="pass" value="" />
  12. <input type="submit" name="submit" value="Zaloguj" />
  13. </form>


tylko że wszystkie elementy input będe miały ten styl. Żeby niektóym nadać inny musisz nadpisać klasy dla nich.
Miko6
To wiem jak zrobić, ale mi zależało na tym aby tylko pole text mialo zmieniony styl i żeby nie ustawiać dla submit osobnego stylu.
mike
Zaznaczam że jest to mój pierwszy skrtpt JS, jaki napisałem tongue.gif może nie działać, tym bardzej że go nie testowałem tongue.gif

plik plik.js
Kod
function externalTexts()
{
    if( ! document.getElementsByTagName )
        return;

    var inputs = document.getElementsByTagName( "<input>" );

    for( var i=0; i < inputs.length; i++ )
    {
        var input = inputs[i];

        if( input.getAttribute( "type" ) == "text" )
            anchor.className = "klasa";
    }
}

window.onload = externalTexts;


  1. <script type="text/javascript" src="plik.js"></script>
  2. <form action="#" method="post">
  3. <input type="text" value="" />
  4. </form>
  5.  
  6. </body>
  7. </html>
sf
Cytat(Miko6 @ 2005-08-31 18:20:10)
To wiem jak zrobić, ale mi zależało na tym aby tylko pole text mialo zmieniony styl i żeby nie ustawiać dla submit osobnego stylu.

Takie cos mozna zrobic poprzez ustawiennie :
  1. input[type="text"] { color: #ddd; }

Zgodne z CSS2.1. Nie obsługuje tego jednak IE.
FiDO
Gdyby wszystkie przegladarki wspieraly dobrze CSS2 to moznaby zrobic to za pomoca:
Kod
input[type="text"] {
    background-color: white;
    color: black;
}


Niestety tak dobrze nie ma, bo IE ma to gdzies :/ wiec albo pobawisz sie klasami albo JS. Ja osobiscie robie tak, ze wszystkim inputom nadaje styl, ktory chce miec w polach textowych, a innym typom nadaje klasy (np. przyciskom), pol tekstowych jest z teguly najwiecej, wiec w ten sposob oszczedzam na pisaniu wiekszej ilosci klas.
Miko6
mike_mech niestety ten js u mnie nie działa. FiDO też bym tak zrobił gdyby nie to, że ja edytuje osCommerce'a i nie chce mi sie w każdym formularzu tego zmieniać, a niestety troche ich jest. Zresztą bym musiał ich szukać po plikach.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.