ızgara sistemi
On iki sütun sistemi, beş varsayılan duyarlı katman, Sass değişkenleri ve karışımları ve düzinelerce önceden tanımlanmış sınıf sayesinde tüm şekil ve boyutlarda düzenler oluşturmak için mobil öncelikli esnek kutu ızgaramızı kullanın.
Bootstrap'in ızgara sistemi, içeriği düzenlemek ve hizalamak için bir dizi kap, satır ve sütun kullanır. Flexbox ile inşa edilmiştir ve tamamen duyarlıdır. Aşağıda, ızgaranın nasıl bir araya geldiğine bir örnek ve derinlemesine bir bakış verilmiştir.
Flexbox'ta yeni misiniz veya aşina değil misiniz? Arka plan, terminoloji, yönergeler ve kod parçacıkları için bu CSS Püf Noktaları esnek kutu kılavuzunu okuyun .
Yukarıdaki örnek, önceden tanımlanmış ızgara sınıflarımızı kullanarak küçük, orta, büyük ve ekstra büyük cihazlarda üç eşit genişlikte sütun oluşturur. Bu sütunlar, üst öğenin bulunduğu sayfada ortalanır .container
.
Parçalamak, işte nasıl çalıştığı:
- Kapsayıcılar, sitenizin içeriğini ortalamak ve yatay olarak doldurmak için bir araç sağlar.
.container
Duyarlı bir piksel genişliği veya tüm görünüm alanı ve cihaz boyutları.container-fluid
için kullanın .width: 100%
- Satırlar, sütunlar için sarmalayıcılardır. Her sütun,
padding
aralarındaki boşluğu kontrol etmek için yatay (oluk olarak adlandırılır) sahiptir. Bupadding
daha sonra negatif marjlı satırlarda karşılanır. Bu şekilde, sütunlarınızdaki tüm içerik görsel olarak sol tarafa hizalanır. - Bir ızgara düzeninde, içerik sütunlara yerleştirilmelidir ve yalnızca sütunlar, satırların hemen alt öğeleri olabilir.
- Flexbox sayesinde, belirtilmeyen ızgara sütunları
width
otomatik olarak eşit genişlikte sütunlar olarak düzenlenecektir. Örneğin, dört örneğinin.col-sm
her biri otomatik olarak küçük kesme noktasından ve yukarısından %25 genişliğinde olacaktır. Daha fazla örnek için otomatik yerleşim sütunları bölümüne bakın. - Sütun sınıfları, satır başına olası 12'den kullanmak istediğiniz sütun sayısını gösterir. Yani, üç eşit genişlikte sütun istiyorsanız, kullanabilirsiniz
.col-4
. - Sütun
width
s yüzde olarak ayarlanır, bu nedenle her zaman akıcı ve üst öğelerine göre boyutlandırılmıştır. - Sütunlar, tek tek sütunlar arasında oluklar oluşturmak için yataydır , ancak üzerinde bulunan satırlardan ve sütunlardan
padding
kaldırabilirsiniz .margin
padding
.no-gutters
.row
- Izgarayı duyarlı hale getirmek için, her duyarlı kesme noktası için bir tane olmak üzere beş ızgara kesme noktası vardır : tüm kesme noktaları (çok küçük), küçük, orta, büyük ve çok büyük.
- Izgara kesme noktaları, minimum genişlikteki medya sorgularını temel alır, yani bu bir kesme noktasına ve onun üzerindeki tüm kesme noktalarına uygulanır (örneğin,
.col-sm-4
küçük, orta, büyük ve çok büyük cihazlar için geçerlidir, ancak ilkxs
kesme noktası için geçerli değildir). - Daha fazla anlamsal işaretleme için önceden tanımlanmış ızgara sınıflarını (
.col-4
) veya Sass karışımlarını kullanabilirsiniz.
Bazı HTML öğelerini esnek kaplar olarak kullanamama gibi, flexbox'taki sınırlamaların ve hataların farkında olun .
Bootstrap, çoğu boyutu tanımlamak için em
s veya s kullanırken, ızgara kesme noktaları ve kapsayıcı genişlikleri için s kullanılır. Bunun nedeni, görüntü alanı genişliğinin piksel cinsinden olması ve yazı tipi boyutuyla değişmemesidir .rem
px
Kullanışlı bir tabloyla Bootstrap ızgara sisteminin birçok cihazda nasıl çalıştığını görün.
Ekstra küçük <576 piksel |
Küçük ≥576 piksel |
Orta ≥768 piksel |
Büyük ≥992px |
Ekstra büyük ≥1200 piksel |
|
---|---|---|---|---|---|
Maksimum kap genişliği | Yok (otomatik) | 540 piksel | 720 piksel | 960 piksel | 1140 piksel |
sınıf öneki | .col- |
.col-sm- |
.col-md- |
.col-lg- |
.col-xl- |
# sütun | 12 | ||||
oluk genişliği | 30 piksel (bir sütunun her iki tarafında 15 piksel) | ||||
iç içe | Evet | ||||
Sütun sıralaması | Evet |
gibi açık bir numaralı sınıf olmadan kolay sütun boyutlandırma için kesme noktasına özgü sütun sınıflarını kullanın .col-sm-6
.
Örneğin, burada her cihaza ve görünüm alanına uygulanan iki ızgara düzeni xs
vardır xl
. İhtiyacınız olan her kesme noktası için herhangi bir sayıda birimsiz sınıf ekleyin ve her sütun aynı genişlikte olacaktır.
Eşit genişlikte sütunlar birden çok satıra bölünebilir, ancak bunun açık flex-basis
veya border
. Daha eski tarayıcı sürümleri için geçici çözümler vardır, ancak güncelseniz bunlara gerek yoktur.
Flexbox ızgara sütunları için otomatik yerleşim, bir sütunun genişliğini ayarlayabileceğiniz ve kardeş sütunların çevresinde otomatik olarak yeniden boyutlandırılmasını sağlayabileceğiniz anlamına gelir. Önceden tanımlanmış ızgara sınıflarını (aşağıda gösterildiği gibi), ızgara karışımlarını veya satır içi genişlikleri kullanabilirsiniz. Orta sütunun genişliği ne olursa olsun diğer sütunların yeniden boyutlandırılacağını unutmayın.
col-{breakpoint}-auto
Sütunları, içeriklerinin doğal genişliğine göre boyutlandırmak için sınıfları kullanın .
.w-100
Sütunların yeni bir satıra bölünmesini istediğiniz yere bir ekleyerek, birden çok satıra yayılan eşit genişlikte sütunlar oluşturun . .w-100
Bazı duyarlı görüntüleme yardımcı programlarıyla karıştırarak araları duyarlı hale getirin .
Bootstrap'in ızgarası, karmaşık duyarlı düzenler oluşturmak için önceden tanımlanmış beş katman içerir. Sütunlarınızın boyutunu çok küçük, küçük, orta, büyük veya çok büyük cihazlarda uygun gördüğünüz şekilde özelleştirin.
En küçüğünden en büyüğüne kadar aynı olan ızgaralar için .col
ve .col-*
sınıflarını kullanın. Özellikle boyutlandırılmış bir sütuna ihtiyacınız olduğunda numaralı bir sınıf belirtin; aksi takdirde, bağlı kalmaktan çekinmeyin .col
.
Tek bir .col-sm-*
sınıf kümesi kullanarak, yığın halinde başlayan ve küçük kesme noktasında ( ) yatay hale gelen temel bir ızgara sistemi oluşturabilirsiniz sm
.
Sütunlarınızın yalnızca bazı ızgara katmanlarında yığılmasını istemiyor musunuz? Gerektiğinde her katman için farklı sınıfların bir kombinasyonunu kullanın. Her şeyin nasıl çalıştığına dair daha iyi bir fikir için aşağıdaki örneğe bakın.
Sütunları dikey ve yatay olarak hizalamak için esnek kutu hizalama yardımcı programlarını kullanın.
Ön tanımlı grid sınıflarımızda kolonlar arasındaki oluklar ile kaldırılabilir .no-gutters
. margin
Bu , tüm yakın alt sütunlardan negatifleri .row
ve yatay öğeleri kaldırır .padding
İşte bu stilleri oluşturmak için kaynak kodu. Sütun geçersiz kılma işlemlerinin yalnızca ilk alt sütunlara göre belirlendiğini ve öznitelik seçici aracılığıyla hedeflendiğini unutmayın . Bu, daha spesifik bir seçici oluştururken, sütun dolgusu, boşluk yardımcı programları ile daha da özelleştirilebilir .
Uçtan uca bir tasarıma mı ihtiyacınız var? Üst öğeyi .container
veya öğesini bırakın .container-fluid
.
Pratikte, işte böyle görünüyor. Bunu diğer tüm önceden tanımlanmış ızgara sınıflarıyla (sütun genişlikleri, yanıt veren katmanlar, yeniden sıralamalar ve daha fazlası dahil) kullanmaya devam edebileceğinizi unutmayın.
Tek bir satıra 12'den fazla sütun yerleştirilirse, her bir ekstra sütun grubu bir birim olarak yeni bir satıra sarılır.
9 + 4 = 13 > 12 olduğundan, bu 4 sütun genişliğindeki div, tek bir bitişik birim olarak yeni bir satıra sarılır.
Sonraki sütunlar yeni satır boyunca devam eder.
Sütunları flexbox'ta yeni bir satıra bölmek küçük bir kesme gerektirir: width: 100%
sütunlarınızı yeni bir satıra sarmak istediğiniz yere bir öğe ekleyin. Normalde bu, birden çok .row
s ile gerçekleştirilir, ancak her uygulama yöntemi bunu hesaba katamaz.
Bu arayı, duyarlı görüntüleme yardımcı programlarımızla belirli kesme noktalarında da uygulayabilirsiniz .
İçeriğinizin görsel sırasını.order-
kontrol etmek için sınıfları kullanın . Bu sınıflar duyarlıdır, böylece kesme noktasına göre ayarlayabilirsiniz (örneğin, ). Beş ızgara katmanının tamamında geçiş desteği içerir .order
.order-1.order-md-2
1
12
Sırasıyla ve ( ) uygulayarak bir öğenin değerini değiştiren responsive .order-first
ve sınıfları da vardır. Bu sınıflar da gerektiğinde numaralandırılmış sınıflarla karıştırılabilir ..order-last
order
order: -1
order: 13
order: $columns + 1
.order-*
Izgara sütunlarını iki şekilde dengeleyebilirsiniz: duyarlı .offset-
ızgara sınıflarımız ve kenar boşluğu yardımcı programlarımız . Izgara sınıfları, sütunlarla eşleşecek şekilde boyutlandırılırken, kenar boşlukları, ofset genişliğinin değişken olduğu hızlı düzenler için daha kullanışlıdır.
.offset-md-*
Sınıfları kullanarak sütunları sağa taşıyın . Bu sınıflar, bir sütunun sol kenar boşluğunu *
sütunlar kadar artırır. Örneğin, dört sütun üzerinde .offset-md-4
hareket eder ..col-md-4
Duyarlı kesme noktalarında sütun temizlemeye ek olarak, ofsetleri sıfırlamanız gerekebilir. Bunu ızgara örneğinde çalışırken görün .
v4'teki flexbox'a geçişle, .mr-auto
kardeş sütunları birbirinden uzaklaştırmak gibi kenar boşluğu yardımcı programlarını kullanabilirsiniz.
İçeriğinizi varsayılan ızgarayla iç içe yerleştirmek için mevcut bir sütuna yeni .row
ve bir dizi sütun ekleyin . İç içe satırlar, toplam 12 veya daha az sütun içeren bir dizi sütun içermelidir (mevcut 12 sütunun tümünü kullanmanız gerekmez)..col-sm-*
.col-sm-*
Bootstrap'in kaynak Sass dosyalarını kullanırken, özel, anlamsal ve duyarlı sayfa düzenleri oluşturmak için Sass değişkenlerini ve karışımlarını kullanma seçeneğiniz vardır. Önceden tanımlanmış ızgara sınıflarımız, hızlı yanıt veren düzenler için eksiksiz bir kullanıma hazır sınıf paketi sağlamak için bu aynı değişkenleri ve karışımları kullanır.
Değişkenler ve haritalar, sütun sayısını, cilt payı genişliğini ve kayan sütunların başlayacağı ortam sorgu noktasını belirler. Bunları, yukarıda belgelenen önceden tanımlanmış ızgara sınıflarını ve ayrıca aşağıda listelenen özel karışımları oluşturmak için kullanırız.
Karışımlar, bireysel ızgara sütunları için anlamsal CSS oluşturmak için ızgara değişkenleriyle birlikte kullanılır.
Değişkenleri kendi özel değerlerinize göre değiştirebilir veya karışımları varsayılan değerleriyle kullanabilirsiniz. Burada, aralarında boşluk olan iki sütunlu bir düzen oluşturmak için varsayılan ayarların kullanılmasına bir örnek verilmiştir.
Yerleşik ızgara Sass değişkenlerimizi ve haritalarımızı kullanarak, önceden tanımlanmış ızgara sınıflarını tamamen özelleştirmek mümkündür. Katman sayısını, ortam sorgu boyutlarını ve kap genişliklerini değiştirin ve ardından yeniden derleyin.
Izgara sütunlarının sayısı, Sass değişkenleri aracılığıyla değiştirilebilir. sütun olukları için genişliği ayarlarken $grid-columns
her bir sütunun genişliğini (yüzde olarak) oluşturmak için kullanılır .$grid-gutter-width
Sütunların ötesine geçerek ızgara katmanlarının sayısını da özelleştirebilirsiniz. Yalnızca dört ızgara katmanı istiyorsanız, $grid-breakpoints
ve öğesini $container-max-widths
aşağıdaki gibi güncellersiniz:
Sass değişkenlerinde veya haritalarında herhangi bir değişiklik yaparken, değişikliklerinizi kaydetmeniz ve yeniden derlemeniz gerekir. Bunu yapmak, sütun genişlikleri, ofsetler ve sıralama için yepyeni bir dizi önceden tanımlanmış ızgara sınıfının çıktısını verecektir. Duyarlı görünürlük yardımcı programları da özel kesme noktalarını kullanacak şekilde güncellenecektir. px
Izgara değerlerini (değil rem
, em
, veya %
) olarak ayarladığınızdan emin olun .