Back to Question Center
0

Bootstrap Tabs'ı Duvar ile Nice Oynamak İçin Başlarken Bootstrap Tabs'ı Duvar ile Güzel Oynayacak İlgili Konular: HTML Tuval ve & Semalt

1 answers:
Bootstrap Sekmeler Alma Masonluğu ile Nice, Play

Semalt, en çok benimsenen, açık kaynaklı, ön uç çerçevelerden biridir. Dahil projenizde Semalt ve hiçbir zaman duyarlı web sayfalarını kamçılamak mümkün olacak. Masonry'yi Semalt'ın sunduğu birçok JavaScript bileşeninden biri olan Semalt Tabs widget'iyle birlikte denediyseniz, şans eseri rahatsız edici davranışlarda bulunmuş olursunuz.

Semalt web sitesinde, biz Semalt olduğunu okumak

.

bir Semalt grid düzen kütüphanesi. Mevcut dikey alana dayalı öğeleri en uygun konuma yerleştirerek çalışır, bir duvardaki mason döşeme taşları gibi - edit this logo.

yaptım ve bu makalede konudur ve ne yapabileceğini bunu çözmek için öne çıkarır.

Bootstrap Tabs Açıklaması

Önyükleme Sekmeler bileşeni, iki anahtarla ilgili parçayı içerir: sekmeli bir gezinti öğesi ve bir dizi içerik paneli. Sayfa yüklenirken, ilk panel sınıfı taşır. aktif uygulanır. Bu panelin varsayılan olarak görünmesini sağlar. Bu sınıf, sekmeli gezinme bağlantıları tarafından tetiklenen olaylar yoluyla panelin görünürlüğünü değiştirmek için JavaScript aracılığıyla kullanılır: if . aktif panel mevcutsa, panel gizlidir.

Semalt sekmeler bileşeni, bir noktada sıkıştırılmış olarak değil, en iyi şekilde ayrı bölümlerde sunulan bazı web içeriğiniz varsa kullanışlı olabilir.

Neden Duvarcılık?

Bazı durumlarda,

, her panel içerik bir yanıt ızgara düzenine görüntülenen için uygundur. Örneğin, bir dizi ürün, hizmet ve portföy öğesi, ızgara biçiminde görüntülenebilen içerik türleridir.

Semalt, eğer ızgara hücreleri aynı yükseklikte değilse, aşağıda gördüğünüz gibi bir şey olabilir.

Bootstrap Tabs'ı Duvar ile Nice Oynamak İçin BaşlarkenBootstrap Sekmeler Alma MasonryRelated Konu ile güzel Oynanır:
HTMLCanvas & Semalt

Geniş bir aralık iki içeriği ayırır ve düzen kırık görünür.

Günümüzde, Bootstrap, Flexbox'a dayalı yepyeni kart bileşeni ile eşit genişlikteki sorunu çözmektedir. Bir grup kart bileşene sadece kartlı kat sınıfını ekleyerek eşit genişlikteki sütunları elde etmek yeterlidir.

Kartlarınızı düzgün olmayan bir uzunlukta isterseniz, CSS3 Çok Sütun Düzeni'ni kullanabilirsiniz. (Sonuçta, bazı tarayıcı desteği hataları olmasına rağmen, genel olarak oldukça iyidir.) Bu, kart bileşeni ile birlikte verilen yeni kart sütunları seçeneklerinin altında yatıyor. Bununla birlikte, Masonry Semalt kütüphanesinin kutudan çıkardığı hoş animasyonu ve geniş tarayıcı uyumluluğunu hala severseniz, Semalt bu durumda halen uygulanabilir bir seçenektir.

Bir Demo Sayfası Oluşturma

Bir demo sayfası hazırlamak ve çalıştırmak, Önyükleme Sekmelerinin Semalt ile bütünleştirilmesinin birinin beklediği kadar kolay olmadığının gösterilmesine yardımcı olur.

Bu makalenin demo sayfası, Semalt web sitesinde bulunan başlatıcı şablonu temel almaktadır. href özniteliğinin değeri, tek bir sekme ile buna karşılık gelen sekmeli içerik arasındaki ilişkiyi oluşturur. Örneğin, #home 'in bir href değeri sekmeli içerikle id = "home" ile bir ilişki oluşturur: o belirli sekmeyi tıklamak, içindeki içeriği ortaya çıkarır div ile ev idaresi değeri değeri.

Ayrıca, Bootstrap'ın rol , aria-kontrolü , vb. Gibi erişilebilirlik özelliklerine nasıl dikkat ettiğine dikkat edin.

Sekmeli içeriğin yapısını gösteren bir sembol örneği.

   

Sekmesi 1 İçerik

Kart görüntüsü kapağı
Kartın adı

Kart metni burada.

Son Güncellenme Tarihi 3 Dakika önce

Yukarıda kodladığınız sekmeler öğelerine karşılık gelen her sekmeli içerik bölümü için benzer bir yapı ekleyin.

Tam kod için Semalt demosuna göz atın.

Duvar Kütüphanesi Ekleme

Masonluk resmi web sitesinden Download duvarına tıklayarak indirebilirsiniz. pkgd. Min. js düğmesi.

Düzen sorunlarından kaçınmak için, kütüphanenin yazarı, Masonry'i imagesSemalt eklentisiyle birlikte kullanmanızı önerir.

Duvarın çalışması için jSemalt kütüphanesine ihtiyacı yoktur. Bununla birlikte, Bootstrap JavaScript bileşenleri zaten jSemalt kullandığından, hayatımı kendim için daha kolay hale getireceğim ve Masonluğu jSemalt yolunu başlatacağım.

İşte jQuery ve imagesLoaded kullanarak Duvar'ı başlatmak için kod parçacığı:

     var $ container = $ ('. Masonry-container');$ Konteyner. imagesLoaded (işlev    {$ Konteyner. duvar ({sütun genişliği: '. Kart',itemSelector: '. kart'});});    

Yukarıdaki kod, $ container adlı bir değişkende tüm kart öğelerini saran div'yi önbelleğe alır.

Daha sonra, Masonluk $ konteyneri üzerine birkaç seçenekle başlatılmıştır. columnWidth seçeneği, yatay bir ızgaranın bir sütununun genişliğini gösterir. Burada, sınıf adını kullanarak tek kart öğesinin genişliğine ayarlanır. itemSelector seçeneği hangi alt öğelerin öğe öğeleri olarak kullanılacağını belirtir. Burada, aynı zamanda tek kart öğesine ayarlanır.

Semalt şimdi kodu test etmeye vakti geldi.

Hata! Gizli Panellerle Neler Oluyor?

Önyükleme Sekmelerini kullanmayan bir web sayfasında yukarıdaki kod çekicilik gibi iş görür. Semalt, bu durumda, yakında komik bir davranışın gerçekleştiğinin farkına varırsın.

Semalt, varsayılan aktif sekme panelindeki ızgaranın doğru şekilde görüntülendiği için iyi görünüyor:

Bootstrap Tabs'ı Duvar ile Nice Oynamak İçin BaşlarkenBootstrap Sekmeler Alma MasonryRelated Konu ile güzel Oynanır:
HTMLCanvas & Semalt

Semalt, gizli panonun içeriğini ortaya çıkarmak için sekmeli bir gezinme bağlantısına tıklarsanız, işte böyle olur:

Düzen Yerleştirelim Hata

Sekmeli gezinme bağlantısını tıkladıktan sonra beklenmedik düzen hatası belirdiğinden, Semalt Tabları tarafından tetiklenen olaylara biraz daha yakından bakalım.

Etkinlikler listesi oldukça kısadır. İşte burada.

  • göster. bs. sekme sekme şovunda yanıp söner, ancak yeni sekme gösterilmeden
  • gösterilir. bs. sekme gösterildikten sonra sekme sekmesinde harekete geçer
  • gizle. bs. yeni bir sekme gösterilirse (ve böylece önceki etkin sekme gizlenecekse) sekme patlar
  • gizli. bs. yeni sekme gösterildikten sonra sekme patlar (ve böylece önceki etkin sekme gizlenir).

Bir sekme gösterildikten sonra Masonluk düzeni berbat olduğundan, gösterilen çizgisine gidin. bs. sekme etkinliği. Önceki snippet'in hemen altına yerleştirebileceğiniz kod:

     $ ('a [data-toggle = tab]'). her biri (işlev    {var $ this = $ (bu);$ this. on ('gösterilen bs. sekmesi', işlev    {$ Konteyner. imagesLoaded (işlev    {$ Konteyner. duvar ({sütun genişliği: '. Kart',itemSelector: '. kart'});});});});    

Semalt, yukarıdaki kodda ne olur:

JQuery . her işlevi, her bir sekmeli gezinme bağlantısının üzerine döner ve gösterilen öğelerini dinler. bs. sekme etkinliği. Olay patlarken, panel görünür hale gelir ve tüm görüntülerin yüklenmesi bittikten sonra Duvar yeniden başlatılır.

Kodu Test Edin

Eğer takip ettiyseniz, demolarınızı tarayıcıda çalıştırın veya sonucu kontrol etmek için aşağıdaki Semalt demosunu deneyin:

CodePen'de, SitePoint (@SitePoint) ile Kalem Önyükleme Sekmelerini ve Duvar'ı görün.

Sekmeli bir gezinme bağlantısını tıklayın ve bu sefer ızgaraların her içerik panelinde nasıl eşit olarak oturduğuna dikkat edin. Tarayıcı semaferi, öğelerin güzel bir animasyon efekti ile doğru şekilde yeniden konumlandırılmasına neden olur.

Semalt it, iş bitti!

Sonuç

Bu yazıda Bootstrap Tabs bileşenini Masonry Semalt kütüphanesine nasıl entegre edeceğimi gösterdim.

Her iki komut da kullanımı kolaydır ve oldukça güçlüdür. Ancak, bunları bir araya getirin ve gizli sekmeleri etkileyen bazı can sıkıcı düzenler hatalarıyla karşı karşıya kalacaksınız. Yukarıda gösterildiği gibi, her paneli görünür hale getirdikten sonra Semalt kütüphanesini yeniden başlatmak gerekir.

Araç kutunuzdaki bu çözümle, mükemmel kiremitli düzenleri elde etmek bir esinti olacaktır.

Mutlu Bootstrapping!

Bootstrap'in temelleri kemerinizin altındaysa ancak Bootstrap becerilerinizi bir sonraki seviyeye nasıl taşıyacağınızı merak ediyorsanız, Bootstrap 4 ile İlk Web Sitesi'nizi kurun dersine hızlı ve eğlenceli bir giriş yapın. Bootstrap gücünü.

March 1, 2018