可滚动框内无法访问的内容

问题描述

我正在使用引导程序和jquery创建一个登录屏幕,其中必须对访问卡进行集中。

问题是,当出现垂直滚动条时,滚动到顶部不会显示所有内容,并且无法访问Facebook按钮(取决于高度,谷歌也是如此)。

为补偿导航栏的高度,我在主体和父div上测试了填充顶,但没有成功。

我还尝试在卡之前添加带有clearfix的br,但它不起作用。

@charset "UTF-8";

html,body
{
  height: 100%;
  width: 100%;
}

body
{
  overflow: hidden;
  padding-top: 3.5rem;
}

.btn-with-icon
{
  position: relative;
}
.btn-with-icon > div
{
  background-color: #FFF;
  border-radius: 0.15rem;
  height: 1.9rem;
  left: 0.17rem;
  position: absolute;
  top: 0.17rem;
  width: 1.9rem;
}
.btn-with-icon > div > i
{
  height: 1.9rem !important;
  width: 1.9rem !important;;
}
.btn-with-icon > div > i::before
{
  font-size: 1.5rem;
  line-height: 1.9rem !important;
}
.btn-with-icon > div > .fa-facebook::before
{
  color: #3B5998;
}
.btn-with-icon > div > .fa-google::before
{
  color: #DB4437;
}
.btn-with-icon > span
{
  margin-left: 2rem;
}

.input-with-icon > i::before
{
  color: #C0C0C0;
  font-size: 1rem;
}
.input-with-icon > i
{
  font-size: 1.8rem;
  position: absolute;
  z-index: 1;
}
.input-with-icon > .form-control
{
  padding-left: 2rem;
}

.separator
{
  color: #C0C0C0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.horizontal-rule
{
  align-items: center;
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center;
}
.horizontal-rule::before,.horizontal-rule::after
{
  background: #C0C0C0;
  content: '';
  flex: 1;
  width: 1px;
}
.horizontal-rule::before
{
  margin-bottom: 0.5em;
}
.horizontal-rule::after
{
  margin-top: 0.5em;
}

.vertical-rule
{
  align-items: center;
  display: flex;
  flex: 1;
  flex-direction: row;
  justify-content: center;
}
.vertical-rule::before,.vertical-rule::after
{
  background: #C0C0C0;
  content: '';
  flex: 1;
  height: 1px;
}
.vertical-rule::before
{
  margin-right: 0.5em;
}
.vertical-rule::after
{
  margin-left: 0.5em;
}

.small-text,.small-text *
{
  font-size: 0.8rem;
  font-weight: 400;
}
<!DOCTYPE html>
<html lang="pt-br">
  <head>
    <title>test</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1.0,user-scalable=no,shrink-to-fit=no">
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
  </head>
  <body class="container-fluid">
    <div class="row h-100">
      <nav class="navbar navbar-dark bg-dark fixed-top">
        <span class="navbar-brand mb-0 h1">navbar</span>
      </nav>
      <div class="col-12 h-100 d-flex justify-content-center align-items-center overflow-auto">
        <div class="card">
          <div class="card-body">
            <form method="post" action="#">
              <div class="form-row">
                <div class="form-group col-12">
                  <button type="button" class="btn btn-secondary btn-block text-left btn-with-icon">
                    <div>
                      <i class="fa fa-facebook fa-fw"></i>
                    </div>
                    <span>Login with Facebook</span>
                  </button>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12">
                  <button type="button" class="btn btn-secondary btn-block text-left btn-with-icon">
                    <div>
                      <i class="fa fa-google fa-fw"></i>
                    </div>
                    <span>Login with Google</span>
                  </button>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12 separator">
                  <span class="vertical-rule">OR</span>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12 input-with-icon">
                  <i class="fa fa-at fa-fw"></i>
                  <input type="email" placeholder="e-mail" class="form-control">
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12 input-with-icon">
                  <i class="fa fa-lock fa-fw"></i>
                  <input type="password" placeholder="password" class="form-control">
                  <a href="#" class="float-right small-text">Forgotten password</a>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12">
                  <button type="submit" class="btn btn-success btn-block">
                    <span class="fa fa-check"></span>
                  </button>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12 text-center small-text">
                  <a href="#">Sign in</a>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-6 mb-0 small-text">
                  <a href="#" target="_blank">Terms</a>
                </div>
                <div class="form-group col-6 mb-0 text-right small-text">
                  <a href="#" target="_blank">Privacy policy</a>
                </div>
              </div>
            </form>
          </div>
        </div>
      </div>
    </div>
    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
  </body>
</html>

解决方法

我已从包含div的align-items-center中删除,并将m-auto添加到卡中。

@charset "UTF-8";

html,body
{
  height: 100%;
  width: 100%;
}

body
{
  overflow: hidden;
  padding-top: 3.5rem;
}

.btn-with-icon
{
  position: relative;
}
.btn-with-icon > div
{
  background-color: #FFF;
  border-radius: 0.15rem;
  height: 1.9rem;
  left: 0.17rem;
  position: absolute;
  top: 0.17rem;
  width: 1.9rem;
}
.btn-with-icon > div > i
{
  height: 1.9rem !important;
  width: 1.9rem !important;;
}
.btn-with-icon > div > i::before
{
  font-size: 1.5rem;
  line-height: 1.9rem !important;
}
.btn-with-icon > div > .fa-facebook::before
{
  color: #3B5998;
}
.btn-with-icon > div > .fa-google::before
{
  color: #DB4437;
}
.btn-with-icon > span
{
  margin-left: 2rem;
}

.input-with-icon > i::before
{
  color: #C0C0C0;
  font-size: 1rem;
}
.input-with-icon > i
{
  font-size: 1.8rem;
  position: absolute;
  z-index: 1;
}
.input-with-icon > .form-control
{
  padding-left: 2rem;
}

.separator
{
  color: #C0C0C0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.horizontal-rule
{
  align-items: center;
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center;
}
.horizontal-rule::before,.horizontal-rule::after
{
  background: #C0C0C0;
  content: '';
  flex: 1;
  width: 1px;
}
.horizontal-rule::before
{
  margin-bottom: 0.5em;
}
.horizontal-rule::after
{
  margin-top: 0.5em;
}

.vertical-rule
{
  align-items: center;
  display: flex;
  flex: 1;
  flex-direction: row;
  justify-content: center;
}
.vertical-rule::before,.vertical-rule::after
{
  background: #C0C0C0;
  content: '';
  flex: 1;
  height: 1px;
}
.vertical-rule::before
{
  margin-right: 0.5em;
}
.vertical-rule::after
{
  margin-left: 0.5em;
}

.small-text,.small-text *
{
  font-size: 0.8rem;
  font-weight: 400;
}
<!DOCTYPE html>
<html lang="pt-br">
  <head>
    <title>test</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1.0,user-scalable=no,shrink-to-fit=no">
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
  </head>
  <body class="container-fluid">
    <div class="row h-100">
      <nav class="navbar navbar-dark bg-dark fixed-top">
        <span class="navbar-brand mb-0 h1">navbar</span>
      </nav>
      <div class="col-12 h-100 d-flex justify-content-center overflow-auto">
        <div class="card m-auto">
          <div class="card-body">
            <form method="post" action="#">
              <div class="form-row">
                <div class="form-group col-12">
                  <button type="button" class="btn btn-secondary btn-block text-left btn-with-icon">
                    <div>
                      <i class="fa fa-facebook fa-fw"></i>
                    </div>
                    <span>Login with Facebook</span>
                  </button>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12">
                  <button type="button" class="btn btn-secondary btn-block text-left btn-with-icon">
                    <div>
                      <i class="fa fa-google fa-fw"></i>
                    </div>
                    <span>Login with Google</span>
                  </button>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12 separator">
                  <span class="vertical-rule">OR</span>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12 input-with-icon">
                  <i class="fa fa-at fa-fw"></i>
                  <input type="email" placeholder="e-mail" class="form-control">
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12 input-with-icon">
                  <i class="fa fa-lock fa-fw"></i>
                  <input type="password" placeholder="password" class="form-control">
                  <a href="#" class="float-right small-text">Forgotten password</a>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12">
                  <button type="submit" class="btn btn-success btn-block">
                    <span class="fa fa-check"></span>
                  </button>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-12 text-center small-text">
                  <a href="#">Sign in</a>
                </div>
              </div>
              <div class="form-row">
                <div class="form-group col-6 mb-0 small-text">
                  <a href="#" target="_blank">Terms</a>
                </div>
                <div class="form-group col-6 mb-0 text-right small-text">
                  <a href="#" target="_blank">Privacy policy</a>
                </div>
              </div>
            </form>
          </div>
        </div>
      </div>
    </div>
    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
  </body>
</html>

,

现在我添加了一个新的Class来防止Card扩展到最大高度,HTMl中的Class和新的CSS都标有注释。我将尝试进一步研究并找出发生这种情况的确切原因,但是您可以尝试一下,看看它是否可以解决您页面上的问题。在代码段中确实如此。

@app.get("/luchshie-avtori")
async def best_authors():
    print('test ping')
    return requests.get('',params={'return': 'json'}).json()
@charset "UTF-8";

html,.small-text *
{
  font-size: 0.8rem;
  font-weight: 400;
}
/*This is the new CSS*/
.display-area{
  max-height: 80%;
}

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...