J'utilise le formulaire de contact 7 pour concevoir un formulaire de réservation d'hôtel.
Je n'arrive pas à comprendre comment personnaliser la mise en page. J'aimerais que certains champs de texte soient affichés sur la même ligne, mais je ne trouve pas l'identification correcte pour les éléments et/ou le style CSS à utiliser pour atteindre cet objectif très simple.
Voici le code:
<div id="responsive-form" class="clearfix">
<label> Your Name (required)
[text* your-name] </label>
<label> Your Email (required)
[email* your-email] </label>
<label> Arrival date
[date date-79 id:Arrivaldate date-format:mm/dd/yy] </label>
<label> Departure date
[date date-80 id:Departuredate date-format:mm/dd/yy] </label>
<label> How many guests?
[text your-guests] </label>
<div class="form-row">
<p>Number of adults [text your-adults]</p>
<p>Number of children under 6 years old [text your-little-children]</p>
<p>Number of children under 12 years old [text your-big-children]</p>
</div>
Select your preferred accomodation
[checkbox your-accomodation use_label_element "Wayan (Two-story villa)" "Kadek (Two-story villa)" "Nyoman (Garden bungalow)" "Kehut (Garden bungalow)" "Pasca (Garden bungalow)"]
Do you need transportation to the hotel ?
[radio your-pickup default:1 use_label_element exclusive "No transport needed" "Transport from Denpasar airport" "Transsport from Gilimanuk Ferry"]
<label> Do you want us to arrange motorbike rental for you ?
[text your-motorbikes] </label>
<label> Tell us more about what brings you to Balian
[textarea your-message] </label>
[submit "Send"]
</div>
Je souhaite afficher les éléments p des éléments de ligne de formulaire sur une seule ligne. J'ai essayé cette ligne CSS:
.form_row p{
display: inline-block
}
Mais ça ne fait rien. Je sens que je manque quelque chose, quelqu'un peut-il aider?
Merci d'avance,
Benjoin
Vous avez probablement une règle CSS qui agrandit l'élément <p>
.
Pourquoi ne pas utiliser <div>
et utiliser les classes du thème?
<div class="form-row">
<div class="grid-33">Number of adults [text your-adults]</div>
<div class="grid-33">Number of children under 6 years old [text your-little-children]</div >
<div class="grid-33">Number of children under 12 years old [text your-big-children]</div>
</div>
Le manque de solutions de conception pour Contact Form 7 ..__ m'a frustré. Il y a un an, j'avais pour tâche de créer plusieurs formulaires dans cf7, avec des exigences de mise en page complexes. Pour résoudre ce problème, je me suis mis à créer un plug-in qui permette des conceptions de disposition de grille réactives, ainsi que la possibilité d'adopter une approche modulaire pour la création de formulaires, c'est-à-dire la possibilité de réutiliser des formulaires existants dans des constructions de formulaire plus grandes. Le schéma de mise en page Smart Grid pour CF7 , fournit un éditeur d’interface utilisateur de grille dans le tableau de bord qui vous permet de créer une mise en page à 3 colonnes sur une seule ligne. Vous n'avez pas besoin de jouer avec css, la mise en page sera rendue sur votre page. Il est également réactif, il sera par défaut à 3 lignes sur un téléphone mobile.
Essayez et laissez-moi savoir ce que vous pensez.
Votre code fonctionne bien pour moi, vous avez juste une erreur de syntaxe dans votre CSS. Le nom de votre définition dans le code HTML est "formulaire-ligne" mais en CSS, vous avez écrit "formulaire_row". Il suffit de changer la règle pour "form-row" et tout fonctionne comme prévu.
.form_row p{
display: inline-block
}
Vous pouvez utiliser votre grille de thèmes pour la diviser en deux colonnes. voir l'extrait ci-dessous
<div id="responsive-form" class="clearfix">
<div class="vc_row ">
<div class="vc_col-sm-6">
<label> Your Name (required)
[text* your-name] </label>
</div>
<div class="vc_col-sm-6">
<label> Your Email (required)
[email* your-email] </label>
</div>
</div>
<label> Arrival date
[date date-79 id:Arrivaldate date-format:mm/dd/yy] </label>
<label> Departure date
[date date-80 id:Departuredate date-format:mm/dd/yy] </label>
<label> How many guests?
[text your-guests] </label>
<div class="form-row">
<p>Number of adults [text your-adults]</p>
<p>Number of children under 6 years old [text your-little-children]</p>
<p>Number of children under 12 years old [text your-big-children]</p>
</div>
Select your preferred accomodation
[checkbox your-accomodation use_label_element "Wayan (Two-story villa)" "Kadek (Two-story villa)" "Nyoman (Garden bungalow)" "Kehut (Garden bungalow)" "Pasca (Garden bungalow)"]
Do you need transportation to the hotel ?
[radio your-pickup default:1 use_label_element exclusive "No transport needed" "Transport from Denpasar airport" "Transsport from Gilimanuk Ferry"]
<label> Do you want us to arrange motorbike rental for you ?
[text your-motorbikes] </label>
<label> Tell us more about what brings you to Balian
[textarea your-message] </label>
[submit "Send"]
</div>
Vous pouvez utiliser un tableau HTML comme suit:
<table>
<tr>
<td>Number of adults [text your-adults]</td>
<td>Number of children under 6 years old [text your-little-children]</td>
<td>Number of children under 12 years old [text your-big-children]</td>
</tr>
</table>
Vous pouvez simplement utiliser la structure du tableau HTML !!!
<table>
<tr>
<td colspan="2">[text* Name placeholder "Your Name"]</td>
</tr>
<tr>
<td>[text* Class placeholder "Enter Class"]
</td>
<td>
[text* Medium placeholder "Enter Medium"]
</td>
</tr>
</table>
[submit "Submit"]
J'espère que cette vidéo vous aidera
Voici le code CSS de mon formulaire de contact 7:
/* Create two equal columns that floats next to each other */
.column {
float: left;
width: 50%;
padding: 10px;
}
/* Clear floats after the columns */
.row:after {
display: table;
clear: both;
}
#knopka
{
color: #fffff;
background: #8F8CA0;
width: 90%;
font-family: Arial, Helvetica, sans-serif;
font-weight: bold;
}