• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Darstellung Textarea

Status
Für weitere Antworten geschlossen.

Superotto

Neues Mitglied
Hallo,

kann mir jemand sagen wie ich mein Textarea Problem löse (bitte nicht zu theoretisch)?

Zur Zeit habe ich folgende Darstellung:


Begin:Textarea.... Ende:Textarea.... Titel:Textarea.... Einzelheit:Textarea


Hier der Code:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<p>Beginn:
<textarea name="Anfang" rows="2" cols="10">
</textarea>
Ende<textarea name="Ende" rows="2" cols="10">
</textarea>
Titel<textarea name="Titel" rows="2" cols="10">
</textarea>
Einzelheit<textarea name="Einzelheit" rows="2" cols="10">
</textarea></p>

<input type="submit" value="SUBMIT" />
</form>


Doch wie bekomme ich jetzt die Benennung sozusagen auf die Textarea:


Begin: ........ Ende: ........ Title: ........ Einzelheit:
Textarea .... Textarea .... Textarea ... Textarea


Ich bitte um Hilfe!!!!
 
Entweder mit CSS:

Code:
textarea { display: block; }

Oder du fügst hinter jeder "Überschrift" ein <br /> bzw <br> bei älteren HTML-Versionen ein.
 
Ich habe es schon mit <br /> bzw <br> ausprobiert:


<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<p>Beginn<br/>
<textarea name="Anfang" rows="2" cols="10">
</textarea>
Ende<br/>
<textarea name="Ende" rows="2" cols="10">
</textarea><br>
Titel<br/>
<textarea name="Titel" rows="2" cols="10">
</textarea>
Einzelheit<br/>
<textarea name="Einzelheit" rows="2" cols="10">
</textarea></p>

<input type="submit" value="SUBMIT" />
</form>


dann kommt bei mir aber folgendes heraus:


Begin:
Textarea Ende:

Textarea Title:

Textarea Einzelheit:

Textarea


Also die erste Überschrift ist über der erstenTextarea. OK, das passt.

Neben der ersten Textarea steht aber schon die zweite Überschrift.

Neben der zweiten Textarea steht die dritte Übeschrift.

Neben der dritten Textarea steht die vierte Übeschrift.

Die vierte T. ist sozusagen leer.


Wie muss ich <br> oder <br/> setzen damit falgendes, wie oben beschrieben, heraus kommt:

Begin: ........ Ende: ........ Title: ........ Einzelheit:
Textarea .... Textarea .... Textarea ... Textarea


Mag sein, dass ich über meine Frage auch in absehbarer Zeit lache (ich hoffe es), aber jetzt bräuchte ich doch etwas konkretere Hilfe!
 
Eine andere Möglichkeit fällt mir gerade nicht ein.
HTML:
PHP:
<div>
  <label for="test">Test</label>
  <textarea id="test" rows="5" cols="5"></textarea>
</div>
<div>
  <label for="test1">Test</label>
  <textarea id="test1" rows="5" cols="5"></textarea>
</div>
<div>
  <label for="test2">Test</label>
  <textarea id="test2" rows="5" cols="5"></textarea>
</div>
CSS:
Code:
div {
  float: left;
}

label {
  display: block;
}
 
Zum Beispie so:
PHP:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">

<span style="float:left;">
Beginn:<br>
<textarea  name="Anfang" rows="2" cols="10">
</textarea></span>

<span style="float:left;">
Ende<br>
<textarea name="Ende" rows="2" cols="10">
</textarea></span>

<span style="float:left;">
Titel<br>
<textarea name="Titel" rows="2" cols="10">
</textarea></span>

<span style="float:clear;">
Einzelheit<br>
<textarea name="Einzelheit" rows="2" cols="10">
</textarea></p></span>

<input type="submit" value="SUBMIT" />
</form>
Gruß thuemmy
 
Ich behaupte mal, die Aneinanderreihung der Eingabefelder inklusive Beschriftungen ist eine Liste. Ob sie ungeordnet, geordnet oder gar eine Definitionsliste ist, darüber lässt sich streiten. Von allen bisher vorgeschlagenen Varianten finde ich diese (=meine :lol:) auf jeden Fall am besten:

PHP:
<form action="">
  <fieldset>
  <legend>Veranstaltungsdetails</legend>
  <ul>
    <li>
      <label for="beginn">Beginn</label>
      <input type="text" name="beginn" id="beginn" /> <!-- Die Eingabedaten sind nach meinem Dafuerhalten einzeilig, also ist input die richtige Wahl, textarea ginge analog -->
    </li>
    <li>
      <label for="ende">Ende</label>
      <input type="text" name="ende" id="ende" />
    </li>
    <li>
      <label for="titel">Titel</label>
      <input type="text" name="titel" id="titel" />
    </li>
    <li>
      <label for="einzelheit">Einzelheit</label>
      <input type="text" name="einzelheit" id="einzelheit" />
    </li>
  </ul>
  </fieldset>
  <p><input type="submit" value="Absende/Eintragen/Wasauchimmer" /></p> <!-- Hier bin ich auch fuer Vorschlaege offen :-) -->
</form>
Das ganze kann z.B. so in die von Dir gewünschte Form gebracht werden.

Code:
form li {
    display: block;
    float: left;
}
form li label {
    display: block;
}
form li label:after {
    content: ":"; /* koennen einige IEs uebrigens nicht, also vllt doch lieber richtig hinschreiben */
}
form p {
    clear: both;
}
Gruß
Junny
 
Erst einmal vielen Dank an alle für die viele Hilfe. Und mein besonderer Dank geht an thuemmy (nicht nur heute). Problem gelöst!
 
Nein, daran nicht, aber an der Abwärtskompatibilität!

<br /> ist Abwärtskompatibil.
...und in den meisten Fällen (wie auch hier) unnötig.

Da html dazu da ist, den Inhalt auszuzeichnen, ist selbst die äußerst bequeme Anwendung bei z.B.
PHP:
<h1>Neue<br />Bewegung</h1>
falsch. Nimmt man es also ganz genau, gehört br ausgemustert.

edit: Habe nochmal drüber nachgedacht. Inzwischen seh ichs nicht mehr ganz so eng. Eine einzige Anwendung ist mir eingefallen, wo ein Zeilenumbruch als Inhalt angesehen werden kann: Gedichte. Ich bleibe aber dabei, dass es äußerst wenige Fälle für eine sinnvolle Anwendung von br gibt.
 
Zuletzt bearbeitet:
Ich wäre für eine Definitionsliste gewesen, weil die Texte ja quasi Beschreibungen der textareas sind.

Aber die Methode mit den <div>s von _Thor_ finde ich auch akzeptabel, weil das div das label und die textarea zu einer logischen Einheit gruppiert.

Nimmt man es also ganz genau, gehört br ausgemustert.
Das ist die berühmte <B>ed and <BR>eakfast-Geschichte ;-)

Eine einzige Anwendung ist mir eingefallen, wo ein Zeilenumbruch als Inhalt angesehen werden kann: Gedichte. Ich bleibe aber dabei, dass es äußerst wenige Fälle für eine sinnvolle Anwendung von br gibt.
Ich sehe das genauso. Im Prinzip braucht man es nicht. Manchmal gehts aber nicht anders. Daher noch eine Anwendung für Dich:
Adressen!
Code:
<address>
  Vorname Name<br />
  Straße Hsnr.<br />
  PLZ Ort<br />
  Telefon
</address>
<p> finde ich hier nicht angemessen, weil es sich nicht um Textabsätze handelt. Und mit einer Liste bin ich irgendwie auch nicht zufrieden, weil es sich nicht um eine Auflistung gleichwertiger Listenelemente handelt. Wenn, dann überhaupt eine <ol>, aber nee...
 
Aber die Methode mit den <div>s von _Thor_ finde ich auch akzeptabel, weil das div das label und die textarea zu einer logischen Einheit gruppiert.
Akzeptabel ist sie sicher - es funktioniert bei den meisten Nutzern gleichwertig und verbraucht sogar minimal weniger Zeichen im Code. Trotzdem ist sie nicht so gut wie eine Liste. Eine Aneinanderreihung irgendwelcher gruppierter Elemente sagt weniger aus als eine Auflistung gleichwertiger, evtl. geordneter Listeneinträge. Ein konkreter Vorteil der Liste fällt mir sogar ein: Bei einem Screenreader kann man einstellen, dass beim Vorlesen der Liste zuerst die Anzahl der Einträge genannt wird.

Zu dem br-Nebenthema: Stimmt, Du hast mich erwischt: Genau das habe ich auf allen meiner bisher erstellten Seiten so gehandhabt und werde es wohl weiter tun, da
PHP:
<address>
<dl>
  <dt>Vorname Name</dt>
  <dd>Hans Meier</dd>
  <dt>Stra&szlig;e Hausnummer</dt>
  <dd>Musterstra&szlig;e 1</dd>
  <dt>Postleitzahl Ort</dt>
  <dd>12345 Musterstadt</dd>
</dl>
</address>
mit
Code:
dt {
    display: none;
}
auch keine Alternative ist.
Auf meinen Wunschzettel für die Zukunft kommen hiermit die Tags fn, ln, str, strnr, zc und t.
PHP:
<address>
<!-- Achtung Fantasietags! -->
  <fn>Hans</fn>
  <ln>Meier</ln>
  <str>Stra&szlig;e</st>
  <strnr>1</strnr>
  <zc>12345</zc>
  <t>Musterstadt</t>
</address>
Ich beende dieses Posting bevor ich über <span title="Vorname Nachname"> nachzudenken anfange mit einem

Gruß
Junny
 
Zeilenumbrüche sind natürlich nicht immer die optimale Lösung (Absätze),
aber man sollte sich - wenn man diesen Befehl verwendet - die "Mühe" machen <br /> zu schreiben, warum auch nicht? Es gibt nur Vorteile!
 
Zum Beispiel darum nicht, wenn man Webseiten in HTML und nicht in XHTML erstellt.

OMG, das ist doch klar, genau so wenig sollte man JS-Befehle direkt in einen HTML-Code schreiben.

zu Efchen:

Es gibt genau einen Vorteil:
Wenn man XHTML schreibt, müssen leere Element mit /> geschlossen werden.
Damit das auch alte Browser verstehen sollte man " />" schreiben.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben