Bootstrap значок кнопки не центрирован - PullRequest
0 голосов
/ 05 апреля 2020

Я использую социальную кнопку boostrap для Google, но значок Google не центрирован по вертикали.

Как получить, чтобы буква "G" центрировалась по вертикали.

body {
  background-color: #E8ECEF;
}

.centered {
    padding-top: 200px;
    text-align: center;
}

.secret-text {
  text-align: center;
  font-size: 2rem;
  color: #fff;
  background-color: #000;
}
<!-- just tried this part out also didn't change the G-->
.btn-google{
    display: flex;
   align-items: center;
   justify-content: center;
}
<div class="container mt-5">
  <h1>Login</h1>

  <div class="row">
    <div class="col-sm-8">
      <div class="card">
        <div class="card-body">

          <!-- Makes POST request to /login route -->
          <form action="/login" method="POST">
            <div class="form-group">
              <label for="email">Email</label>
              <input type="email" class="form-control" name="username">
            </div>
            <div class="form-group">
              <label for="password">Password</label>
              <input type="password" class="form-control" name="password">
            </div>
            <button type="submit" class="btn btn-dark">Login</button>
          </form>

        </div>
      </div>
    </div>

    <div class="col-sm-4">
      <div class="card">
        <div class="card-body">
          <a class="btn btn-block btn-social btn-google" href="/auth/google" role="button">
            <i class="fab fa-google"></i>
            Sign In with Google
          </a>
        </div>
      </div>
    </div>

  </div>
</div>

Добавлен полный код моей страницы входа в систему за исключением верхнего / нижнего колонтитула и включены css, а также новое изображение

Я использую bootstrap социальные css, а также

Picture of the problem

Ответы [ 5 ]

1 голос
/ 05 апреля 2020
 .className{
  vertical-align: baseline;
}

попробуйте этот класс

0 голосов
/ 05 апреля 2020

Это будет центрировать его ВЕРТИКАЛЬНО, ЦЕНТРАЛЬНО

  min-height: 10em;
  display: table-cell;
  vertical-align: middle

Дайте мне знать, если это работает для вас:)

0 голосов
/ 05 апреля 2020

Все, что вам нужно сделать, это добавить класс текстового центра к вашей иконке; Если это тоже не сработает, добавьте класс justify-content-center в элемент div, содержащий col-sm-4.

0 голосов
/ 05 апреля 2020

Все, что вам нужно сделать, это использовать магию flexbox c.

.btn-google {
  /* Since your button is a block button, otherwise use inline-flex */
  display: flex;
  align-items: center;
  justify-content: center;
}

Попробуйте и дайте мне знать, если все работает нормально!

0 голосов
/ 05 апреля 2020

Вы можете использовать flexbox для выравнивания элементов по горизонтали и вертикали по центру. Если вы хотите изменить свой значок относительно вашего текста, вы можете использовать свойство transform.

Вот код.

HTML


 <div class="card">
        <div class="card-body">
          <a class="btn btn-block btn-social btn-google" href="/auth/google" role="button">
            <i class="fab fa-google"></i>
            Sign In with Google
          </a>
        </div>
      </div>
    </div>


.card{
  background-color:#DD4B39;
  color:#fff;
  width:300px;
  margin:5px auto;
}
.card a{
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
}
.card a i{
  margin-right:5px;
  transform:translateY(2px)
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...