HTML5 Tutorial Login-sida med HTML5 formulär
HTML5 ger många funktioner och förbättringar till webbformulär, Det finns nya attribut och ingångstyper som introducerades främst för att underlätta webbutvecklarnas liv och ge bättre upplevelse för webbanvändare.
Så, i det här inlägget kommer vi att skapa en inloggningssida med HTML5-formulär för att se hur de nya tilläggsfunktionerna fungerar.
- demo
- Hämta källa
HTML5-ingång
Låt oss ta en titt på följande markup.
Om du har arbetat med HTML-formulär före, så kommer det att bli bekant. Men du kommer också märka skillnader där. Ingångarna har platshållare
och nödvändig
attribut, vilka är nya attribut i HTML5.
Platshållare hållare~~POS=HEADCOMP
De platshållare
attributet tillåter oss att ge första text i inmatningen som kommer att försvinna när den är i en fokus
ange eller fyllas i. Tidigare brukade vi göra det med JavaScript, men nu blir det mycket lättare med det här nya attributet.
Obligatorisk egenskap
De nödvändig
attributet anger att fältet är obligatoriskt och bör därför inte lämnas tomt innan formuläret lämnas in, så när användaren inte fyllt i fältet kommer följande fel att visas.
Ny väljare introduceras också i CSS3, :nödvändig
att rikta in fält med nödvändig
attribut. Här är ett exempel;
inmatning: krävs gräns: 1px fast röd;
E-post Inmatningstyp
Den första inmatningstypen är e-post
vilket är faktiskt en ny fälttyp läggs till i HTML5 också. De e-post
typ kommer att ge grundläggande e-postadressvalidering i fältet. När användaren inte fyller fältet med en e-postadress kommer webbläsaren att visa följande meddelande;
Använda inmatningstyp för e-post kan också ge bättre upplevelse för mobila användare, som iPhone- och Android-användare, där den kommer att visa e-postoptimerade tangentbord på skärmen med en dedikerad “@” knappen för att hjälpa till att skriva e-postadress snabbare.
The Downsides
De nya formulärfunktionerna som erbjuds i HTML5 är kraftfulla och enkla att implementera, men de saknar fortfarande vissa områden. Till exempel;
De platshållare
attribut, stöds endast i moderna webbläsare - Firefox 3.7+, Safari 4+, Chrome 4+ och Opera 11+. Så, om du behöver det för att fungera i icke-stödda webbläsare, kan du använda dessa polyfills i samband med Modernizr.
Samma sak gäller med nödvändig
attribut. Felmeddelandet kan inte anpassas, felet kvarstår “Var vänlig fyll i det här fältet” hellre än “Vänligen fyll i ditt förnamn”, detta attribut stöd är också begränsat till de senaste webbläsarna.
Så, med hjälp av JavaScript för att validera det önskade fältet är (hittills) ett bättre alternativ.
funktion validateForm () var x = document.forms ["login"] ["användarnamn"]. värde; om (x == null || x == "") alert ("Vänligen fyll i användarnamnet"); returnera false;
Styling formulären
Okej, låt oss nu dekorera vårt inloggningsformulär med CSS. Först kommer vi att ge bakgrunden ett trämönster i html
märka.
html bakgrund: url ('wood_pattern.png'); typsnittstorlek: 10pt;
Då måste vi ta bort standardpolstring och marginal i ul
taggar som omsluter hela ingångar
och flyter på li
till vänster, så kommer ingångarna att visas horisontellt, sida vid sida.
.loginform ul vaddering: 0; marginal: 0; .loginform li display: inline; flyta till vänster;
Eftersom vi flyter på li
, föräldrarna kommer att kollapsa, så vi måste rensa saker kring föräldern med clearfixhacket.
etikett display: block; färg: # 999; .cf: före, .cf: efter innehåll: ""; display: bord; .cf: efter clear: both; .cf * zoom: 1; : fokus disposition: 0;
I CSS3 har vi negationsväljaren. Så vi ska använda den för att rikta in sig ingångar annat än lämna
typ, vilket i detta fall kommer att rikta in e-post och lösenordsinmatning;
.loginform input: not ([typ = submit]) padding: 5px; marginal-höger: 10px; gräns: 1px fast rgba (0, 0, 0, 0.3); gränsstråle: 3px; boxskugga: inmatning 0px 1px 3px 0px rgba (0, 0, 0, 0,1), 0px 1px 0px 0px rgba (250, 250, 250, 0,5);
Slutligen, vi kommer att ge en liten stil dekoration för Lämna knappen, enligt följande.
.loginform input [typ = skicka] border: 1px solid rgba (0, 0, 0, 0.3); bakgrund: # 64c8ef; / * Gamla webbläsare * / bakgrund: -moz-linjär-gradient (topp, # 64c8ef 0%, # 00a2e2 100%); / * FF3.6 + * / bakgrund: -webkit-gradient (linjär, vänster topp, vänster botten, färgstopp (0%, # 64c8ef), färgstopp (100%, # 00a2e2)); / * Chrome, Safari4 + * / bakgrund: -webkit-linjär-gradient (topp, # 64c8ef 0%, # 00a2e2 100%); / * Chrome10 +, Safari5.1 + * / bakgrund: -o-linjär-gradient (topp, # 64c8ef 0%, # 00a2e2 100%); / * Opera 11.10+ * / bakgrund: -ms-linjär gradient (topp, # 64c8ef 0%, # 00a2e2 100%); / * IE10 + * / bakgrund: linjär gradient (till botten, # 64c8ef 0%, # 00a2e2 100%); / * W3C * / filter: progid: DXImageTransform.Microsoft.gradient (startColorstr = "# 64c8ef", endColorstr = "# 00a2e2", GradientType = 0); / * IE6-9 * / färg: #fff; vaddering: 5px 15px; marginal-höger: 0; marginal-topp: 15px; gränsstråle: 3px; textskugga: 1px 1px 0px rgba (0, 0, 0, 0.3);
Det är det, nu kan du prova inloggningsformuläret från följande länkar.
- demo
- Hämta källa
Slutord
I den här handledningen tittade vi på några nya funktioner i HTML5-formulär:platshållare
, nödvändig
och e-post
Inmatningstyper för att skapa en enkel inloggningssida. Vi har också kommit igenom attributens nackdelar, så vi kan bestämma oss för ett bättre tillvägagångssätt.
I nästa inlägg tittar vi på nya HTML5-formulärfunktioner, så håll dig uppdaterad.