Hoe OM - Responsiewe vorm
Leer hoe om 'n responsiewe vorm met CSS te skep.
Responsiewe vorm
Verander die grootte van die blaaiervenster om die effek te sien (die etikette en invoere sal bo-op mekaar in plaas van langs mekaar op kleiner skerms gestapel word):
Hoe om 'n responsiewe vorm te skep
Stap 1) Voeg HTML by
Gebruik 'n <form>-element om die invoer te verwerk. U kan meer hieroor leer in ons PHP- tutoriaal.
Voeg invoere (met 'n bypassende etiket) by vir elke veld, en draai 'n <div>-element om elke etiket en invoer om 'n gespesifiseerde breedte met CSS te stel:
Voorbeeld
<div class="container">
<form action="action_page.php">
<div class="row">
<div class="col-25">
<label for="fname">First Name</label>
</div>
<div class="col-75">
<input
type="text" id="fname" name="firstname" placeholder="Your name..">
</div>
</div>
<div class="row">
<div class="col-25">
<label
for="lname">Last Name</label>
</div>
<div class="col-75">
<input
type="text" id="lname" name="lastname" placeholder="Your last name..">
</div>
</div>
<div class="row">
<div class="col-25">
<label
for="country">Country</label>
</div>
<div class="col-75">
<select
id="country" name="country">
<option value="australia">Australia</option>
<option value="canada">Canada</option>
<option value="usa">USA</option>
</select>
</div>
</div>
<div class="row">
<div class="col-25">
<label
for="subject">Subject</label>
</div>
<div class="col-75">
<textarea
id="subject" name="subject" placeholder="Write something.."
style="height:200px"></textarea>
</div>
</div>
<div class="row">
<input type="submit" value="Submit">
</div>
</form>
</div>
Stap 2) Voeg CSS by:
Voorbeeld
/* Style inputs, select elements and textareas */
input[type=text], select, textarea{
width: 100%;
padding: 12px;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
resize: vertical;
}
/* Style the
label to display next to the inputs */
label {
padding: 12px 12px 12px 0;
display: inline-block;
}
/* Style the submit button */
input[type=submit] {
background-color: #04AA6D;
color: white;
padding: 12px
20px;
border: none;
border-radius: 4px;
cursor:
pointer;
float: right;
}
/* Style the container */
.container {
border-radius: 5px;
background-color:
#f2f2f2;
padding: 20px;
}
/* Floating column for labels:
25% width */
.col-25 {
float: left;
width: 25%;
margin-top: 6px;
}
/* Floating column for inputs: 75% width */
.col-75 {
float: left;
width: 75%;
margin-top: 6px;
}
/* Clear floats after the columns */
.row:after {
content:
"";
display: table;
clear: both;
}
/* Responsive layout - when the
screen is less than 600px wide, make the two columns stack on top of each
other instead of next to each other */
@media screen and (max-width: 600px) {
.col-25, .col-75, input[type=submit] {
width: 100%;
margin-top: 0;
}
}
Wenk: Gaan na ons HTML-vormhandleiding om meer oor HTML-vorms te wete te kom.
Wenk: Gaan na ons CSS-vormhandleiding om meer te wete te kom oor hoe om vormelemente te stileer.