How to accomplish what the bootstrap grid system does with it .col-xs- or smallgrid with base4?

I am looking to create a website in custom CSS and without frameworks only to increase my CSS team. I want my whole site to keep its layout and look no matter what device. The foundation does this with it "smallgrid" and bootstrap with ".col-xs-". How can I do this without a frame?

+4
source share
2 answers

Foundation and Bootstrap use the same method of providing flexible grids: they fix each column width in percentage and is used media queries to switch between networks for mobile / tablet / desktop computers ( small, mediumand largefor the Foundation, xs, sm, mdand lgfor Bootstrap).

Take a look at these links to learn more about this:

Bootstrap 3:

// Mobile first : Bootstrap display the content with -xs columns
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6,
.col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11 {
    float: left;
}
.col-xs-12 { width: 100%; }
.col-xs-11 { width: 91.66666666666666%; }
.col-xs-10 { width: 83.33333333333334%; }
.col-xs-9  { width: 75%; }
.col-xs-8  { width: 66.66666666666666%; }
.col-xs-7  { width: 58.333333333333336%; }
.col-xs-6  { width: 50%; }
.col-xs-5  { width: 41.66666666666667%; }
.col-xs-4  { width: 33.33333333333333%; }
.col-xs-3  { width: 25%; }
.col-xs-2  { width: 16.666666666666664%; }
.col-xs-1  { width: 8.333333333333332%; }

// if we reach 768px, let use -sm columns
@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6,
  .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11 {
      float: left;
  }
  .col-sm-12 { width: 100%; }
  .col-sm-11 { width: 91.66666666666666%; }
  ...
}
// ... etc with -md and -lg columns

Base 5:

// Mobile first : Foundation display the content with -small columns
@media only screen {
    .column,
    .columns {
      position: relative;
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      float: left; }
    .small-1 { width: 8.33333%; }
    .small-2 {width: 16.66667%; }
    .small-3 { width: 25%; }
    .small-4 { width: 33.33333%; }
    .small-5 { width: 41.66667%; }
    .small-6 { width: 50%; }
    .small-7 { width: 58.33333%; }
    .small-8 { width: 66.66667%; }
    .small-9 { width: 75%; }
    .small-10 { width: 83.33333%; }
    .small-11 { width: 91.66667%; }
    .small-12 { width: 100%; }
}

// If we reach 40.063em, let use -medium columns
@media only screen and (min-width: 40.063em) {
    .column,
    .columns {
      position: relative;
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      float: left; }
    .medium-1 { width: 8.33333%; }
    .medium-2 {width: 16.66667%; }
    ...
}

// ...etc with -large columns
+4
source

You can write your own grid in just a few lines. First, determine how many columns you like, and create something like below, which is a four-column grid:

.col-1, .col-2, col-3, .col-4 {
    float: left;
    /* So that empty columns don't collapse */
    min-height: 1px;
    padding: 0 16px;
    /* Change tje box-model to set columns size in pixels */
    webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.col-1 { width: 25%; }
.col-2 { width: 50%; }
.col-3 { width: 75%; }
.col-4 { width: 100%; }

, . , clearfix. , Fluidable, .

http://www.fluidalbe.com

+2

All Articles