2010-06-28 12 views

Antwort

19

In Ihrem CSS:

input[type=text] { 
    background: transparent; 
    border: none; 
    border-bottom: 1px solid #000000; 
} 

Von hier können Sie mit Polsterung spielen um den tatsächlichen Texteintrag dort zu positionieren, wo Sie möchten. Zum Beispiel haben die Linie 5 Pixel erstrecken jeder Seite des tatsächlichen Eingangsbereich:

padding: 2px 5px; 
+1

Sie sollten wahrscheinlich eine Klasse anstelle des Attributselektors verwenden, um alte Browser zu berücksichtigen. – Joey

+3

Dies funktioniert in IE7 +, FF2 +, Chrome, etc. Wenn IE6-Unterstützung jedoch benötigt wird, dann wird eine Klasse oder eine andere Methode definitiv empfohlen. –

+0

Sie können auch 'outline: none' hinzufügen, damit Sie keine Umrisse sehen, wenn die Felder den Fokus erhalten. – Beau

2

, wenn Sie diese auch in IE6 wollen, als Sie bg Bild für diese mit Hintergrund-Position

verwenden können.

input{ 
    background:url(bg-dot.jpg) repeat-x center bottom; 
    border:none; 
    padding:2px 2px; 
} 

so für alle Browser-Unterstützung mit IE6 sollten Sie dies verwenden.

+2

Ich glaube du meinst "Hintergrund-Position". Auch IE6 ist tot. Bitte lass es so, für die Liebe von allem Guten in der Welt. –

+0

@ Matthew Scharley.oh ja das ist Hintergrund-Position. und über ie6 .http: //www.w3schools.com/browsers/browsers_stats.asp finden Sie, dass ie6 Benutzer mehr als Safari und Oper sind. Wenn wir uns um sie kümmern, sollten wir uns auch für ie6 interessieren. –

+0

was stimmt nicht mit dieser antwort ??? –

0

wollen Sie nur Unterteil zeigen, dass, warum so CSS anwenden ist, dass es alle anderen drei Teile deaktiviert ..

anwenden CSS wie

border: 1px solid black; 
float: left; 
margin: 0; 
padding: 0; 
border-top: 0px; 
border-left: 0px; 
border-right: 0px; 

Werke für alle

0
border: 1px solid black; 
float: left; 
margin: 0; 
padding: 0; 
border-top: 0px; 
border-left: 0px; 
border-right: 0px;