Geliştirmek için harika bir yol kullanıcı deneyimi Sitenizde bir kaydırıcı menü eklemek; Kullanıcıların istediklerini bulmaları için göz alıcı bir yol yaratır - sayfada nerede olursa olsun - ve üst NAV'ye geri dönmek zorunda kalmadıkları anlamına gelir.
Biz özellikle sitedeki slayt-out menüsünü seviyorum Dondurma salonu kozmetik , tarafından tasarlandı Hiroka Hasgawa (İstediğiniz siteleri görürseniz, onları kaydettiğinizden emin olun. Bulut depolama Ilham almak için). Bu kaydırma etkisinin kendi web sitenizdeki nasıl çoğaltılacağını öğrenmek için okuyun. İzlenim bırakan bir web sitesi oluşturmak için istekli mi? Doğru ağ sağlayıcısı hizmet veya Web Sitesi Oluşturucu Sadece bunu yapacağım.
İlk adım, sayfa belgesini tanımlamaktır. Bu, baş ve gövde bölümünü içeren web sayfasını temsil eden bir HTML kabından oluşur. Kafa bölümü, harici CSS ve JavaScript kaynaklarını yüklemek için kullanılırken, gövde bölümü # 2 adımında oluşturulan görünür sayfa içeriğini saklamak için kullanılır.
& lt;! DOCTYPE HTML & GT;
& lt; html & gt;
& lt; head & gt;
& lt; unvanı ve gt; menüsünü yukarı kaydırın; / unvan & gt;
& l la link rel = "StyleSheet" Type = "Metin / CSS" Media = "Ekran" href = "styles.css" / & gt;
& lt; script src = "code.js" & gt; & lt; / script;
/ head & gt;
& lt; vücut ve gt;
*** 2. adım burada
& lt; / body & gt;
& lt; / html & gt;
Sayfa içeriği, bir navigasyon kabı ile birlikte bir başlıktan oluşur. Bu navigasyon bir dizi bağlantıyı saklar ve bir 'veri eylemi' niteliği atandı. Konteynere ve elemanlarına stil ve işlevsellik uygulamak için JavaScript ve CSS tarafından kullanılacak olan bu özelliktir.
HTML şimdi tamamlandı, bu yüzden sunum biçimini başlatmak için 'styles.css' adlı yeni bir dosya oluşturun. Bu adım, HTML belgesini ve vücudunu, siyah bir arka plan ile birlikte görünür bir sınır aralığına sahip olmamak için ayarlar. Renk, içerik metninin devralması için varsayılan renk olarak beyaz olarak ayarlanır.
html, vücut {
Ekran bloğu;
Genişlik:% 100;
Yükseklik:% 100;
Arka plan: # 000;
Renk: #FFF; }
Navigasyon, sabit konumlandırma ile ve her şeyin üzerinde bir Z endeksiyle görüntülemektir, böylece kullanıcının nereye kaydırdığı yerden bağımsız olarak tam ekranı kapsayacak şekilde görünebilir. Başlangıçta, ekranın görünür görünüm alanının sol tarafındaki görüş dışında konumlandırılmıştır. Bir saniyenin içindeki değişiklikleri canlandırmak için bir geçiş kuralı uygulanır.
nav {
Ekran bloğu;
Konum: Sabit;
Kutu boyutlandırma: sınır kutusu;
Üst: 0;
Sol: -100vw;
Z-index: 9999;
Dolgu: .5EM 1EM .5EM 1EM;
Genişlik: 100vw;
Yükseklik: 100vh;
Metin Hizası: Merkez;
Arka plan: Kırmızı;
Geçiş: Tüm 1s; }
Navigasyonun sol konumu, bir önceki adımda tanımlanan animasyonlu geçişi tetiklediğinde, 'açık' bir sınıf uygulandığında sıfıra ayarlanır. Navigasyonun ilk çocuğu, ekranın sol tarafının ortasında her zaman görünür kalmak için sabit konumlandırmayı kullanan Genişletme simgesidir.
nav.open {
Sol: 0;
}
NAV *: First-Child {
Konum: Sabit;
Dolgu: 1EM;
İmleç: İşaretçi;
Sol: 0;
Üst: 50vh;
ikisini de temizle; }
Gezinti kabının içindeki her bir bağlantı bağlantısı, varsayılan metnin boyutunun dört katı olarak ayarlanmıştır. Renkleri siyah olarak ayarlanır, dikey aralığın görülebilmesi için üstlerine bir marjla uygulanır. Ekranlarını 'blok' olarak ayarlamak, her bağlantının otomatik olarak dikey olarak istiflendiği görünmesini sağlar.
nav a {
Ekran bloğu;
Yazı tipi boyutu: 4EM;
Renk: # 000;
Yazı Tipi-Ailesi: Arial;
Metin Dekorasyonu: Yok;
Marj-Top: .2EM;
}
'Code.js' adlı yeni bir dosya oluşturun. Bu adım, sayfanın yükleninceye kadar, 'Data-eylemi' niteliği 'Genişlet' olarak ayarlanan 'Veri-Eylem' özniteliğinin ilk çocuğunu aramaya kadar bekler. Bu ilk çocuk, açık simgesi olan, bir 'açık' sınıfın uygulanmasını veya 'açık' bir sınıfa sahip olmasını ya da olmayan bir 'açık' sınıfa sahip olmasını sağlayan bir 'tıklama' olay dinleyicisi var.
window.addeventlistener ("yük", işlev () {
var düğümleri = document.queryselectorall ('nav [veri-eylem = "genişlet"] *: ilk çocuk');
için (var i = 0; i & lt; nodes.length; i ++) {
Düğümler [i].addeventListener ("Tıkla", işlevi () {
if (this.parentnode.classname == "açık") this.parentnode.classname = "";
başka this.parentnode.classname = "açık";
});
}
});
***
Bu makale başlangıçta yaratıcı web tasarım dergisi web tasarımcısının 274 sayısında yayınlandı. Sayı 274 burada satın al veya Burada web tasarımcısına abone olun .
İlgili Makaleler:
(Resim Kredi: Element / Joseph Ford) Görsel inşaatçılar, WordPress için uzun süre varmışlardır, ancak her za..
CSS işlemcilerinin en iyi özelliklerinden biri değişkendir. Bir kez bildirme ve projenizdeki değişkeni yeniden kullanabilme..
CSS Grid, iki eksenli satır ve sütun düzenleri oluşturmak için mükemmeldir. Sözdizimi basittir ve sayfa düzenini bir esin..
Gece yarısı ve bu bir div Sitenizde hala çocuğun oyuncak göğsüne benziyor. Tüm unsurlar, jumbled bir karı..
Bir kayıt akışı mı yoksa çoklu görüşlü bir step, formlar, dijital ürün tasarımının en önemli bileşenlerinden bir..
Web geliştiricileri ve içerik yaratıcıları olarak, genellikle içine sarılmış metin yazma metni harcıyoruz. Html..
Söyleme, 'Bir kitabı kapağına göre yargılama' olabilir, ancak bir kapağın tasarımı, aslında bir kitabın başarısını yapabilir veya kırabilir. Benim gibiyseniz, ön kapağın t..
Sayfa 1/2: Sayfa 1 Sayfa 1 Sayfa 2 ..