HTML & CSS için yeni başlayanlar için

HTML ve CSS'ye yeni başlayanlar için (Bölüm 46): İletişim formu (1)

Eğitimdeki tüm videolar HTML ve CSS için başlangıç kılavuzu

Aşağıdaki kabul ile ek bir HTML dosyası oluşturduğunuzu varsayıyorum. Ben bunu zaten kontakt.html adıyla kaydediyorum. kontakt.html dosyası zaten sizin tarafınızdan bilinen index.html ile aynı seviyede bulunmaktadır.

Bu ilk bölümde form üzerinde temel ayarlamalar yapılacaktır. Yuvarlatılmış köşeler, renk geçişleri vb. gibi şeyler sonra gelecek olan rehberde bulunacaktır.

kontakt.html içerisinde formu oluşturacaksınız. Form, div class'ı ile birlikte content tanımlanmış alan içerisinde oluşturulacaktır. Daha sonra hangi alanların oluşturulacağını düşünün. Ben şu bilgileri sormaya karar verdim:

• İsim
• E-Posta Adresi
• Yorum

Elden geldiğince hangi bilgileri almak istediğinizi kendiniz belirleyin. Ama genel olarak, sadece gerçekten gerekli olan verileri sormayı tavsiye ederim. Web sitelerini ziyaret eden çoğu kişi detaylı formlardan kaçınıyor. Bu nedenle kısa tutun.

Formumun temel yapısı şu şekilde görünmektedir:

<div class="content">
   <form class="form" action="#" method="post">
   <fieldset>
   <legend>Bizimle İletişime Geçin</legend>
   <ol>
      <li>
      <label for="name">İsim:</label>
      <input type="text" name="name" id="name" value="" />
      </li>
      <li>
      <label for="email">E-Posta Adresi:</label>
      <input type="text" name="email" id="email" value="" />
      </li>
      <li>
      <label for="comment">Yorum:</label>
      <textarea cols="32" rows="7" name="content" id="content"></textarea>
      </li>
      <li class="button">
      <input type="submit" name="submit" id="submit" value="Gönder" />
      </li>
   </ol>
   </fieldset>
   </form>
</div>

Form şu anda özel bir özelliğe sahip değil. Form alanının etrafına fieldset tanımı uygulanmıştır. Form alanlarının nasıl oluşturulacağı ve label öğelerinin ne olduğu zaten açıklanmıştır. Bu noktada formun tasarımına tamamen odaklanılacaktır.

Tarayıcıda sonucu görüntülediğinizde, henüz oldukça çekici olmayan bir form görünecektir.

HTML & CSS: Başlangıç için (Bölüm 46): İletişim formu (1)



Bunu iyileştirmek gerekmektedir.

Öncelikle form hakkında temel bilgiler sunulmuştur.

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



Dış ve iç dolgular tanımlanmıştır. Ayrıca forma 550 piksel genişlik verilmiştir.



fieldset tanımlamasına geçelim.

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



Burada da dolgular tanımlanmıştır.

Form alanları ol listesi içinde yer almaktadır.

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



Bu liste görsel olarak daha fazla liste olarak tanınmaması için list-style-type: none; kullanılmıştır. Ayrıca kenarlıklar ve iç dolgusu sırasıyla 0'a ayarlanmıştır.

Sonraki adımda liste girişleri tanımlanacaktır. Bu girişler sola yaslanır ve iç dolguları 10 pikseldir.

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



Formun altında bulunan düğmeye dikkat çekmek için ilginç bir detay var. Bu düğmenin sağa yaslanması gerekmektedir.

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

Form Başlığı

Şimdi legend öğesine geçelim. Form başlığı burada tanımlanacaktır.

HTML ve CSS'ye Giriş (Bölüm 46): İletişim Formu (1)



Başlık tanımı şu şekildedir:

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

Etiketler

label öğesi zaten bu seride karşınıza çıkmıştı. label ile alan adı ile form alanı arasında mantıksal bir bağlantı kurulabilir. CSS tanımı bakımından ilginç bir ayrıntı var burada.

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



label öğesine bazı özellikler ekliyorum. Bu sayede ziyaretçilere, alan adlarının tıklanabilir olduğunu belirtiyorum. Ziyaretçiler bir alan adını tıkladıklarında, ilgili alana otomatik olarak imleç konur.

HTML ve CSS'ye Giriş (Bölüm 46): İletişim Formu (1)

Form Alanlarını Tasarlama

Sıradaki adımda form alanları tasarlanacaktır. Öncelikle input ve textarea için genel bilgiler verilecektir.

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



Bunlar sadece tasarım unsurlarıdır. Özellikle çerçevelere dikkat edilmelidir. Çünkü bir alana imleci yerleştirdiğinizde çerçeve rengi değişir. Bu sadece estetik bir görünüm değildir. Aslında ziyaretçilere form doldururken de yardımcı olur. Böylece, ziyaretçiler her zaman imlecin hangi alanda olduğunu hemen görebilir.

Şimdi çok satırlı metin giriş alanına ilişkin bazı bilgiler takip ediyor.

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



Bu alanın genişliği 430 piksel olarak belirlenmiştir. Çok satırlı giriş alanları ile ilişkili olarak ilk bakışta garip gelen overflow: auto talimatıdır. Bu satır, eski Internet Explorer sürümlerine dayanmaktadır. Aslında, bu tarayıcı, çok satırlı giriş alanlarında resim kaydırma çubuklarını gereksiz şekilde gösteriyordu. overflow: auto ile bu estetik sorunu engellemek mümkündür.

Gönder düğmesini tasarlamak

Şu anda Gönder düğmesi oldukça sade görünüyor. Ancak şimdi bu durum değişecek. Sonuç şu şekilde olacak:

HTML ve CSS'ye Giriş (Bölüm 46): İletişim Formu (1)



Düğmeye çeşitli özellikler atanacaktır.

• Arkaplan rengi

• Yazı görünümü

• Çerçeve

• Aralıklar

Sağlanan CSS sözdizimi aşağıdaki gibidir:

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;
 }



Belirtilmesi gereken bir diğer nokta ise input[type="submit"] ifadesidir. Bu seçici, type="submit" özniteliğine sahip olan input öğelerine erişir.