Search code examples
htmlcsscenter

How to center align inside container and get uniform width


I need to horizontally center align all the content shown in the image below.

I need also to make all the table cells at the same width, since it seems that they are auto adjusting according to the font awesome icon size.

How can I make this?

My CSS here

enter image description here

My HTML

<section id="Four" class="wrapper style3">
                    <div class="inner">
                        <div class="container">
                            <div class="row">
                                    <div class="two columns">
                                    <i class="fa fa-truck fa-5x"></i>
                                    <h3>A Fleet of</h3>
                                    <div class="counter col_fourth">
                                    <h2 class="timer count-title count-number" data-to="120" data-speed="2000"></h2>
                                    </div>
                                    <p class="text-box">TRUCKS</p>
                                </div>
                                    <div class="two columns">
                                    <i class="fa fa-users fa-5x"></i>
                                    <h3>Involving</h3>
                                    <div class="counter col_fourth">
                                    <h2 class="timer count-title count-number" data-to="160" data-speed="2000"></h2>
                                    </div>
                                    <p class="text-box">EMPLOYEES</p>
                                </div>
                                    <div class="two columns">
                                    <i class="fa fa-cubes fa-5x"></i>
                                    <h3>Loading</h3>
                                    <div class="counter col_fourth">
                                    <h2 class="timer count-title count-number" data-to="6686" data-speed="2000"></h2>
                                    </div>
                                    <p class="text-box">FTL LOADS IN 2016</p>
                                </div>
                                    <div class="two columns">
                                    <i class="fa fa-leaf fa-5x"></i>
                                    <h3>Emissions</h3>
                                    <div class="counter col_fourth">
                                    <h2 class="timer count-title count-number" data-to="100" data-speed="2000"></h2>
                                    </div>
                                    <p class="text-box">100% EURO 6</p>
                                </div>
                                    <div class="two columns">
                                    <i class="fa fa-compress fa-5x"></i>
                                    <h3>Trailers</h3>
                                    <div class="counter col_fourth">
                                    <h2 class="timer count-title count-number" data-to="160" data-speed="2000"></h2>
                                    </div>
                                    <p class="text-box">TRAILERS</p>
                                </div>
                                    <div class="two columns">
                                    <i class="fa fa-calendar fa-5x"></i>
                                    <h3>Since</h3>
                                    <div class="counter col_fourth">
                                    <h2 class="timer count-title count-number" data-to="1991" data-speed="2000"></h2>
                                    </div>
                                    <p class="text-box">25 YEARS OF SERVICE</p>
                                </div>
                        </section>
                    </div>
                </div>
            </section>

Solution

  • You can use flexbox with flex-grow and flex-basis to make the columns equal width and fill the row.

    .row {
      display: flex;
    }
    .row .columns {
      flex-grow: 1;
      flex-basis: 0;
      margin: 0 1em;
      background: #eee;
    }
    <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"/>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" rel="stylesheet"/>
    <section id="Four" class="wrapper style3">
      <div class="inner">
        <div class="container">
          <div class="row">
            <div class="two columns">
              <i class="fa fa-truck fa-5x"></i>
              <h3>A Fleet of</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="120" data-speed="2000"></h2>
              </div>
              <p class="text-box">TRUCKS</p>
            </div>
            <div class="two columns">
              <i class="fa fa-users fa-5x"></i>
              <h3>Involving</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="160" data-speed="2000"></h2>
              </div>
              <p class="text-box">EMPLOYEES</p>
            </div>
            <div class="two columns">
              <i class="fa fa-cubes fa-5x"></i>
              <h3>Loading</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="6686" data-speed="2000"></h2>
              </div>
              <p class="text-box">FTL LOADS IN 2016</p>
            </div>
            <div class="two columns">
              <i class="fa fa-leaf fa-5x"></i>
              <h3>Emissions</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="100" data-speed="2000"></h2>
              </div>
              <p class="text-box">100% EURO 6</p>
            </div>
            <div class="two columns">
              <i class="fa fa-compress fa-5x"></i>
              <h3>Trailers</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="160" data-speed="2000"></h2>
              </div>
              <p class="text-box">TRAILERS</p>
            </div>
            <div class="two columns">
              <i class="fa fa-calendar fa-5x"></i>
              <h3>Since</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="1991" data-speed="2000"></h2>
              </div>
              <p class="text-box">25 YEARS OF SERVICE</p>
            </div>
    </section>
    </div>
    </div>
    </section>

    Or you can give the columns a specific width, and use justify-content to center them

    .row {
      display: flex;
      justify-content: center;
    }
    .row .columns {
      width: 150px;
      margin: 0 1em;
      background: #eee;
    }
    <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"/>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" rel="stylesheet"/>
    <section id="Four" class="wrapper style3">
      <div class="inner">
        <div class="container">
          <div class="row">
            <div class="two columns">
              <i class="fa fa-truck fa-5x"></i>
              <h3>A Fleet of</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="120" data-speed="2000"></h2>
              </div>
              <p class="text-box">TRUCKS</p>
            </div>
            <div class="two columns">
              <i class="fa fa-users fa-5x"></i>
              <h3>Involving</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="160" data-speed="2000"></h2>
              </div>
              <p class="text-box">EMPLOYEES</p>
            </div>
            <div class="two columns">
              <i class="fa fa-cubes fa-5x"></i>
              <h3>Loading</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="6686" data-speed="2000"></h2>
              </div>
              <p class="text-box">FTL LOADS IN 2016</p>
            </div>
            <div class="two columns">
              <i class="fa fa-leaf fa-5x"></i>
              <h3>Emissions</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="100" data-speed="2000"></h2>
              </div>
              <p class="text-box">100% EURO 6</p>
            </div>
            <div class="two columns">
              <i class="fa fa-compress fa-5x"></i>
              <h3>Trailers</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="160" data-speed="2000"></h2>
              </div>
              <p class="text-box">TRAILERS</p>
            </div>
            <div class="two columns">
              <i class="fa fa-calendar fa-5x"></i>
              <h3>Since</h3>
              <div class="counter col_fourth">
                <h2 class="timer count-title count-number" data-to="1991" data-speed="2000"></h2>
              </div>
              <p class="text-box">25 YEARS OF SERVICE</p>
            </div>
    </section>
    </div>
    </div>
    </section>