Takip et

Tailwind CSS ile Modern ve Erişilebilir Açılır Menü Oluşturma Rehberi

Bir Tailwind CSS projesi başlatmak, açılır menü oluşturma sürecinin ilk ve en önemli adımıdır. Bu bölümde, projenize Tailwind CSS’i nasıl enteg…

Tailwind CSS ile Modern ve Erişilebilir Açılır Menü Oluşturma Rehberi

Açılır menüler (dropdown menüler), web sitelerinde gezinmeyi kolaylaştıran ve kullanıcı arayüzünde düzen sağlayan temel bileşenlerden biridir. Bu makalede, modern ve hızlı bir şekilde arayüz geliştirmeyi sağlayan Tailwind CSS kullanarak, tamamen işlevsel, stil sahibi ve erişilebilir bir açılır menünün nasıl oluşturulacağını adım adım inceleyeceğiz. Tailwind CSS’in sunduğu esneklik ve utility-first yaklaşımı sayesinde, özel CSS yazmaya gerek kalmadan, sadece HTML sınıfları ile güçlü bir menü yapısı kuracağız.

Tailwind CSS Kurulumu ve Proje Yapılandırması

Bir Tailwind CSS projesi başlatmak, açılır menü oluşturma sürecinin ilk ve en önemli adımıdır. Bu bölümde, projenize Tailwind CSS’i nasıl entegre edeceğinizi ve temel yapılandırmaları nasıl yapacağınızı öğreneceksiniz.

NPM ile Tailwind CSS Entegrasyonu

Yeni bir projeye Tailwind CSS eklemek için öncelikle bir Node.js ortamına ihtiyacınız var. Proje klasörünüzde terminali açarak aşağıdaki komutları çalıştırın:


npm init -y
npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init -p

  • npm init -y: Yeni bir package.json dosyası oluşturur.
  • npm install -D tailwindcss postcss autoprefixer: Tailwind CSS, PostCSS ve Autoprefixer bağımlılıklarını geliştirme bağımlılığı olarak yükler.
  • npx tailwindcss init -p: Bir tailwind.config.js dosyası ve bir postcss.config.js dosyası oluşturur. -p bayrağı PostCSS yapılandırmasını da ekler.

tailwind.config.js Dosyası Ayarları

tailwind.config.js dosyası, Tailwind CSS'in projenizde hangi dosyalardaki sınıfları tarayacağını ve CSS çıktısını buna göre oluşturacağını belirler. Bu, gereksiz CSS'in önlenmesi için kritik bir adımdır. content (eski adıyla purge) dizisini projenizin HTML veya JavaScript dosyalarını içerecek şekilde güncelleyin:


// tailwind.config.js
module.exports = {
  content: [
    "./index.html",
    "./src/**/*.{vue,js,ts,jsx,tsx}",
  ],
  theme: {
    extend: {},
  },
  plugins: [],
}

Yukarıdaki örnekte, Tailwind CSS'in index.html ve src klasörü altındaki tüm .vue, .js, .ts, .jsx, .tsx dosyalarını tarayacağı belirtilmiştir. Kendi proje yapınıza göre bu yolu ayarlamanız gerekmektedir.

CSS Dosyanıza Tailwind Direktiflerini Ekleme

Tailwind'in temel stillerini projenize dahil etmek için ana CSS dosyanızı (genellikle src/input.css veya src/style.css gibi) oluşturun ve içine aşağıdaki direktifleri ekleyin:


/* src/input.css */
@tailwind base;
@tailwind components;
@tailwind utilities;

Bu direktifler, Tailwind'in temel stillerini, bileşen stillerini ve yardımcı sınıflarını projenize dahil eder. Son olarak, bu dosyayı derlemek ve kullanılabilir bir CSS çıktısı elde etmek için aşağıdaki komutu çalıştırın:


npx tailwindcss -i ./src/input.css -o ./dist/output.css --watch

Bu komut, src/input.css dosyasını okur, Tailwind sınıflarını işler ve derlenmiş CSS'i dist/output.css dosyasına yazar. --watch bayrağı sayesinde, dosyalardaki değişiklikleri otomatik olarak izler ve yeniden derler.

Temel Dropdown Menü HTML Yapısı

Bir açılır menü, genellikle bir tetikleyici (buton veya bağlantı) ve bu tetikleyiciye tıklandığında görünür hale gelen bir menü içeriğinden oluşur. Doğru HTML yapısı, hem işlevsellik hem de erişilebilirlik açısından hayati öneme sahiptir.

Menü Kapsayıcısını Oluşturma

Açılır menünün tüm bileşenlerini kapsayacak bir ana div etiketi ile başlayacağız. Bu kapsayıcı, menünün konumlandırılması ve görünürlüğünün yönetilmesi için temel bir referans noktası olacaktır.


relative sınıfı, içindeki menü içeriğinin (absolute konumlandırılacak olan) bu kapsayıcıya göre konumlandırılmasını sağlar. inline-block ve text-left ise menünün sayfa düzenindeki davranışını belirler.

Buton ve Menü Öğelerini Tanımlama

Menüyü tetikleyecek bir

Bu yapı, bir buton ve başlangıçta hidden sınıfıyla gizlenmiş bir menü içeriği içerir. Menü içeriği role="menu" ve aria-labelledby gibi erişilebilirlik nitelikleri ile zenginleştirilmiştir.

Örnek HTML Şablonu

Yukarıdaki iki bölümü birleştirerek tam bir HTML şablonu elde edebiliriz. Bu şablon, bir açılır menünün temel iskeletini oluşturur ve Tailwind CSS sınıflarıyla stilize edilmeye hazırdır.





    
    
    Tailwind CSS Dropdown
    


    

Bu şablonu bir .html dosyasına kaydederek ve Tailwind CSS derleyicisini çalıştırarak menünüzün stilize edilmiş halini görebilirsiniz.

Tailwind CSS Sınıfları ile Görsel Tasarım

Tailwind CSS'in gücü, önceden tanımlanmış yardımcı sınıflar aracılığıyla bileşenleri hızlıca stilize etme yeteneğinden gelir. Bu bölümde, açılır menümüzün butonunu, menü kutusunu ve menü öğelerini nasıl görselleştireceğimizi inceleyeceğiz.

Buton Stilini Belirleme

Açılır menüyü tetikleyen butonun stilini belirlemek için çeşitli Tailwind sınıflarını kullanabiliriz. Butonun modern ve kullanıcı dostu görünmesini sağlamak için aşağıdaki sınıfları uygulayabiliriz:



  • inline-flex justify-center: Buton içeriğini yatayda ortalar.
  • w-full: Butonun kapsayıcısının tüm genişliğini kaplamasını sağlar.
  • rounded-md border border-gray-300 shadow-sm: Kenar yuvarlaklığı, kenarlık ve hafif bir gölge ekler.
  • px-4 py-2: Yatay ve dikey dolgu ekler.
  • bg-white text-sm font-medium text-gray-700: Arka plan rengini, metin boyutunu, ağırlığını ve rengini belirler.
  • hover:bg-gray-50: Fare üzerine gelindiğinde arka plan rengini değiştirir.
  • focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500: Odaklandığında ana hat stilini kaldırır ve odak halkası ekler.

Açılır Menü Kutusunun Tasarımı

Menü içeriğini barındıran div etiketi, butonun altında ve genellikle sağa hizalı olarak görünmelidir. Ayrıca bir arka plan rengi, gölge ve kenarlık da içermelidir.



  • origin-top-right: Dönüşümün başlangıç noktasını sağ üst köşe olarak ayarlar, animasyonlar için faydalıdır.
  • absolute right-0 mt-2: Menüyü butona göre konumlandırır (sağda ve 2 birim aşağıda).
  • w-56: Menünün genişliğini ayarlar.
  • rounded-md shadow-lg bg-white: Kenar yuvarlaklığı, büyük bir gölge ve beyaz arka plan rengi ekler.
  • ring-1 ring-black ring-opacity-5: Hafif bir dış kenarlık (halka) ekler.
  • focus:outline-none: Odaklandığında varsayılan ana hat stilini kaldırır.
  • hidden: Başlangıçta menüyü gizler. JavaScript ile bu sınıf kaldırılıp eklenecektir.

Menü Öğelerinin Stilize Edilmesi

Menü içindeki her bir bağlantı ( veya

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

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

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.