【问题标题】:Page container not centering with page justify center issue页面容器不与页面对齐中心问题居中
【发布时间】:2020-03-25 21:08:53
【问题描述】:

我正在尝试使我的页面容器居中,同时保持内容的左对齐。

我最初是用 flexbox 尝试这个,但遇到了问题,所以有点混杂。

主包装容器居中,但里面的容器不居中

这对 flexbox 可行吗?为什么即使我告诉它证明居中,容器也不居中?

笔链接:https://codepen.io/jacksonrose/pen/RwNbMMm

<div class="center">Logo</div>

<div class="pageWrapper">
  <div class="country">USA</div>
  <div class="stockistItems">
    <div class="item">
      <div class="state">Montana</div>
      <span>766 Brackbill Road Gap PA<br>17527-9457 <br>+1 800 309 1500</span>
    </div>
    <div class="item">
      <div class="state">California</div>
      <span>766 Brackbill Road Gap PA<br>17527-9457 <br>+1 800 309 1500</span>
    </div>
    <div class="item">
      <div class="state">Arizona</div>
      <span>766 Brackbill Road Gap PA<br>17527-9457 <br>+1 800 309 1500</span>
    </div>
  </div>
</div>

body {
  margin: 0px;
  padding: 0px;
}
.center {
  text-align: center;
}
.pageWrapper {
    max-width: 800px;
    display: block;
    margin: 0 auto;
    padding-top: 100px;
  .country {
    font-size: 16px;
  }
  .stockistItems {
    display: flex;
    border-bottom: 1px solid #eaeaea;
    padding: 25px 0px;
    margin-bottom: 20px;
    justify-content: center;
    .item {
      display: flex;
      flex-direction: column;
      width: 33%;
    }
  }
}

主包装容器居中,但里面的容器不居中

【问题讨论】:

  • 你的包装显然是居中的。不清楚您的问题是什么。
  • 它似乎只在中心,请您详细说明您面临的问题。
  • @Paulie_D 刚刚添加了一张图片来澄清
  • @HimanshuSingh 添加了一张图片来澄清
  • 主包装容器居中,但里面的容器没有居中

标签: html css flexbox


【解决方案1】:

.item 中删除width:33%,并给.stockListItems 一个justify-content: space-between。这会将.item div 均匀地拉伸到.pageWrapper 容器的末尾。然后给.pageWrapper一个width: 90%

body {
  margin: 0px;
  padding: 0px;
}

.center {
  text-align: center;
}

.pageWrapper {
  max-width: 800px;
  display: block;
  margin: 0 auto;
  padding-top: 100px;
  width: 90%;
}

.pageWrapper .country {
  font-size: 16px;
}

.pageWrapper .stockistItems {
  display: flex;
  border-bottom: 1px solid #eaeaea;
  padding: 25px 0px;
  margin-bottom: 20px;
  /*justify-content: center;*/
  justify-content: space-between;
}

.pageWrapper .stockistItems .item {
  display: flex;
  flex-direction: column;
  /*width: 33%;*/
}
<div class="center">Logo</div>

<div class="pageWrapper">
  <div class="country">USA</div>
  <div class="stockistItems">
    <div class="item">
      <div class="state">Montana</div>
      <span>766 Brackbill Road Gap PA<br>17527-9457 <br>+1 800 309 1500</span>
    </div>
    <div class="item">
      <div class="state">California</div>
      <span>766 Brackbill Road Gap PA<br>17527-9457 <br>+1 800 309 1500</span>
    </div>
    <div class="item">
      <div class="state">Arizona</div>
      <span>766 Brackbill Road Gap PA<br>17527-9457 <br>+1 800 309 1500</span>
    </div>
  </div>
</div>

【讨论】:

  • 既然包装器已经有一个最大宽度,为什么还要给它添加一个宽度?
  • @Paulie_D 因为当包装器小于 800px 时,它会占用 100% 的父容器,而 margin: 0 auto 变得无关紧要。
  • 所以?这与问题无关,应该在媒体查询中解决。
  • @Paulie_D 也许我误解了这个问题。我以为他们试图将包装器居中
猜你喜欢
  • 1970-01-01
  • 2011-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-29
  • 1970-01-01
  • 1970-01-01
  • 2012-12-31
相关资源
最近更新 更多