如何在容器内居中对齐并获得统一的宽度

How to center align inside container and get uniform width

我需要水平居中对齐下图中显示的所有内容。

我还需要使所有 table 单元格的宽度相同,因为它们似乎是根据超棒的字体图标大小自动调整的。

我该怎么做?

My CSS here

我的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>

你应该使用 margin: auto;为您的内部或容器 class

.inner {
     ...
     margin: auto;
     ....

}

您可以将 flexbox 与 flex-growflex-basis 结合使用,使列的宽度相等并填充行。

.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>

或者您可以为列指定特定的宽度,然后使用 justify-content 将它们居中

.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>

我还建议使用 display:flex;

这里有一个例子https://jsfiddle.net/znggcgaq/

.row{
  display: flex;
  flex-wrap: wrap;
}

.row .columns {
  margin: 5px;
  flex-grow: 1;
}

这是一个很好的指南,它是如何工作的:https://css-tricks.com/snippets/css/a-guide-to-flexbox/

在我的示例中,我允许项目包装在容器内 div。

根据我在此处提出的另一个问题,我找到了问题最后步骤的解决方案:

我已经使用了上面发布的提示:

#statistics .row {
            display: flex;
            justify-content: center;
    }

    #statistics .row .columns {
            width: 150px;
            margin: 0 1em;
            background: #fff;
    }

但在此之后,一切在 Dreamweaver 上看起来都不错,但在浏览器中就不行了。问题是 CSS 指令顺序,因为它们不是 "grid" CSS 部分中的最后一个。我把它们放在 CSS 部分的最后一个,并且它最终居中,正如我想要的那样