PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Input-Feld ohne Rand


Willow
11.10.2008, 10:48:55
weiss jemand, wie ich (mittels CSS-Klasse ??) ein völlig randloses input-feld (input type="text") erzeugen kann?

(gesucht: eine input-feld-definition, die für den user nicht mehr als eingabefeld erkennbar ist: da firefox die javascript-anweisung "innerText" nicht unterstützt, möchte ich eine textänderung vornemehmen ... da das ändern eines input-feld-wertes funktioniert, scheint mir das die einfachste lösung - soferne es nicht als input-feld erkennbar ist)

thx im voraus

knight1
11.10.2008, 15:05:22
Hi,
mir ist nicht ganz klar was Du genau meinst.
Falls Du ein Feld haben möchtest welches ein User nicht angezeigt bekommt und dort auch keine Daten eingeben kann, Du aber Daten übermitteln möchtest, ist das vielleicht das richtig für Dich: http://de.selfhtml.org/html/formulare/versteckte.htm
Falls ein Feld keine Rahmen haben soll, ist dass vielleicht das richtige für Dich: http://de.selfhtml.org/css/eigenschaften/rahmen.htm


Kai aka Knight1

rarios
11.10.2008, 15:46:30
Naja jetzt ganz banal:
Angenommen, Du hast als Hintergrundfarbe der Seite Weiß (#FFF/FFFFFF)
dann geht doch ganz einfach das hier:

<input type="text" style="background-color:#FFFFFF;border: 0px solid #FFFFFF;" value="Bi-Ba-Butzelmann" size="40">

Eigentlich kann die Farbe vom Rand auch weg, aber Du kannst dem Rand auch 1px zuweisen.

ksticker
21.11.2008, 10:14:40
probier es doch mal mit innerHTML

agent47
21.11.2008, 13:56:38
macht es nict komplizierter als es ist:

<head>
<style type="text/css">
.noBorder {border: none;}
</style>
</head>
<body>
<input type="text" name="" value="kein Rand" class="noBorder" />
</body>

rarios
21.11.2008, 19:00:59
Super agent47, schau mal 2 Beiträge über Deinem, dann weißt Du, dass Dein beitrag überflüssig war/ist.

agent47
21.11.2008, 19:18:37
Super agent47, schau mal 2 Beiträge über Deinem, dann weißt Du, dass Dein beitrag überflüssig war/ist.

schau mal genau hin, du machst den rand auf hintergrundfarbe und ich entferne den rand was die bessere lösung ist.

rarios
21.11.2008, 19:26:14
schwachsinn. ich habe den Rand auch entfernt.
Und meine Version ist sogar noch besser.
Weil ich die Hintergrundfarbe implementiert habe.
Das Eingabefeld soll nämnlich, wenn man sich das Thema genau anguckt, nicht mehr für den User erkennbar sein.
Deine Version entfernt lediglich den Rand, meine auch aber fügt zusätzlich die passende Input-Hintergrundfarbe hinzu.

agent47
21.11.2008, 19:35:00
umständlicher kann man den rand aber nich wegbringen und die hintergrundfarbe is ja nu das kleinste problem.

@Willow
wenn der inhalt des feldes nicht unbedingt sichtbar sein muss verwende den input typ hidden, ein formularfeld so unkenntlich zu machen is keine saubere programmierung.

rarios
21.11.2008, 19:41:07
umständlicher kann man den rand aber nich wegbringen und die hintergrundfarbe is ja nu das kleinste problem.

@Willow
wenn der inhalt des feldes nicht unbedingt sichtbar sein muss verwende den input typ hidden, ein formularfeld so unkenntlich zu machen is keine saubere programmierung.

Er möchte aber, dass der Inhalt des Textfeld weiterhin angezeigt wird. hidden hilft da wenig.

ksticker
21.11.2008, 21:17:17
Wenn der User den Text nicht verändern soll würde ich einfach einen DIV machen und per JS mit document.getElementById('id').innerHTML drauf zugreifen.
Dies ist die eleganteste Lösung.

Beispiel:


<script type="text/javascript">
function setHTML(htmlCode)
{
document.getElementById('tester').innerHTML = 'testContent';
}
</script>

<div id="tester">
Dieser Text wird überschieben.
</div>


Wenn der User den Text noch ändern soll würde ich es so machen:


<style>
.noBorder
{
border: none;
background: transparent;

}
</style>

<input type="text" class="noBorder" value="Ich habe keinen Rand und keine Hintergrundfarbe" name="noBorder">

urvater
24.11.2008, 22:22:44
weiss jemand, wie ich (mittels CSS-Klasse ??) ein völlig randloses input-feld (input type="text") erzeugen kann?

(gesucht: eine input-feld-definition, die für den user nicht mehr als eingabefeld erkennbar ist: da firefox die javascript-anweisung "innerText" nicht unterstützt, möchte ich eine textänderung vornemehmen ... da das ändern eines input-feld-wertes funktioniert, scheint mir das die einfachste lösung - soferne es nicht als input-feld erkennbar ist)

thx im voraus
Erst einmal ist border:none; die wohl beste Lösung um den Rahmen zu entfernen. Dies ändert jedoch nichts daran, dass der User den Text nicht ändern kann. Benutzt der User, wie ich es mache, die Tab-Taste springt er früher oder später von selbst in das Feld. Zusätzlich ändert sich auch automatisch der Mauszeiger, wenn man mit der Maus über das Feld fährt.
Soll das Feld nur von dir änderbar sein würde ich den Text nicht durch ein input Feld anzeigen lassen.
Leider ist nicht erkennbar wie oft du diesen Text ändern willst/musst und wieviele Stellen im Dokument davon betroffen wären.

ksticker
26.11.2008, 19:40:11
@urvater
Da stimme cih Dir mal voll und ganz zu, bis auf eins wenn der User den Text nich ändern soll braucht er auch nicht mit Tab hineinspringen, deswegen auch der div.