HTML ja CSS algajatele

HTML ja CSS algajatele (osa 46): Kontaktvorm (1)

Kõik õpetuse videod HTML ja CSS algajatele

Ma eeldan, et te loote lisaks HTML-faili. Mina isiklikult salvestan selle faili nimega kontakt.html. Kontakt.html asub samal tasemel kui teie juba teadaolev index.html.

Selles esimeses osas tehakse põhilised vormi seaded. Ümarad nurgad, värvigradiendid jne järgnevad järgmises õpetuses.

Kontakt.html-s luuakse vorm. Vorm määratletakse div elemendis, mille klassiks on content. Mõelge seejärel välja, millised väljad luua. Mina olen otsustanud järgmiste andmete küsimiseks:

• Nimi
• E-posti aadress
• Kommentaar

Loomulikult peate ise otsustama, milliseid andmeid soovite koguda. Põhimõtteliselt soovitan koguda vaid tegelikult vajalikke andmeid. Enamik veebisaidi külastajaid kipub eemale hoidma pikkadest vormidest. Hoidke see siis lühike.

Minu vormi põhiolemus on järgmine:

<div class="content">
   <form class="form" action="#" method="post">
   <fieldset>
   <legend>Võtke meiega ühendust</legend>
   <ol>
      <li>
      <label for="name">Nimi:</label>
      <input type="text" name="nimi" id="nimi" value="" />
      </li>
      <li>
      <label for="email">E-posti aadress:</label>
      <input type="text" name="email" id="email" value="" />
      </li>
      <li>
      <label for="comment">Kommentaar:</label>
      <textarea cols="32" rows="7" name="sisu" id="sisu"></textarea>
      </li>
      <li class="button">
      <input type="submit" name="saada" id="saada" value="Saada" />
      </li>
   </ol>
   </fieldset>
   </form>
</div>

Vormis pole alguses midagi erilist. Ümber vormiväljade kasutati fieldset määrangut. Kuidas luua vormivälju ja mida tähendavad label elemendid, on juba piisavalt kirjeldatud. Siinkohal tuleb keskenduda vormi kujundamisele.

Kui tulemused brauseris avate, näete alguses veel mitte eriti kõnekas vorm.

HTML ja CSS algajatele (Osa 46): Kontaktvorm (1)



Siin tuleb kindlasti parandusi teha.

Kõigepealt tehakse põhiandmed vormile.

form {
   padding: 3px 0 0;
   margin: 10px auto;
   width: 550px;
 }



Siin on määratletud välimised ja sisesed vahed. Lisaks seatakse vormile laius 550 pikslit.

Jätkame fieldset kujundamisega.

fieldset {
   padding: 10px 20px 25px;
 }



Siinkohal on määratletud vahed.

Vormiväljad ise on paigutatud järjestatud ol nimekirja elementideks.

ol {
   list-style-type: none;
   margin: 0;
   padding: 0;
 }



Selleks et see loetelu optiliselt enam ei paistaks, kasutatakse list-style-type: none;. Lisaks määratakse nii piirid kui ka sisevahed nulliks.

Järgmisena määratletakse loendi sissekanded. Need ujuvad vasakule ja neil on sisevahemaa 10 pikslit.

li {
   float: left;
   padding: 10px;
 }



Erilist märkust väärib nupp vormi all. See peaks olema paremale joondatud.

li.button {
   float: none;
   clear: both;
    text-align: right;
 }

Vormi pealkiri

Pöördume nüüd legend elemendi poole. Selle abil määratakse vormi pealkiri.

HTML ja CSS algajatele (Osa 46): Kontaktvorm (1)



Pealkirja määratlus on järgmine:

fieldset legend {
   font-weight: bold;
   font-size: 22px;
   margin: 20px 0 0 10px;
 }

Sildid

label element on samuti juba selle seeria raames käsitletud. Selle abil saab luua loogilise seose väljanimetuse ja tegeliku vormivälja vahel. CSS defineerimisel on siin üks eripära.

label {
   display:block;
   cursor: pointer;
   font-weight: bold;
   line-height: 24px;
 }



Ma varustan label elemendi muu hulgas cursor määranguga. See annab külastajatele märku, et väljanimetused on klõpsatavad. Kui nad klõpsavad tõepoolest väljanimetust, määratakse vastavasse välja automaatselt kursor.

HTML ja CSS algajatele (Osa 46): Kontaktvorm (1)

Vormi väljade kujundamine

Järgmisena kujundatakse tegelikud vormiväljad. Kõigepealt tehakse üldised määrangud input ja textarea kohta.

input, textarea {
   color: #3399FF
   border: 1px solid #3399FF;
   font: 13px Helvetica, Arial, sans-serif;
   padding: 8px 10px;
   width: 190px;
 }



Siin on tegemist ainult kujunduslike asjadega. Erilist tähelepanu tuleks pöörata raamidele. Niipea kui kursor asetatakse väljale, muutub raamatu värv. See pole ainult esteetiline aspekt. Tegelikult aitab see ka külastajaid vormi täitmisel. Nii näevad nad alati, millisel väljal kursor hetkel asub.

Nüüd järgnevad mõned andmed mitmerealise tekstisisestusvälja kohta.

textarea {
   width: 430px;
   overflow: auto;
 }



Selle välja laius määratakse 430 piksliga. Võib-olla tundub alguses veider juhend overflow: auto seoses mitmerealiste sisestusväljadega. See rida on tingitud vanematest Internet Exploreri versioonidest. Tegelikult näitas see brauser mitmerealistes sisestusväljades ka siis kerimisribasid, kui see polnud tegelikult vajalik. Overflow: auto abil saab selle iluprobleemi lahendada.

Disaini Saada nupp

Praegu näeb Saada nupp üsna tagasihoidlik välja. See muutub nüüd. Tulemus näeb välja järgmine:

HTML ja CSS algajatele (Osa 46): Kontaktvorm (1)



Nuppule määratakse erinevad omadused.

• Taustavärv

• Fondi välimus

• Raam

• Vahed

Sellele vastav CSS-süntaks on järgmine:

input[type="submit"] {
   background-color: #3399FF;
   color: #fff;
   cursor: pointer;
   font: bold 1em/1.2 Georgia, "Times New Roman ", serif;
   border: 1px solid #000;
   padding: 5px 10px;
   width: auto;
 }



Märkimisväärne võib olla siin juhend input[type="submit"]. Selle valija abil pääsete juurde sisestuselementidele, millel on atribuudi-väärtuse kombinatsioon type="submit".