tutorials.de Buch-Aktion 02/2012
ERLEDIGT
JA
ANTWORTEN
3
ZUGRIFFE
338
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    qsrs qsrs ist offline Mitglied Brokat
    Registriert seit
    Jan 2005
    Beiträge
    438
    Hallo,

    ich möchte input-Felder mit einem Hintergrund versehen. Dieser soll sich ändern, wenn das Textfeld angeklickt wird. Das versuche ich mit einem simplen Trick, indem ich die Position des Hintergrundes einfach ändere. D.h. das Bild selbst enthält beide Hintergründe, einmal das für den Normalzustand des Textfeldes, und dann noch das, wenn das Textfeld angeklickt wird. Der Hintergrund soll also bei "focus" einfach die Position ändern. Allerdings funktioniert es noch nicht, und ich weiß nicht wo ich den Fehler habe:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    
    .fieldHolder {
        width: 420px;
        height: 28px;
        background: url("../media/images/bg_textfield.png") no-repeat;
        float: left;
    }
    .textInput {
        color: #013d5b;
        width: 420px;
        height: 23px;
        background: none;
        border: none;
        margin-top: 4px;
        margin-left: 5px;
    }
    .textInput input:focus {
        background-position:0px -28px
    }

    Wäre für Hilfe wieder sehr dankbar.
     

  2. #2
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Moin,

    dieses <input> ...hat dies den Klassennamen "fieldHolder"?
    Weil wenn nicht, hat es auch kein Hintergrundbild, es steht dort zumindest keins im CSS
     

  3. #3
    Avatar von spicelab
    spicelab spicelab ist offline goaspicy
    Registriert seit
    Feb 2010
    Beiträge
    1.392
    Um die Position des Hintergrundbildes zu ändern, wäre hier dieses Markup vonnöten:
    HTML-Code:
    <input type="text" class="fieldHolder" />
    womit der Selektor korrekterweise so formuliert lautet:
    Code css:
    1
    2
    3
    
    input.fieldHolder:focus {
        background-position:0px -28px
    }

    //edit:

    Ich vermute mal, dass du hier erneut den Fehler begehst, die Formatierung eines Elternelements (.fieldHolder) über dessen Nachfolgeelement (<input>) zu ändern, was nicht möglich ist, wie ich es dir kürzlich schon in deinem Thema Hover- Effekt mit runden Ecken und Transparenz erläutert hatte.
    Geändert von spicelab (25.08.10 um 07:10 Uhr)
     

  4. #4
    qsrs qsrs ist offline Mitglied Brokat
    Registriert seit
    Jan 2005
    Beiträge
    438
    Sorry, ihr habt beide recht. Ich hatte noch ein div-Element, in welchem ein Textfeld untergebracht war - völlig überflüssig. Habe nun den Hintergrund direkt auf das Textfeld angewendet.

    Vielen Dank für den Denkanstoß.
     

Ähnliche Themen

  1. Focus
    Von loonybin im Forum Javascript & Ajax
    Antworten: 5
    Letzter Beitrag: 04.08.09, 18:21
  2. Focus?
    Von xyberyzhon im Forum Flash Plattform
    Antworten: 0
    Letzter Beitrag: 10.09.08, 16:04
  3. focus?
    Von wachteldonk im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 30.10.07, 08:30
  4. Focus Listener(Focus lost)
    Von BLOEBAUM im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 4
    Letzter Beitrag: 11.01.06, 09:19
  5. Focus-Reihenfolge nach Drücken der Tab-Tase ändern
    Von gabifi im Forum VisualStudio & MFC
    Antworten: 4
    Letzter Beitrag: 12.08.05, 19:54