Wie kann ich die Eingabefelder bei einem Formular (Inhaltstypen) inline legen?
Eingetragen von beaschmitz (465)
am 27.04.2011 - 13:42 Uhr in
am 27.04.2011 - 13:42 Uhr in
Wie kann ich die Eingabefelder bei einem Formular (Inhaltstypen) inline legen?
Hallo,
ich habe einen Contenttyp angelegt und mit einigen Textfeldern (z.b Adresse) versehen.
Nun erscheint bei erstellen des Contenttyps immer:
Adresse
(----hier ist das Eingabefeld----)
Kann ich das auch neben die Adresse setzen?
DANKE
- Anmelden oder Registrieren um Kommentare zu schreiben
Du könntest mit CSS und der
am 27.04.2011 - 13:50 Uhr
Du könntest mit CSS und der Anweisung "float" Deine Labels inline platzieren.
z.B.:
.form-item label {
display: block;
float: left;
font-weight: bold;
}
Nur ein Beispiel mit der "heissen Nadel" Da sind dann allerdings noch Feinabstimmungen nötig ...
Ja ok, aber wo genau kommt
am 27.04.2011 - 22:07 Uhr
Ja ok, aber wo genau kommt dies denn hier in den code? (ich bin nicht so fit in php und habe keine ahnung wann eich etwas "zerstöre")
meinen Inhaltstypen habe ich mit "mein content typ" aufgeführt.....
<?php
global $user;
module_load_include('inc', 'node', 'node.pages');
if (node_access('create', 'mein content typ')) {
$node = array('uid' => $user->uid, 'name' => (isset($user->name) ? $user->name : ''), 'type' => 'mein content typ', 'language' => '');
print drupal_get_form('mein content typ_node_form', $node);
}
?>
DANKE
Das hat nichts mit php zu tun
am 28.04.2011 - 09:24 Uhr
Das hat nichts mit php zu tun sondern gehört in deine css datei im theme ordner.
gruß,
andi
jaja, aber man kann auch um
am 28.04.2011 - 17:31 Uhr
jaja,
aber man kann auch um den php code eine formatierung legen...
nur steht in dem aufgeführten php code ja nur der formular/node name.
wie sage ich nun genau an dieser stelle, welche felder inline gelegt werden?
das form besteht ja aus mehreren feldern und wie kann ich die einzeln ansprechen?
Ich hab keine Ahnung von php,
am 28.04.2011 - 17:38 Uhr
Ich hab keine Ahnung von php, frag mich aber wie man um den php code eine formulierung legt ohne mit css formatierte html elemente zu benutzen???
Zitat: aber man kann auch um
am 28.04.2011 - 17:41 Uhr
aber man kann auch um den php code eine formatierung legen...
Also ich habe schon etwas Ahnung von PHP und kann mir ebenfalls nicht vorstellen, was damit gemeint ist. Sowas geht vielleicht im Template (mehr oder weniger) aber nicht mit normalem PHP-Code.
das form besteht ja aus mehreren feldern und wie kann ich die einzeln ansprechen?
Zum dritten Mal: Indem du die Felder mit CSS inline setzt. Installiere dir das Firefox-Addon "Firebug" und schau damit, welche IDs die Felder haben. Oder gib den Feldern im Formular-Code eine extra Klasse, welche du dann über CSS ansprechen kannst.
Hallo Exterior, das mit dem
am 29.04.2011 - 20:03 Uhr
Hallo Exterior,
das mit dem PHP Code war folgenderweise gemeint:
<span style="font-family: Arial; color: black; font-size: 10pt">
<?php
global $user;
module_load_include('inc', 'node', 'node.pages');
if (node_access('create', 'meincontent')) {
$node = array('uid' => $user->uid, 'name' => (isset($user->name) ? $user->name : ''), 'type' => 'meincontent', 'language' => '');
print drupal_get_form('meincontent_node_form', $node);
}
?>
</span>
Jetzt habe ich das Formular zum Beispiel schwarz (Schriftfarbe) gemacht, obwohl eben in der Haupt CSS die Schrift auf blau bestimmt ist...
Aach, die namen der Felder kenn ich ja schon, die habe ich ja selbst angelegt. und die kann ich dann so mit dem Feldnamen ansprechen???
Oje, das gibt doch ein riesen
am 30.04.2011 - 10:12 Uhr
Oje, das gibt doch ein riesen Chaos, wenn du Formatierung (die auch in deinem Besipiel nur mit CSS funktioniert) in die tmp schreibst.....Es gibt nicht ohne Grund die trennung von Inhalt und Gestaltung. Drupal legt schon einen haufen klassen an, die du nur ansprechen musst, und das am besten in den css dateien sonst wird es früher oder später extrem unübersichtlich.
Wenn du dich nicht gut mit css auskennst, solltest du dir zumindest die grundlagen aneignen. Das schon genannte Firefox Plugin Firebug ist eine super Hilfe, wenn du herausbekommen willst, welche Klasse du ansprechen musst.
Gruß,
Andi
Ja, ok, aber ich wollte nur
am 30.04.2011 - 16:02 Uhr
Ja, ok, aber ich wollte nur dieses eine Formular auf dieser bestimmten Seite ansprechen?!
beaschmitz schrieb Ja, ok,
am 30.04.2011 - 16:23 Uhr
Ja, ok, aber ich wollte nur dieses eine Formular auf dieser bestimmten Seite ansprechen?!
Das Zauberwort lautet noch immer CSS, ganz egal wierum du deine Frage formulierst.
Wie schon geschrieben wurde enthält der HTML-Output von Drupal bereits eine ganze Menge von Angriffspunkten (DIVs, SPANs, CSS-Klassen und -IDs) die einem in über 90% aller Fälle genügend Spielraum lassen ein Element per CSS anzupassen. Für die Ausnahmen muss man ggf. das Formular vor der Ausgabe anpassen, die Reihenfolge von Elementen ändern, Code davor oder danach einfügen, oder dergleichen. An dem Punkt bist du aber noch lange nicht.
Ein auf mehreren Seiten wiederkehrendes Element auf nur einer spezifischen Seite anzupassen ist meist auch kein Problem, da die Themes für gewöhnlich etwa das BODY-Tag mit ausreichend Klassen und / oder einer ID versorgen, die die Seiten eindeutig spezifiziert. Wo ich dies eintippe hat das BODY-Tag u.a. die Klasse "page-comment-reply-35049-124591". Eindeutiger gehts im Grunde nicht.
Hat man wiederum einen Ausnahmefall vor sich, kann man über das Theming mit etwas PHP zusätzlich Klassen oder IDs in den Code setzen, etwa wenn in der Node-Seitenansicht auch der Inhaltstyp als Klasse im BODY verewigt sein soll (was manches Theme aber schon von Haus aus mitbringt).