Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > Zend_Form
Zend_Form Forum d'entraide pour le composant Zend_Form du Zend Framework (création de formulaires, helpers, AJAX etc.). Avant de poster -> FAQ Zend_Form.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/05/2011, 23h48   #1
Membre à l'essai
 
Inscription : mars 2008
Messages : 140
Détails du profil
Informations forums :
Inscription : mars 2008
Messages : 140
Points : 22
Points : 22
Par défaut Zend Form Quelle calamité ! Alignement champ/label

Bonjour, je souhaiterais faire une chose simple. C'est aligner mes label sur la même ligne que mes input. Par défaut les label de Zend Form se trouve au dessus des champs



Mais mon patron veut absolument que les champs de mon form ressemble à quelque chose comme ceci



Ca fait tout ce week-end que je me bat sur les décorateurs de Zend et j'y arrive pas. C'est une vraie calamité. Plus compliqué que ça on pouvait pas faire ?

Si quelqu'un a une piste je suis preneur. J'ai tenté de mettre un float left sur ma classe label. Mais bien entendu dès que je met des check box ou des radio bouton, c'est un veritable border.

Quelqu'un saurait-il comment je peux aligner mes label avec mes input.

Merci

yamatoshi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 09h55   #2
Expert Confirmé
 
Avatar de grunk
 
Homme Olivier
Développeur Web
Inscription : août 2003
Messages : 1 837
Détails du profil
Informations personnelles :
Nom : Homme Olivier
Âge : 27
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Développeur Web
Secteur : Industrie

Informations forums :
Inscription : août 2003
Messages : 1 837
Points : 3 318
Points : 3 318
Avec le rendu de base , c'est à dire avec les dt dd un simple
Code :
dt{width:150px;float:left;}
me donne un rendu tout à fait correct. Testé uniquement sous chrome mais ca devrais marcher à peut près partout
grunk est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 10h41   #3
Membre régulier
 
Inscription : février 2011
Messages : 114
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 114
Points : 77
Points : 77
Bonjour yamatoshi,

ci-dessous un moyen de faire ce que tu veux à l'aide d'un décorateur. Je l'ai testé et ça fonctionne!
Code :
1
2
3
4
5
6
7
8
9
10
11
 
 
$decoratorElem = array ('ViewHelper', 'Description', array ('HtmlTag', array ('tag' => 'td' ) ), array ('Label', array ('requiredSuffix' => ' *', 'tag' => 'td', 'align' => 'left', 'valign' => 'top', 'width' => '110px' ) ), array (array ('tr' => 'HtmlTag' ), array ('tag' => 'tr' ) ) ); // définition du décorateur pour l'alignement du champ et de son label
 
$nom = new Zend_Form_Element_Text ('nom');
$nom->setName('nom');
$nom->setLabel('Nom'); // label de l'élément 
$nom->setOrder(1); 
$nom->setRequired(true); // champ obligatoire
$nom->setDecorators($decoratorElem); // affectation du décorateur à l'élément
$elementGrossier->addElement($nom); // ajout de l'élément au formulaire
Cordialement,
flilou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 11h04   #4
Expert Confirmé
 
Avatar de grunk
 
Homme Olivier
Développeur Web
Inscription : août 2003
Messages : 1 837
Détails du profil
Informations personnelles :
Nom : Homme Olivier
Âge : 27
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Développeur Web
Secteur : Industrie

Informations forums :
Inscription : août 2003
Messages : 1 837
Points : 3 318
Points : 3 318
Citation:
Envoyé par flilou Voir le message
Bonjour yamatoshi,

ci-dessous un moyen de faire ce que tu veux à l'aide d'un décorateur. Je l'ai testé et ça fonctionne!

Cordialement,
C'est sémantiquement pas correct d'utiliser un tableau pour aligner un formulaire , mais effectivement c'est fonctionnel
grunk est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h57.


 
 
 
 
Partenaires

Hébergement Web