【问题标题】:Bootstrap GRID/Layouts引导网格/布局
【发布时间】:2021-03-08 03:35:30
【问题描述】:

我对 bootstrap 还很陌生,并且在一些布局设置方面有些挣扎。我想创建一个居中的表单,其右侧的工具提示/框形式与表单框的顶部内联。下面是我目前的表格,我会附上一张我正在努力实现的照片。我已经尝试了很长一段时间,但我最接近的是将它放在页面中间或现有表单下方。


我想要实现的目标:(橙色框)

当前 html:

<html lang="en">
<head>
  <title>Stackoverflow</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
</head>
<body>
    <div class="container">
        <div class="row my-3">
            <div class="col-1 col-md-2 col-lg-3"></div>
            <div class="col-10 col-md-8 col-lg-6 my-3 border">
                <!-- Form -->
                <form class="border" action="" method="post" class="my-3">
                    <h1>ABC</h1>
                    <h2>Lorem ipsum dolor</h2>
                    <p class="description">Lorem ipsum dolor sit amet consectetur, adipisicing elit. Quae, beatae?
                        Consequuntur qu</p>
                        
                    <!-- Input fields -->
                    <div class="form-group">
                        <label class="sr-only" for="accountNumber">Account number:</label>
                        <input type="text" class="form-control accountNumber" id="accountNumber"
                            placeholder="Account number..." name="accountNumber">
                    </div>
                    
                    <div class="form-group">
                        <label class="sr-only" for="email">Email:</label>
                        <input type="text" class="form-control email" id="email" placeholder="Email..." name="email">
                        <small id="emailHelpBlock" class="form-text text-muted">Make sure it's your personal email - you
                            will need to use it for verification to log in.
                        </small>
                      </div>
                      
                     <div class="alert alert-primary" role="alert">                         <span class="icon oi oi-info"></span>This will be your username
                    </div>
                    
                    <div class="form-group">
                        <label class="sr-only" for="firstName">First Name <input type="text" class="form-control firstName" id="firstName" placeholder="First name..."
                            name="firstName"></label>
                    </div>
                    
                    <div class="form-group">
                        <label class="sr-only" for="surname">Surname:</label>
                        <input type="text" class="form-control surname" id="surname" placeholder="Surname..."
                            name="surname">
                    </div>
                    
                    <div class="form-group">
                        <label class="sr-only" for="dateOfBirth">Password:</label>
                        <input type="text" class="form-control dateOfBirth" id="dateOfBirth"
                            placeholder="Date of birth..." name="dateOfBirth">
                        <small id="dateOfBirthHelpBlock" class="form-text text-muted">
                            DD/MM/YYYY
                        </small>
                    </div>
                    
                    <div class="form-group">
                        <label class="sr-only" for="password">Password:</label>
                        <input type="password" class="form-control password" id="password" placeholder="Password..."
                            name="password">
                    </div>
                    
                    <div class="form-group">
                        <div class="form-check">
                            <input class="form-check-input" type="checkbox" id="gridCheck">
                            <label class="form-check-label" for="gridCheck">I accept the</label>
                            <span>
                                <a href="#">Terms and Conditions</a>
                            </span>
                        </div>
                        <button type="submit" class="btn btn-primary btn-block">Signup</button>
                    </div>
                        <!-- End input fields -->
                </form>

                <!-- Form end -->
                </div>
                <div class="col-1 col-md-2 col-lg-3></div>
            </div>
        </div>
</body>

提前致谢!

【问题讨论】:

    标签: html css bootstrap-grid


    【解决方案1】:

    我最终完成了自己的解决方案。为了解决我的问题,我对容纳表单和这个新盒子的容器进行了调整。如下图所示。

    解决方案:

    <body>
        <div class="container h-100 mt-5">
            <div class="row h-100 justify-content-center">
                <div class="col-10 col-md-8 col-lg-6 ">
                    <!-- Form -->
                    <form class="" action="" method="post">
                        <h1>ABC</h1>
                        <h2>Lorem ipsum dolor</h2>
                        <p class="description">Lorem ipsum dolor sit amet consectetur, adipisicing elit. Quae, beatae?
                            Consequuntur qu</p>
                        <!-- Input fields -->
                        <div class="form-group">
                            <label class="sr-only" for="accountNumber">Account number:</label>
                            <input type="text" class="form-control accountNumber" id="accountNumber"
                                placeholder="Account number..." name="accountNumber">
                            <small id="accountNumberHelpBlock" class="form-text text-muted">Check your Welcome Pack or call
                                us 1800 000 000 for help
                            </small>
                        </div>
                        <div class="form-group">
                            <label class="sr-only" for="email">Email:</label>
                            <input type="text" class="form-control email" id="email" placeholder="Email..." name="email">
                            <small id="emailHelpBlock" class="form-text text-muted">Make sure it's your personal email - you
                                will need to use it for verification to log in.
                            </small>
                            <div class="alert alert-primary" role="alert"> <span class="icon oi oi-info"></span>This will be
                                your
                                username</div>
                        </div>
                        <div class="form-group">
                            <label class="sr-only" for="firstName">First Name:</label>
                            <input type="text" class="form-control firstName" id="firstName" placeholder="First name..."
                                name="firstName">
                            <small id="firstNameHelpBlock" class="form-text text-muted">This is the name that is shown on
                                your Welcome Pack
                            </small>
                        </div>
                        <div class="form-group">
                            <label class="sr-only" for="surname">Surname:</label>
                            <input type="text" class="form-control surname" id="surname" placeholder="Surname..."
                                name="surname">
                        </div>
                        <div class="form-group">
                            <label class="sr-only" for="dateOfBirth">Password:</label>
                            <input type="text" class="form-control dateOfBirth" id="dateOfBirth"
                                placeholder="Date of birth..." name="dateOfBirth">
                            <small id="dateOfBirthHelpBlock" class="form-text text-muted">
                                DD/MM/YYYY
                            </small>
                        </div>
                        <div class="form-group">
                            <label class="sr-only" for="password">Password:</label>
                            <input type="password" class="form-control password" id="password" placeholder="Password..."
                                name="password">
                        </div>
                        <div class="form-group">
                            <label class="sr-only" for="password2">Confirm Password:</label>
                            <input type="password" class="form-control password" id="password2"
                                placeholder="Confirm your password..." name="password">
                        </div>
                        <div class="form-group">
                            <div class="form-check mb-2">
                                <input class="form-check-input" type="checkbox" id="gridCheck">
                                <label class="form-check-label" for="gridCheck">
                                    I accept the
                                </label>
                                <span>
                                    <a href="#">Terms and Conditions</a>
                                </span>
                                <button type="submit" class="btn btn-primary float-right">Register for access</button>
                            </div>
                            <!-- End input fields -->
                    </form>
                    <!-- Form end -->
                </div>
            </div>
            <div class="border col-lg-3 box">
                <div class="help1 border-bottom">
                    <h4><span class="icon oi oi-question-mark"></span>Need some help?</h4>
                    <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Quasi totam vel, cum reiciendis tenetur
                        quia ullam soluta. Praesentium minus explicabo ducimus mollitia dolorum, ipsam tenetur, et
                        voluptatum quae, nostrum atque!
                    </p>
                    <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Eius, rem. Incidunt molestiae
                        repellendus
                        et sunt iure perferendis saepe ipsam.
                    </p>
                </div>
                <div class="help2 border-bottom">
                    <h4 class="mt-2"><span class="icon oi oi-person"></span>Already registered?</h4>
                    <a href="#" class="btn btn-light btn-sm btn-block mb-3" tabindex="-1" role="button"
                        aria-disabled="true">Log in
                    </a>
                </div>
                <div class="help3">
                    <h4 class="mt-2"><span class="icon oi oi-person"></span>You're already a ABC customer?</h4>
                    <a href="#" class="btn btn-light btn-sm btn-block" tabindex="-1" role="button" aria-disabled="true">Log
                        in to ABC Internet
                    </a>
                </div>
            </div>
    
            <script>
            </script>
    
    </body>
    

    【讨论】:

      【解决方案2】:

      看看设计,你也需要。因为,我在做和你附上图片一样的事情。它在所有方面都向我展示了相同的内容。

      他们有一些错误,我在下面强调了。请下次阅读。

      • 首先,您必须在 HTML 文件中添加 Bootstrap CDN 才能使用引导类。

      • 第二,别忘了关闭标签。他们在很多地方都没有结束标签,这就是它的设计没有正确显示的原因。

      尝试编写格式的代码,以便您知道哪个结束标记是 不见了。

      • 第三,它们不需要在 body 和每个 div 标签或容器中自动采用 .h-100 类。如果你想降低高度 那么你可以使用 CSS 来降低高度。

      <html lang="en">
      <head>
        <title>Stackoverflow</title>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
      </head>
      <body>
          <div class="container">
              <div class="row my-3">
                  <div class="col-1 col-md-2 col-lg-3"></div>
                  <div class="col-10 col-md-8 col-lg-6 my-3 border">
                      <!-- Form -->
                      <form class="border" action="" method="post" class="my-3">
                          <h1>ABC</h1>
                          <h2>Lorem ipsum dolor</h2>
                          <p class="description">Lorem ipsum dolor sit amet consectetur, adipisicing elit. Quae, beatae?
                              Consequuntur qu</p>
                              
                          <!-- Input fields -->
                          <div class="form-group">
                              <label class="sr-only" for="accountNumber">Account number:</label>
                              <input type="text" class="form-control accountNumber" id="accountNumber"
                                  placeholder="Account number..." name="accountNumber">
                          </div>
                          
                          <div class="form-group">
                              <label class="sr-only" for="email">Email:</label>
                              <input type="text" class="form-control email" id="email" placeholder="Email..." name="email">
                              <small id="emailHelpBlock" class="form-text text-muted">Make sure it's your personal email - you
                                  will need to use it for verification to log in.
                              </small>
                            </div>
                            
                           <div class="alert alert-primary" role="alert">                         <span class="icon oi oi-info"></span>This will be your username
                          </div>
                          
                          <div class="form-group">
                              <label class="sr-only" for="firstName">First Name <input type="text" class="form-control firstName" id="firstName" placeholder="First name..."
                                  name="firstName"></label>
                          </div>
                          
                          <div class="form-group">
                              <label class="sr-only" for="surname">Surname:</label>
                              <input type="text" class="form-control surname" id="surname" placeholder="Surname..."
                                  name="surname">
                          </div>
                          
                          <div class="form-group">
                              <label class="sr-only" for="dateOfBirth">Password:</label>
                              <input type="text" class="form-control dateOfBirth" id="dateOfBirth"
                                  placeholder="Date of birth..." name="dateOfBirth">
                              <small id="dateOfBirthHelpBlock" class="form-text text-muted">
                                  DD/MM/YYYY
                              </small>
                          </div>
                          
                          <div class="form-group">
                              <label class="sr-only" for="password">Password:</label>
                              <input type="password" class="form-control password" id="password" placeholder="Password..."
                                  name="password">
                          </div>
                          
                          <div class="form-group">
                              <div class="form-check">
                                  <input class="form-check-input" type="checkbox" id="gridCheck">
                                  <label class="form-check-label" for="gridCheck">I accept the</label>
                                  <span>
                                      <a href="#">Terms and Conditions</a>
                                  </span>
                              </div>
                              <button type="submit" class="btn btn-primary btn-block">Signup</button>
                          </div>
                              <!-- End input fields -->
                      </form>
      
                      <!-- Form end -->
                      </div>
                      <div class="col-1 col-md-2 col-lg-3></div>
                  </div>
              </div>
      </body>

      【讨论】:

      • 谢谢你的建议,这些东西只是因为我剪掉了文件的主要部分而丢失了。否则我上面的例子也根本不起作用:)无论如何我都更新了问题中的html,所以任何能够提供帮助的人都更容易。
      • 那么,告诉我你的问题是否解决了。现在它工作正常与否......?
      猜你喜欢
      • 2014-07-04
      • 2018-04-04
      • 1970-01-01
      • 1970-01-01
      • 2016-06-14
      • 2014-04-12
      • 2015-02-15
      • 1970-01-01
      • 2016-07-22
      相关资源
      最近更新 更多