Bootstrap 如果隐藏然后用 JS 显示,网格行不对齐中心

Bootstrap Grid Row does not align center if hidden then shown with JS

提前为不稳定的缩进道歉。

我有一个简单的 Bootstrap 网格设置,就像这样

<div class="row justify-content-center" align="center" id="details">
    <div class="col-sm-2">
        <div class="card">
            <div class="card-body">
                <h4><?php echo getDAtimeWorked($envelope); ?></h4>
                 <h5 id=""><?php echo getDArecords($envelope); ?></h5>
                  </div>
                </div>
            </div>
            <div class="col-sm-2">
                <div class="card">
                  <div class="card-body">
                    <h4><?php echo getTNtimeWorked($envelope); ?></h4>
                    <h5 id=""><?php echo getTNrecords($envelope); ?></h5>
                  </div>
                </div>
            </div>
            <div class="col-sm-2">
                <div class="card">
                  <div class="card-body">
                    <h4><?php echo getMHtimeWorked($envelope); ?></h4>
                    <h5 id=""><?php echo getMHrecords($envelope); ?></h5>
                  </div>
                </div>
            </div>
            <div class="col-sm-2">
                <div class="card">
                  <div class="card-body">
                    <h4><?php echo getLTtimeWorked($envelope); ?></h4>
                    <h5 id=""><?php echo getLTrecords($envelope); ?></h5>
                  </div>
                </div>
            </div>
            <div class="col-sm-2">
                <div class="card">
                  <div class="card-body">
                  </div>
                </div>
            </div>
        </div>

function showDetails() {
  var x = document.getElementById("details");
  if (x.style.display === "none") {
    x.style.display = "block";
  } else {
    x.style.display = "none";
  }
}

当我点击该单元格切换 show/hide 时,先隐藏后显示的内容不再居中对齐。我怎样才能得到它?

我对透明度的最终目标是在页面加载时隐藏该内容并在单击时显示它。

在您的 js 中,您将其切换为块 x.style.display = "block" ,因此 class justify-content-center 停止工作,因为它不再是 flex。

试试 x.style.display = "flex"