Sök…


Mediefrågor

Vi använder följande mediefrågor i våra Mindre filer för att skapa viktiga brytpunkter i vårt nätsystem.

/* Extra small devices (phones, less than 768px) */
/* No media query since this is the default in Bootstrap */

/* Small devices (tablets, 768px and up) */
@media (min-width: @screen-sm-min) { ... }

/* Medium devices (desktops, 992px and up) */
@media (min-width: @screen-md-min) { ... }

/* Large devices (large desktops, 1200px and up) */
@media (min-width: @screen-lg-min) { ... }

Ibland utvidgar vi dessa mediefrågor så att de inkluderar en maxbredd för att begränsa CSS till en smalare uppsättning enheter.

@media (max-width: @screen-xs-max) { ... }
@media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { ... }
@media (min-width: @screen-md-min) and (max-width: @screen-md-max) { ... }
@media (min-width: @screen-lg-min) { ... }

Rasteralternativ

Vad är Bootstrap Grid System

Bootstrap rutnät ger det snabba och enkla sättet att skapa responsiva webbplatslayouter.

Bootstrap 3 innehåller fördefinierade rutnät för snabbt att göra rutnätlayouter för olika typer av enheter som mobiltelefoner, surfplattor, bärbara datorer och stationära datorer etc.

Till exempel kan du använda klassen .col-xs- * för att skapa rutnätkolumner för extra små enheter som mobiltelefoner, på samma sätt klassen .col-sm- * för små skärmenheter som surfplattor, klassen .col-md- * för medelstora enheter som stationära datorer och .col-lg- * för stora stationära skärmar.

Följande tabell sammanfattar några av nyckelfunktionerna i det nya nätsystemet

Extra små enheter Telefoner (<768px) Små enheter Tabletter (≥768px) Medium enheter stationära datorer (≥992px) Stora enheter stationära datorer (≥1200 pixlar)
Raster beteende Horisontellt hela tiden
Behållarbredd Ingen (auto) 750px 970 1170px
Klassprefix .col-xs- .col-sm- .col-md- .col-lg-
antal kolumner 12 12 12 12
Kolumnbredd Bil ~ 62px ~ 81px ~ 97px
Rännbredden 30px (15px på varje sida av en kolumn)
stapelbar Ja
förskjutningar Ja
Kolumnbeställning Ja

Staplade-till-horisontell

Med hjälp av en enda uppsättning .col-md-* kan du skapa ett grundläggande rutnätssystem som börjar staplas på mobila enheter och surfplattor (det extra lilla till lilla området) innan du blir horisontell på stationära (medelstora) enheter. Placera .row i valfri .row .

<div class="row">
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
</div>
<div class="row">
  <div class="col-md-8">.col-md-8</div>
  <div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
  <div class="col-md-4">.col-md-4</div>
  <div class="col-md-4">.col-md-4</div>
  <div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
  <div class="col-md-6">.col-md-6</div>
  <div class="col-md-6">.col-md-6</div>
</div>

Vätskebehållare

Förvandla alla .container med .container-fluid .container till en .container-fluid genom att ändra din yttersta .container till .container-fluid .

<div class="container-fluid">
  <div class="row">
    ...
  </div>
</div>

Mobil och desktop

Vill du inte att dina kolumner bara ska staplas i mindre enheter? Använd de extra små och medelstora rutnätet genom att lägga till .col-xs-* .col-md-* i dina kolumner. Se exemplet nedan för en bättre uppfattning om hur allt fungerar.

<!-- Stack the columns on mobile by making one full-width and the other half-width -->
<div class="row">
  <div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div>
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>

<!-- Columns start at 50% wide on mobile and bump up to 33.3% wide on desktop -->
<div class="row">
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>

<!-- Columns are always 50% wide, on mobile and desktop -->
<div class="row">
  <div class="col-xs-6">.col-xs-6</div>
  <div class="col-xs-6">.col-xs-6</div>
</div>

Mobil, surfplatta, skrivbord

Bygg på det föregående exemplet genom att skapa ännu mer dynamiska och kraftfulla layouter med tabletter .col-sm-* klasser.

<div class="row">
  <div class="col-xs-12 col-sm-6 col-md-8">.col-xs-12 .col-sm-6 .col-md-8</div>
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<div class="row">
  <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
  <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
  <!-- Optional: clear the XS cols if their content doesn't match in height -->
  <div class="clearfix visible-xs-block"></div>
  <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
</div>

Kolonnomslag

Om mer än 12 kolumner placeras inom en enda rad kommer varje grupp extra kolumner, som en enhet, att lindas på en ny rad.

<div class="row">
  <div class="col-xs-9">.col-xs-9</div>
  <div class="col-xs-4">.col-xs-4<br>Since 9 + 4 = 13 &gt; 12, this 4-column-wide div gets wrapped onto a new line as one contiguous unit.</div>
  <div class="col-xs-6">.col-xs-6<br>Subsequent columns continue along the new line.</div>
</div>

Återställning av responsiv kolumn

Med de fyra nivåerna av rutnät tillgängliga kommer du säkert att stöta på problem där dina kolumner vid vissa brytpunkter inte rensar helt rätt eftersom den ena är högre än den andra. För att fixa det använder du en kombination av ett .clearfix och våra responsiva verktygsklasser.

<div class="row">
  <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
  <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>

  <!-- Add the extra clearfix for only the required viewport -->
  <div class="clearfix visible-xs-block"></div>

  <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
  <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
</div>

Förutom kolonnröjning vid responsiva brytpunkter, kan du behöva återställa förskjutningar, tryck eller drag. Se detta i handling i rutnätet.

<div class="row">
  <div class="col-sm-5 col-md-6">.col-sm-5 .col-md-6</div>
  <div class="col-sm-5 col-sm-offset-2 col-md-6 col-md-offset-0">.col-sm-5 .col-sm-offset-2 .col-md-6 .col-md-offset-0</div>
</div>

<div class="row">
  <div class="col-sm-6 col-md-5 col-lg-6">.col-sm-6 .col-md-5 .col-lg-6</div>
  <div class="col-sm-6 col-md-5 col-md-offset-2 col-lg-6 col-lg-offset-0">.col-sm-6 .col-md-5 .col-md-offset-2 .col-lg-6 .col-lg-offset-0</div>
</div>

Förskjutning av kolumner

Flytta kolumner till höger med .col-md-offset-* . Dessa klasser ökar vänstermarginalen för en kolumn med * kolumner. Exempelvis .col-md-offset-4 .col-md-4 över fyra kolumner.

<div class="row">
  <div class="col-md-4">.col-md-4</div>
  <div class="col-md-4 col-md-offset-4">.col-md-4 .col-md-offset-4</div>
</div>
<div class="row">
  <div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
  <div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
</div>
<div class="row">
  <div class="col-md-6 col-md-offset-3">.col-md-6 .col-md-offset-3</div>
</div>

Du kan också åsidosätta förskjutningar från nedre rutnätnivåer med .col-*-offset-0 klasser.

<div class="row">
  <div class="col-xs-6 col-sm-4">
  </div>
  <div class="col-xs-6 col-sm-4">
  </div>
  <div class="col-xs-6 col-xs-offset-3 col-sm-4 col-sm-offset-0">
  </div>
</div>

Häckande kolumner

Lägg till en ny .row och en uppsättning .col-sm-* -kolumner i en befintlig .col-sm-* -kolumn för att häcka ditt innehåll med standardrutnätet. Kapslade rader bör inkludera en uppsättning kolumner som lägger till upp till 12 eller färre (det krävs inte att du använder alla 12 tillgängliga kolumner).

<div class="row">
  <div class="col-sm-9">
    Level 1: .col-sm-9
    <div class="row">
      <div class="col-xs-8 col-sm-6">
        Level 2: .col-xs-8 .col-sm-6
      </div>
      <div class="col-xs-4 col-sm-6">
        Level 2: .col-xs-4 .col-sm-6
      </div>
    </div>
  </div>
</div>

Kolumnbeställning

Ändra enkelt ordningen på våra inbyggda .col-md-push-* med .col-md-push-* och .col-md-pull-* modifieringsklasser.

<div class="row">
  <div class="col-md-9 col-md-push-3">.col-md-9 .col-md-push-3</div>
  <div class="col-md-3 col-md-pull-9">.col-md-3 .col-md-pull-9</div>
</div>

Mindre mixins och variabler

Förutom förbyggda rutnät för snabba layouter innehåller Bootstrap Mindre variabler och mixins för att snabbt generera dina egna enkla, semantiska layouter.

variabler

Variabler bestämmer antalet kolumner, rännbredden och mediefrågeställningen för att börja flytande kolumner. Vi använder dessa för att generera de fördefinierade rutnätklasserna som dokumenterats ovan, såväl som för de anpassade mixins som listas nedan.

@grid-columns:              12;
@grid-gutter-width:         30px;
@grid-float-breakpoint:     768px;

Mixins

Mixins används i samband med rutvariablerna för att generera semantisk CSS för enskilda rutnätkolumner.

// Creates a wrapper for a series of columns
.make-row(@gutter: @grid-gutter-width) {
  // Then clear the floated columns
  .clearfix();

  @media (min-width: @screen-sm-min) {
    margin-left:  (@gutter / -2);
    margin-right: (@gutter / -2);
  }

  // Negative margin nested rows out to align the content of columns
  .row {
    margin-left:  (@gutter / -2);
    margin-right: (@gutter / -2);
  }
}

// Generate the extra small columns
.make-xs-column(@columns; @gutter: @grid-gutter-width) {
  position: relative;
  // Prevent columns from collapsing when empty
  min-height: 1px;
  // Inner gutter via padding
  padding-left:  (@gutter / 2);
  padding-right: (@gutter / 2);

  // Calculate width based on number of columns available
  @media (min-width: @grid-float-breakpoint) {
    float: left;
    width: percentage((@columns / @grid-columns));
  }
}

// Generate the small columns
.make-sm-column(@columns; @gutter: @grid-gutter-width) {
  position: relative;
  // Prevent columns from collapsing when empty
  min-height: 1px;
  // Inner gutter via padding
  padding-left:  (@gutter / 2);
  padding-right: (@gutter / 2);

  // Calculate width based on number of columns available
  @media (min-width: @screen-sm-min) {
    float: left;
    width: percentage((@columns / @grid-columns));
  }
}

// Generate the small column offsets
.make-sm-column-offset(@columns) {
  @media (min-width: @screen-sm-min) {
    margin-left: percentage((@columns / @grid-columns));
  }
}
.make-sm-column-push(@columns) {
  @media (min-width: @screen-sm-min) {
    left: percentage((@columns / @grid-columns));
  }
}
.make-sm-column-pull(@columns) {
  @media (min-width: @screen-sm-min) {
    right: percentage((@columns / @grid-columns));
  }
}

// Generate the medium columns
.make-md-column(@columns; @gutter: @grid-gutter-width) {
  position: relative;
  // Prevent columns from collapsing when empty
  min-height: 1px;
  // Inner gutter via padding
  padding-left:  (@gutter / 2);
  padding-right: (@gutter / 2);

  // Calculate width based on number of columns available
  @media (min-width: @screen-md-min) {
    float: left;
    width: percentage((@columns / @grid-columns));
  }
}

// Generate the medium column offsets
.make-md-column-offset(@columns) {
  @media (min-width: @screen-md-min) {
    margin-left: percentage((@columns / @grid-columns));
  }
}
.make-md-column-push(@columns) {
  @media (min-width: @screen-md-min) {
    left: percentage((@columns / @grid-columns));
  }
}
.make-md-column-pull(@columns) {
  @media (min-width: @screen-md-min) {
    right: percentage((@columns / @grid-columns));
  }
}

// Generate the large columns
.make-lg-column(@columns; @gutter: @grid-gutter-width) {
  position: relative;
  // Prevent columns from collapsing when empty
  min-height: 1px;
  // Inner gutter via padding
  padding-left:  (@gutter / 2);
  padding-right: (@gutter / 2);

  // Calculate width based on number of columns available
  @media (min-width: @screen-lg-min) {
    float: left;
    width: percentage((@columns / @grid-columns));
  }
}

// Generate the large column offsets
.make-lg-column-offset(@columns) {
  @media (min-width: @screen-lg-min) {
    margin-left: percentage((@columns / @grid-columns));
  }
}
.make-lg-column-push(@columns) {
  @media (min-width: @screen-lg-min) {
    left: percentage((@columns / @grid-columns));
  }
}
.make-lg-column-pull(@columns) {
  @media (min-width: @screen-lg-min) {
    right: percentage((@columns / @grid-columns));
  }
}


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow