Sistim grid
Anggo grid flexbox munggaran mobile anu kuat pikeun ngawangun perenah tina sagala bentuk sareng ukuran berkat sistem dua belas kolom, lima tingkatan responsif standar, variabel Sass sareng campuran, sareng puluhan kelas anu tos siap.
Sistem grid Bootstrap ngagunakeun runtuyan wadah, baris, jeung kolom pikeun perenah jeung align eusi. Éta diwangun ku flexbox sareng pinuh responsif. Di handap ieu conto na katingal di-jero kumaha grid datangna babarengan.
Anyar atawa teu wawuh jeung flexbox? Baca ieu CSS Trik flexbox pituduh pikeun latar tukang, terminologi, tungtunan, sarta snippét kode.
Conto di luhur nyiptakeun tilu kolom lebar anu sami dina alat anu alit, sedeng, ageung, sareng langkung ageung ngagunakeun kelas grid anu tos disetel. Kolom-kolom éta dipuseurkeun dina halaman sareng indungna .container
.
Ngarecahna, ieu cara gawéna:
- Wadah nyadiakeun sarana pikeun puseur jeung horisontal Pad eusi situs anjeun. Anggo
.container
pikeun lebar piksel responsif atanapi.container-fluid
kanggowidth: 100%
sadaya ukuran viewport sareng alat. - Baris mangrupakeun wrappers pikeun kolom. Unggal kolom boga horizontal
padding
(disebut talang a) pikeun ngadalikeun spasi antara aranjeunna. Ieupadding
lajeng counteracted dina barisan kalawan margins négatip. Ku cara ieu, sadaya eusi dina kolom anjeun sacara visual dijajarkeun di sisi kénca. - Dina perenah grid, eusi kudu disimpen dina kolom sarta ngan kolom bisa jadi barudak langsung tina barisan.
- Hatur nuhun kana flexbox, kolom grid tanpa dieusian
width
bakal otomatis perenah salaku kolom lebar sarua. Contona, opat instansi.col-sm
unggal bakal otomatis jadi 25% lega ti breakpoint leutik jeung up. Tingali bagian kolom perenah otomatis pikeun conto langkung seueur. - Kelas kolom nunjukkeun jumlah kolom anu anjeun hoyong dianggo tina kamungkinan 12 per baris. Janten, upami anjeun hoyong tilu kolom lebar anu sami, anjeun tiasa nganggo
.col-4
. - Kolom
width
s diatur dina persentase, ku kituna aranjeunna salawasna cair sareng ukuranana relatif ka unsur indungna. - Kolom gaduh horisontal
padding
pikeun nyiptakeun talang antara kolom individu, kumaha ogé, anjeun tiasa ngahapusmargin
tina barisan sarengpadding
tina kolom kalayan.no-gutters
dina.row
. - Pikeun nyieun grid responsif, aya lima breakpoints grid, hiji pikeun tiap breakpoint responsif : sakabeh breakpoints (ekstra leutik), leutik, sedeng, badag, jeung tambahan badag.
- Breakpoints grid dumasar kana pamundut média rubak minimum, hartina aranjeunna dilarapkeun ka hiji breakpoint jeung sakabeh nu di luhur eta (misalna
.col-sm-4
lumaku pikeun leutik, sedeng, badag, jeung alat tambahan badag, tapi lainxs
breakpoint munggaran). - Anjeun tiasa nganggo kelas grid anu tos siapkeun (sapertos
.col-4
) atanapi campuran Sass pikeun markup semantik langkung.
Waspada kana watesan sareng bug di sabudeureun flexbox , sapertos henteu mampuh ngagunakeun sababaraha elemen HTML salaku wadah fleksibel .
Sedengkeun Bootstrap ngagunakeun em
s atawa rem
s pikeun nangtukeun paling ukuran, px
s dipaké pikeun breakpoints grid jeung lebar wadahna. Ieu kusabab lebar viewport aya dina piksel sareng henteu robih sareng ukuran font .
Tingali kumaha aspék sistem grid Bootstrap tiasa dianggo dina sababaraha alat anu nganggo méja anu praktis.
Ekstra leutik <576px |
Leutik ≥576px |
Sedeng ≥768px |
Badag ≥992px |
Ekstra badag ≥1200px |
|
---|---|---|---|---|---|
lebar wadahna Max | Euweuh (otomatis) | 540px | 720px | 960px | 1140px |
Awalan kelas | .col- |
.col-sm- |
.col-md- |
.col-lg- |
.col-xl- |
# kolom | 12 | ||||
Lebar talang | 30px (15px dina unggal sisi kolom) | ||||
Nestable | Sumuhun | ||||
Susunan kolom | Sumuhun |
Anggo kelas kolom khusus breakpoint pikeun ukuran kolom anu gampang tanpa kelas wilangan anu eksplisit sapertos .col-sm-6
.
Contona, di dieu aya dua layouts grid nu dilarapkeun ka unggal alat jeung viewport, ti xs
ka xl
. Tambahkeun sajumlah kelas unit-kurang pikeun tiap breakpoint nu peryogi tur unggal kolom bakal lebar sarua.
Kolom sarua-lebar bisa pegat kana sababaraha garis, tapi aya hiji Safari flexbox bug nu nyegah ieu bisa dipake tanpa eksplisit flex-basis
atawa border
. Aya workarounds pikeun versi browser heubeul, tapi maranéhna teu kudu diperlukeun lamun anjeun up-to-date.
Layout otomatis pikeun kolom grid flexbox ogé hartosna anjeun tiasa nyetél lebar hiji kolom sareng gaduh kolom duduluran sacara otomatis ngatur ukuran di sakurilingna. Anjeun tiasa nganggo kelas grid anu tos disetel (sapertos anu dipidangkeun di handap), campuran grid, atanapi lebar inline. Catet yén kolom anu sanés bakal ngarobih ukuran henteu paduli lebar kolom tengah.
Anggo col-{breakpoint}-auto
kelas pikeun ukuran kolom dumasar kana lebar alami eusina.
Jieun kolom sarua-lebar nu bentang sababaraha baris ku inserting a .w-100
dimana rék kolom megatkeun kana garis anyar. Jieun istirahat responsif ku nyampur .w-100
jeung sababaraha utilitas tampilan responsif .
Grid Bootstrap kalebet lima tingkatan kelas anu tos siap pikeun ngawangun perenah responsif anu kompleks. Sesuaikeun ukuran kolom anjeun dina alat anu langkung alit, alit, sedeng, ageung, atanapi langkung ageung kumaha waé anu anjeun pikahoyong.
Pikeun grids anu sarua ti pangleutikna alat ka nu panggedéna, make .col
jeung .col-*
kelas. Sebutkeun kelas wilanganana nalika anjeun peryogi kolom ukuran khusus; disebutkeun, ngarasa Luncat ka lengket .col
.
Ngagunakeun set tunggal .col-sm-*
kelas, Anjeun bisa nyieun sistem grid dasar nu dimimitian kaluar tumpuk tur jadi horizontal di breakpoint leutik ( sm
).
Naha anjeun henteu hoyong kolom anjeun ngan saukur tumpukan dina sababaraha tingkatan grid? Anggo kombinasi kelas anu béda pikeun tiap tingkatan upami diperyogikeun. Tingali conto di handap pikeun ide anu langkung saé kumaha éta sadayana jalan.
Paké flexbox alignment utiliti pikeun vertikal sarta horizontal align kolom.
The talang antara kolom dina kelas grid tos siap kami bisa dihapus kalawan .no-gutters
. Ieu ngaluarkeun margin
s négatip tina .row
jeung horizontal padding
ti sakabeh kolom barudak saharita.
Ieu kodeu sumber pikeun nyiptakeun gaya ieu. Catet yén overrides kolom diwengku ukur ka kolom barudak munggaran sareng ditargetkeun ku pamilih atribut . Sanaos ieu ngahasilkeun pamilih anu langkung spésifik, padding kolom masih tiasa disaluyukeun deui sareng utilitas jarak .
Peryogi desain ujung-ka-ujung? Leupaskeun kolot .container
atawa .container-fluid
.
Dina prakna, ieu kumaha rupana. Catet yén anjeun tiasa teras-terasan ngagunakeun ieu sareng sadaya kelas grid anu tos siapkeun (kalebet lebar kolom, tingkatan responsif, susunan ulang, sareng seueur deui).
Lamun leuwih ti 12 kolom disimpen dina hiji baris, unggal grup kolom tambahan bakal, salaku hiji unit, mungkus kana garis anyar.
Kusabab 9 + 4 = 13 > 12, div 4-kolom-lega ieu bakal dibungkus kana garis anyar salaku hiji Unit contiguous.
kolom saterusna nuluykeun sapanjang garis anyar.
Megatkeun kolom ka garis anyar dina flexbox merlukeun hack leutik: tambahkeun hiji unsur jeung width: 100%
dimana wae Anjeun hoyong mungkus kolom anjeun ka garis anyar. Biasana ieu dilakonan ku sababaraha .row
s, tapi teu unggal palaksanaan métode bisa akun pikeun ieu.
Anjeun ogé tiasa nerapkeun istirahat ieu dina titik putus khusus sareng utilitas tampilan responsif kami .
Paké .order-
kelas pikeun ngadalikeun urutan visual eusi Anjeun. Kelas ieu responsif, ku kituna anjeun tiasa nyetél order
ku breakpoint (contona, .order-1.order-md-2
). Ngawengku pangrojong pikeun 1
ngalangkungan 12
sadaya lima tingkatan grid.
Aya ogé kelas responsif .order-first
sareng .order-last
anu ngarobih order
unsur ku cara nerapkeun order: -1
sareng order: 13
( order: $columns + 1
), masing-masing. Kelas-kelas ieu ogé tiasa dicampurkeun sareng .order-*
kelas anu wilanganana upami diperyogikeun.
Anjeun tiasa ngimbangan kolom grid ku dua cara: .offset-
kelas grid responsif kami sareng utilitas margin kami . Kelas grid ukuranana cocog kolom bari margins leuwih mangpaat pikeun layouts gancang dimana lebar offset nyaeta variabel.
Pindahkeun kolom ka katuhu nganggo .offset-md-*
kelas. Kelas ieu ningkatkeun margin kénca kolom ku *
kolom. Contona, .offset-md-4
ngalir .col-md-4
ngaliwatan opat kolom.
Salian ngabersihan kolom dina titik putus responsif, anjeun panginten kedah ngareset offset. Tempo ieu aksi dina conto grid .
Kalayan pindah ka flexbox di v4, anjeun tiasa nganggo utilitas margin sapertos .mr-auto
maksakeun kolom duduluran ti hiji anu sanés.
Pikeun nyarang eusi anjeun sareng grid standar, tambahkeun kolom anyar .row
sareng set dina .col-sm-*
kolom anu tos aya .col-sm-*
. Baris Nested kedah ngawengku sakumpulan kolom nu nambahan nepi ka 12 atawa kurang (teu diperlukeun nu make sakabeh 12 kolom sadia).
Nalika nganggo file Sass sumber Bootstrap, anjeun gaduh pilihan ngagunakeun variabel Sass sareng mixin pikeun nyiptakeun perenah halaman khusus, semantik, sareng responsif. Kelas grid tos siap kami nganggo ieu variabel sarua jeung mixins nyadiakeun sakabeh suite kelas siap pake pikeun layouts responsif gancang.
Variabel sareng peta nangtukeun jumlah kolom, lebar talang, sareng titik query media dimana ngawitan kolom ngambang. Kami nganggo ieu pikeun ngahasilkeun kelas grid anu tos siap didokumentasikeun di luhur, ogé pikeun campuran khusus anu didaptarkeun di handap.
Mixins dipaké ditéang jeung variabel grid keur ngahasilkeun CSS semantis pikeun kolom grid individu.
You can modify the variables to your own custom values, or just use the mixins with their default values. Here’s an example of using the default settings to create a two-column layout with a gap between.
Using our built-in grid Sass variables and maps, it’s possible to completely customize the predefined grid classes. Change the number of tiers, the media query dimensions, and the container widths—then recompile.
The number of grid columns can be modified via Sass variables. $grid-columns
is used to generate the widths (in percent) of each individual column while $grid-gutter-width
sets the width for the column gutters.
Pindah saluareun kolom sorangan, anjeun ogé tiasa ngaropea jumlah tiers grid. Upami anjeun ngan ukur hoyong opat undakan grid, anjeun badé ngapdet $grid-breakpoints
sareng $container-max-widths
ka anu sapertos kieu:
Nalika ngalakukeun parobahan naon waé kana variabel atanapi peta Sass, anjeun kedah nyimpen parobihan anjeun sareng nyusun ulang. Lakukeun kitu bakal ngahasilkeun set anyar kelas grid tos siap pikeun lebar kolom, offsets, sarta susunan. Utiliti pisibilitas responsif ogé bakal diénggalan pikeun nganggo titik putus khusus. Pastikeun pikeun ngeset nilai grid dina px
(sanes rem
, em
, atawa %
).