UI Bootstrap / Bootstrap 3 - Как центрировать контейнер? - PullRequest
0 голосов
/ 08 марта 2020

Я создаю простую страницу входа с Angularjs и пытаюсь добавить CSS к ней, используя UI Bootstrap. Одной из зависимостей, необходимых для пользовательского интерфейса Bootstrap, была Bootstrap CSS, поэтому я включил ее и в свою страницу. Прямо сейчас моя форма выглядит как задумано; то, что я хочу сделать, это центрировать сам контейнер вертикально, чтобы он находился посередине страницы. Есть ли для меня хороший способ сделать это? Я искал много решений, и они либо ничего не меняют, либо сдавливают / меняют саму форму так, как мне не хочется. И если честно, я не уверен, что причина, по которой у меня возникают трудности с центрированием контейнера, связана с пользовательским интерфейсом Bootstrap или чем-то еще.

Вот изображение того, как выглядит форма: Screenshot of the Form

И вот мой код:

<!DOCTYPE html>
<html lang="en">
  <head>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.7.9/angular.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/2.5.0/ui-bootstrap-tpls.min.js"></script>
  </head>
  <body>
    <!-- This is the div for the form component -->
    <div ng-app="form-component">
      <div class="container">
        <div class="row center-block">
          <div class="col-sm-4"></div>
          <div class="col-sm-4">
            <form>
              <div class="form-group">
                <label for="username">Username</label>
                <input type="text" class="form-control" id="username-input">
              </div>
              <div class="form-group">
                <label for="password">Password</label>
                <input type="password" class="form-control" id="password-input">
              </div>
              <div class="text-center">
                <button type="submit" class="btn btn-primary">Submit</button>
              </div>
            </form>
          </div> <!-- class="col-sm-4" -->
          <div class="col-sm-4"></div>
        </div> <!-- class="row justify-content-center" -->
      </div> <!-- class="container" -->
    </div> <!-- np-app form-component -->
    <script>
      var form = angular.module("form-component", ["ui.bootstrap"]);
    </script>
  </body>
</html>

Любая помощь будет принята с благодарностью, большое спасибо.

1 Ответ

1 голос
/ 08 марта 2020

Попробуйте это

html, body {
  height: 100%
}

.wrapper {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
<!DOCTYPE html>
<html lang="en">
  <head>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.7.9/angular.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/2.5.0/ui-bootstrap-tpls.min.js"></script>
  </head>
  <body>
    <!-- This is the div for the form component -->
    <div ng-app="form-component" class="wrapper">
      <div class="container">
        <div class="row center-block">
          <div class="col-sm-4"></div>
          <div class="col-sm-4">
            <form>
              <div class="form-group">
                <label for="username">Username</label>
                <input type="text" class="form-control" id="username-input">
              </div>
              <div class="form-group">
                <label for="password">Password</label>
                <input type="password" class="form-control" id="password-input">
              </div>
              <div class="text-center">
                <button type="submit" class="btn btn-primary">Submit</button>
              </div>
            </form>
          </div> <!-- class="col-sm-4" -->
          <div class="col-sm-4"></div>
        </div> <!-- class="row justify-content-center" -->
      </div> <!-- class="container" -->
    </div> <!-- np-app form-component -->
    <script>
      var form = angular.module("form-component", ["ui.bootstrap"]);
    </script>
  </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...