Html & Css İle Özelleştirilebilir Bir E-Ticaret Sepet Sayfası Nasıl Yapılır?

Gereksinimler ve Ön Hazırlık

Projeye başlamadan önce modern bir kod editörüne (VS Code gibi) ve tarayıcı geliştirici araçlarına (Chrome DevTools) ihtiyacınız var. 2026 yılı web standartlarında, HTML5 ve CSS3 (Grid/Flexbox) kullanımı zorunludur. Projenizi yapılandırırken dosya düzenine dikkat etmeniz, sürdürülebilirlik açısından kritiktir.

  • HTML5: Sayfa yapısının semantik (anlamlı) etiketlerle oluşturulması.
  • CSS3: Modern düzenleme teknikleri ve responsive (duyarlı) tasarım.
  • Tarayıcı: Güncel bir Chrome, Firefox veya Edge tarayıcısı.

Adım 1: Sepet Sayfasının HTML İskeletini Oluşturma

Sepet sayfasının iskeletini oluştururken main, section ve article gibi semantik etiketleri kullanmak, hem SEO performansını artırır hem de ekran okuyucular için erişilebilirliği sağlar. Aşağıdaki kod bloğu, ürün listesi ve özet kutusunu içeren temel yapıyı temsil eder.


  

Alışveriş Sepetiniz

Ürün Adı
Html & Css İle Özelleştirilebilir Bir E-Ticaret Sepet Sayfası Nasıl Yapılır?

Ürün Başlığı

Fiyat: 250.00 TL

Sipariş Özeti

Satın Al

Adım 2: CSS ile Sepet Sayfasını Düzenleme

Sepet sayfasının düzenini oluşturmak için CSS Grid kullanacağız. Grid, iki boyutlu bir yerleşim sistemi sunduğu için ürün listesini sol tarafa, özet kutusunu ise sağ tarafa sabitlemek için idealdir. Aşağıdaki kod, basit bir iki sütunlu yerleşim sağlar.

.cart-container {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 20px;
  max-width: 1200px;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .cart-container {
    grid-template-columns: 1fr;
  }
}

Adım 3: Ürün Kartlarını Özelleştirme

Ürün kartları, kullanıcının sepetteki ürünleri net görmesini sağlar. Flexbox kullanarak görseli ve metin bilgilerini hizalayacağız. Bu yaklaşım, farklı ekran boyutlarında kartın içeriğinin düzgün şekilde yayılmasını sağlar.

.cart-item {
  display: flex;
  align-items: center;
  padding: 15px;
  border-bottom: 1px solid #ddd;
}

.item-details {
  margin-left: 20px;
}

Adım 4: Sipariş Özeti ve Buton Tasarımı

Sipariş özeti, kullanıcının toplam tutarı gördüğü ve ödeme adımına geçtiği yerdir. Bu alanın dikkat çekici olması için kontrast renkler ve belirgin bir buton tasarımı kullanmalıyız. 2026 tasarım trendlerine uygun olarak "Call-to-Action" (CTA) butonlarını vurguluyoruz.

.cart-summary {
  background: #f9f9f9;
  padding: 20px;
  border-radius: 8px;
}

.cart-summary button {
  width: 100%;
  padding: 15px;
  background-color: #28a745;
  color: white;
  border: none;
  cursor: pointer;
}

Adım 5: Tablo Yapısı ile Detaylı Fiyat Listesi

Bazen sepet sayfasında ürünlerin detaylı vergi ve kargo dökümünü göstermek gerekebilir. HTML table etiketi, bu tip yapısal verileri sunmak için en doğru yöntemdir.

Açıklama Tutar
Ara Toplam 500.00 TL

Yöntem Karşılaştırmaları

Sepet sayfası tasarlarken kullanabileceğiniz farklı yaklaşımların avantaj ve dezavantajlarını aşağıda bulabilirsiniz:

Yöntem Avantajı Dezavantajı
CSS Grid Karmaşık yerleşimler için mükemmeldir. Çok eski tarayıcılarda destek sorunu olabilir.
Flexbox Öğeleri hizalamak için en hızlı yöntemdir. Tek boyutlu düzenler için uygundur.
Kritik Uyarı: Sepet sayfasında fiyat verilerini asla sadece HTML/CSS ile manipüle etmeyin. Fiyatlar her zaman sunucu tarafında (Back-end) doğrulanmalıdır. Aksi takdirde kullanıcılar tarayıcı konsolunu kullanarak fiyatları değiştirebilir.

Sıkça Sorulan Sorular

Sepet sayfasını mobil cihazlara nasıl tam uyumlu yaparım?

CSS'deki @media sorgularını kullanarak ekran genişliği 768 pikselin altına düştüğünde grid-template-columns değerini 1fr yaparak tüm öğeleri alt alta dizebilirsiniz.

Neden tablo (table) kullanmalıyım?

Tablo yapısı, verilerin satır ve sütun bazlı karşılaştırılması gereken sipariş özeti veya vergi hesaplamaları gibi durumlar için anlamsal olarak en doğru HTML etiketidir.

CSS'de Flexbox ve Grid arasındaki fark nedir?

Flexbox tek boyutlu (satır veya sütun) hizalamalar için kullanılırken, Grid iki boyutlu (hem satır hem sütun) karmaşık yerleşimler için tasarlanmıştır.

Sepet verilerini nasıl saklamalıyım?

Tarayıcı tarafında geçici saklama için localStorage kullanılabilir, ancak kalıcı ve güvenli işlemler için mutlaka bir veritabanı ile entegre bir sunucu yapısı kurulmalıdır.

Erişilebilirlik için nelere dikkat etmeliyim?

Tüm görsellere alt etiketi ekleyin, butonlara aria-label tanımlayın ve renk kontrast oranlarının okunabilir olduğundan emin olun.

Güvenlik Sorumluluk Reddi: Bu rehberdeki kod örnekleri arayüz (UI) tasarımı odaklıdır. Sepet işlemleri, ödeme sistemleri ve veri güvenliği (XSS, SQL Injection koruması) için profesyonel sunucu taraflı yazılım güvenlik standartlarını uygulamanız zorunludur.

Sepet Sayfasında Performans Optimizasyonu

E-ticaret sitelerinde sepet sayfası, kullanıcının satın alma kararını verdiği en kritik noktadır. Sayfanın yavaş yüklenmesi, doğrudan dönüşüm oranlarını düşürür. Görsel ağırlıklı bir sepet sayfasında performans için şu stratejileri uygulayabilirsiniz:

  • Görsel Optimizasyonu: Ürün görsellerini webp formatında sunun ve loading="lazy" özniteliğini kullanarak ekran dışındaki görsellerin yüklenmesini erteleyin.
  • CSS Küçültme: Kodunuzu canlıya almadan önce gereksiz boşlukları ve yorum satırlarını temizleyen araçlar (minifier) kullanın.
  • Font Yönetimi: Google Fonts gibi dış kaynaklı fontları font-display: swap; özelliği ile kullanarak metinlerin yüklenme süresince görünür kalmasını sağlayın.

Sepet Sayfası İçin Hata Ayıklama ve Test İpuçları

Tasarımınızın farklı ekran çözünürlüklerinde ve tarayıcılarda nasıl göründüğünü doğrulamak için tarayıcı geliştirici araçlarını (DevTools) etkin kullanmalısınız. Özellikle mobil cihaz simülasyonu, sepet butonlarının tıklanabilirliğini test etmek için hayati önem taşır.

Responsive Tasarımda Yaygın Hatalar ve Çözümleri

Sepet sayfasında en sık karşılaşılan sorun, ürün miktarını değiştiren butonların mobil cihazlarda birbirine çok yakın olmasıdır. Bu durum "hatalı tıklamalara" yol açar. Aşağıdaki CSS örneği, butonlar arasında yeterli boşluk bırakarak kullanıcı deneyimini iyileştirir:

.quantity-controls {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 8px;
}

.btn-qty {
    padding: 8px 16px;
    cursor: pointer;
    touch-action: manipulation; /* Mobil cihazlarda gecikmeyi azaltır */
    min-width: 44px; /* Erişilebilirlik için minimum tıklama alanı */
}

Tarayıcılar Arası Uyumluluk (Cross-Browser)

CSS Grid ve Flexbox modern tarayıcılarda sorunsuz çalışsa da, eski tarayıcılar için @supports kuralını kullanarak yedek stiller tanımlayabilirsiniz:

@supports not (display: grid) {
    .cart-container {
        display: block;
    }
    .cart-item {
        float: left;
        width: 100%;
    }
}
Profesyonel İpucu: Sepet sayfanızda "Boş Sepet" durumu için mutlaka ayrı bir görsel ve "Alışverişe Devam Et" butonu içeren bir boş durum (empty state) tasarımı oluşturun. Bu, kullanıcıyı site içinde tutmak için en etkili yöntemlerden biridir.

Sonuç

HTML ve CSS kullanarak özelleştirilebilir bir e-ticaret sepet sayfası oluşturmak, web geliştirme becerilerinizi geliştirmek için harika bir adımdır. Bu rehberde öğrendiğiniz semantik yapı ve modern CSS düzenleme teknikleri, daha karmaşık projelerin temelini oluşturacaktır. Bir sonraki adım olarak, bu statik yapıyı JavaScript (veya React gibi kütüphaneler) ile birleştirerek ürün ekleme/çıkarma ve gerçek zamanlı fiyat güncelleme gibi dinamik özellikleri eklemeyi deneyebilirsiniz.

Bu yazıya tepkinizi paylaşın:
Zeynep Kaya

Ev yönetimi ve kendin yap (DIY) projeleri konusunda uzmanlaşmış bir içerik üreticisiyim. Detaylı rehberler hazırlayarak okuyucuların evdeki küçük sorunları profesyonel yardıma gerek duymadan çözmelerini sağlıyorum.

Yorumlar (0)

Yorum Yaz