Hidden Search Örneği

Bu yazımızda, HTML, CSS ve JavaScript kullanarak hidden search örneği oluşturacağız. Bu örnek ile şu konuları pekiştireceğiz:

  1. ☑️ HTML
    • HTML dosyası, temel sayfa yapısını oluşturur.
    • Sayfanın başında meta etiketleri ve harici CSS ve JS dosyalarını içeren bağlantılar bulunur. Ayrıca, Font Awesome kütüphanesinin bir CDN bağlantısı mevcuttur.
    • Gövde kısmında, arama kutusu ve arama butonu için iki bileşen içeren “search” adlı bir div bulunur.
    • Arama kutusu ve butonu için input ve button HTML elemanları kullanılır.
  2. ☑️ CSS
    • CSS dosyası, sayfadaki öğelerin stilini belirler.
    • İlk olarak, bir Google fontu olan “Roboto” yazı tipi dahil edilir ve sayfanın genel stilinde kullanılır.
    • Sayfanın arka planı, iki renk arasında geçiş yapan bir doğrusal gradyan olarak ayarlanır.
    • Arama kutusunun ve butonunun genel stilleri ve animasyonları tanımlanır. Aktif ve pasif durumları arasında geçiş yaparken, arama kutusunun genişliği ve düğmenin konumu değiştirilir.
  3. ☑️ JavaScript
    • JavaScript, kullanıcının arama butonuna tıklamasına tepki olarak, arama kutusunu gizli durumdan görünür hale getirir.
    • Arama ve butonu için DOM elemanlarını seçer ve bir “click” olay dinleyicisi ekler.
    • “click” olayı tetiklendiğinde, search div’ine “active” sınıfını ekleyerek veya çıkararak arama kutusunu ve butonunu animasyonla açar/kapatır.

Projemiz, çeşitli sitelerde görebileceğiniz bir arama butonu içeren web sayfası tasarlamayı içermektedir. Projenin işleyişini CodePen üzerinden inceleyebilirsiniz:

See the Pen Hidden Search by 1kodum (@1kodum) on CodePen.

⭐ HTML kodu

⭐ CSS kodu

Aşağıdaki CSS kodu, gizli arama kutusu ve butonu olan bir web sayfasının görünümünü ve animasyonlarını düzenler. Kodun temel bileşenlerini şu şekilde özetleyebiliriz:

  1. Bu CSS kodu, gizli arama kutusu ve butonu olan bir web sayfasının görünümünü ve animasyonlarını düzenler. Kodun temel bileşenlerini şu şekilde özetleyebiliriz:
  2. “Roboto” yazı tipini Google Fonts’tan içe aktarır ve tüm sayfadaki yazı stilleri için kullanır.
  3. Tüm HTML elemanlarının kutu modelini “border-box” olarak ayarlar, böylece padding ve border, elemanın genişliğine ve yüksekliğine dahil edilir.
  4. Sayfa arka planını, iki renk arasında geçiş yapan doğrusal bir gradyan olarak ayarlar.
  5. Sayfanın içeriğini merkezde hizalar ve sayfanın yüksekliğini tarayıcı penceresinin yüksekliğine eşitler.
  6. Arama kutusunun ve butonunun temel stillerini ve animasyonlarını tanımlar:
    • Arama kutusu başlangıçta kısa ve kare şeklindedir.
    • Arama düğmesi, arama kutusunun sol üst köşesinde yer alır.
    • Arama kutusunun ve düğmesinin odak stili (tarayıcının varsayılan dış çizgisi) kaldırılır.
  7. Arama kutusu ve butonu aktif hale geldiğinde (yani, kullanıcı butona tıkladığında), animasyonlar devreye girer:
    • Arama kutusu genişler ve kullanıcıya metin girişi için alan sunar.
    • Arama butonu, genişleyen arama kutusunun yanına geçer.

⭐ JavaScript kodu

Aşağıdaki JavaScript kodu, arama kutusu ve düğmesinin animasyonları için etkileşim sağlar. Kısaca aşağıdaki işlemleri gerçekleştirir:

  1. .search, .btn ve .input sınıfına sahip DOM elemanlarını (sırasıyla arama kutusu ve düğmesini içeren div, arama düğmesi ve arama kutusu) seçer ve ilgili değişkenlere atar.
  2. Arama düğmesine (btn) tıklama olayını dinler ve bu olay gerçekleştiğinde bir fonksiyon çalıştırır.
  3. Bu fonksiyonda:
    • Arama kutusu ve düğmesini içeren div’e (search) “active” sınıfını ekler veya çıkarır. Bu, CSS’te tanımlanan animasyonların tetiklenmesini sağlar (arama kutusunun genişlemesi ve düğmenin kayması).
    • Arama kutusuna (input) odaklanır. Bu sayede, kullanıcı düğmeye tıkladığında, arama kutusuna metin girmeye başlayabilir.

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu