简体   繁体   English

如何使用Bootstrap中的网格系统对齐Bootstrap输入和标签?

[英]How to align Bootstrap input and labels using Grid System in Bootstrap?

I am Creating a form consist of several input fields, I am aligning them using Bootstrap 4 Grid system, but facing issues while aligning some input fields. 我正在创建一个包含几个输入字段的表单,我正在使用Bootstrap 4 Grid系统对齐它们,但是在对齐某些输入字段时会遇到问题。

Snippet 片段

 <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css"> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"></script> <form> <div class="container" style="border: 2px solid gray"> <br> <div class="row container"> <label class="col-lg-2 text-primary">Company Id :</label> <input type="text" class="col-lg-3 form-control" disabled="disabled"> <label for="usr" class="col-lg-2 text-primary ">Company Name :</label> <input type="text" class="col-lg-3 form-control " disabled="disabled"> </div> <hr style="border: 1px solid gray"> <div class="row container"> <div class="input-group mt"> <label for="usr" class="col-lg-2 text-primary ">Item Code :</label> <div class="dropdown-menu "> <a class="dropdown-item" href="#">Link 1</a> <a class="dropdown-item" href="#">Link 2</a> <a class="dropdown-item" href="#">Link 3</a> </div> <input type="text" class="form-control col-lg-3 "> <button type="button" class="btn btn-info dropdown-toggle" data-toggle="dropdown"></button> <label for="usr" class="col-lg-2 text-primary ">Item Name :</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <div class="row container"> <div class="input-group mt-3"> <label for="usr" class="col-lg-2 text-primary ">Brand Code:</label> <div class="dropdown-menu "> <a class="dropdown-item" href="#">Link 1</a> <a class="dropdown-item" href="#">Link 2</a> <a class="dropdown-item" href="#">Link 3</a> </div> <input type="text" class="form-control col-lg-3 "> <button type="button" class="btn btn-info dropdown-toggle" data-toggle="dropdown"></button> <label for="usr" class="col-lg-2 text-primary ">Brand Name:</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <div class="row container"> <div class="input-group mt-3"> <label for="usr" class="col-lg-2 text-primary ">Category Code:</label> <div class="dropdown-menu "> <a class="dropdown-item" href="#">Link 1</a> <a class="dropdown-item" href="#">Link 2</a> <a class="dropdown-item" href="#">Link 3</a> </div> <input type="text" class="form-control col-lg-3 "> <button type="button" class="btn btn-info dropdown-toggle" data-toggle="dropdown"></button> <label for="usr" class="col-lg-2 text-primary ">Category Name:</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <div class="row container"> <div class="input-group mt-3"> <label class="col-lg-2 text-primary">Cost Price :</label> <input type="text" class="col-lg-3 form-control"> <label for="usr" class="col-lg-2 text-primary ">Selling Price :</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <br> </div> </form> 

on small screen it is coming perfectly but on large screen the fields are not aligning properly. 在小屏幕上,显示效果非常理想,但在大屏幕上,字段无法正确对齐。

What I am trying to achieve like: 我想要达到的目标是:

我正在尝试这个

I would like to create a more beautiful UI using Bootstrap 4. But my first priority is to align the fields properly on each device 我想使用Bootstrap 4创建一个更漂亮的UI。但是我的首要任务是在每个设备上正确对齐字段

Add the following styles 添加以下样式

.container .input-group {
  align-items: center;
}

.container .input-group label {
  margin: 0;
}

Also keep an invisible button with "Cost price" and "Company Id" similar to that with the dropdowns, so that your fields are properly aligned. 还要保留一个与下拉菜单类似的不可见按钮,其“成本价格”和“公司ID”与下拉菜单类似,以便您的字段正确对齐。

<button type="button" class="btn btn-info dropdown-toggle invisible d-none d-lg-block"></button>

 .container .input-group { align-items: center; } .container .input-group label { margin: 0; } 
 <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css"> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"></script> <form> <div class="container" style="border: 2px solid gray"> <br> <div class="row container"> <label class="col-lg-2 text-primary">Company Id :</label> <input type="text" class="col-lg-3 form-control" disabled="disabled"><button type="button" class="btn btn-info dropdown-toggle invisible"></button> <label for="usr" class="col-lg-2 text-primary ">Company Name :</label> <input type="text" class="col-lg-3 form-control " disabled="disabled"> </div> <hr style="border: 1px solid gray"> <div class="row container"> <div class="input-group mt"> <label for="usr" class="col-lg-2 text-primary ">Item Code :</label> <div class="dropdown-menu "> <a class="dropdown-item" href="#">Link 1</a> <a class="dropdown-item" href="#">Link 2</a> <a class="dropdown-item" href="#">Link 3</a> </div> <input type="text" class="form-control col-lg-3 "> <button type="button" class="btn btn-info dropdown-toggle" data-toggle="dropdown"></button> <label for="usr" class="col-lg-2 text-primary ">Item Name :</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <div class="row container"> <div class="input-group mt-3"> <label for="usr" class="col-lg-2 text-primary ">Brand Code:</label> <div class="dropdown-menu "> <a class="dropdown-item" href="#">Link 1</a> <a class="dropdown-item" href="#">Link 2</a> <a class="dropdown-item" href="#">Link 3</a> </div> <input type="text" class="form-control col-lg-3 "> <button type="button" class="btn btn-info dropdown-toggle" data-toggle="dropdown"></button> <label for="usr" class="col-lg-2 text-primary ">Brand Name:</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <div class="row container"> <div class="input-group mt-3"> <label for="usr" class="col-lg-2 text-primary ">Category Code:</label> <div class="dropdown-menu "> <a class="dropdown-item" href="#">Link 1</a> <a class="dropdown-item" href="#">Link 2</a> <a class="dropdown-item" href="#">Link 3</a> </div> <input type="text" class="form-control col-lg-3 "> <button type="button" class="btn btn-info dropdown-toggle" data-toggle="dropdown"></button> <label for="usr" class="col-lg-2 text-primary ">Category Name:</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <div class="row container"> <div class="input-group mt-3"> <label class="col-lg-2 text-primary">Cost Price :</label> <input type="text" class="col-lg-3 form-control"> <button type="button" class="btn btn-info dropdown-toggle invisible d-none d-lg-block"></button> <label for="usr" class="col-lg-2 text-primary ">Selling Price :</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <br> </div> </form> 

Try this: 尝试这个:

 <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css"> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"></script> <form> <div class="container" style="border: 2px solid gray; padding: 25px;"> <br> <div class="row"> <label class="col-lg-2 text-primary">Company Id :</label> <input type="text" class="col-lg-3 form-control" disabled="disabled"> <div class="col-lg-2"></div> <label for="usr" class="col-lg-2 text-primary ">Company Name:</label> <input type="text" class="col-lg-3 form-control " disabled="disabled"> </div> <hr style="border: 1px solid gray"> <div class="row"> <div class="input-group mt"> <label for="usr" class="col-lg-2 text-primary ">Item Code :</label> <div class="dropdown-menu "> <a class="dropdown-item" href="#">Link 1</a> <a class="dropdown-item" href="#">Link 2</a> <a class="dropdown-item" href="#">Link 3</a> </div> <input type="text" class="form-control col-lg-3 "> <button type="button" class="btn btn-info dropdown-toggle col-lg-1" data-toggle="dropdown" style="margin: 0 -5px 0 5px;"></button> <div class="col-lg-1"></div> <label for="usr" class="col-lg-2 text-primary ">Item Name :</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <div class="row"> <div class="input-group mt-3"> <label for="usr" class="col-lg-2 text-primary ">Brand Code:</label> <div class="dropdown-menu "> <a class="dropdown-item" href="#">Link 1</a> <a class="dropdown-item" href="#">Link 2</a> <a class="dropdown-item" href="#">Link 3</a> </div> <input type="text" class="form-control col-lg-3 "> <button type="button" class="btn btn-info dropdown-toggle col-lg-1" data-toggle="dropdown" style="margin: 0 -5px 0 5px;"></button> <div class="col-lg-1"></div> <label for="usr" class="col-lg-2 text-primary ">Brand Name:</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <div class="row"> <div class="input-group mt-3"> <label for="usr" class="col-lg-2 text-primary ">Category Code:</label> <div class="dropdown-menu "> <a class="dropdown-item" href="#">Link 1</a> <a class="dropdown-item" href="#">Link 2</a> <a class="dropdown-item" href="#">Link 3</a> </div> <input type="text" class="form-control col-lg-3 "> <button type="button" class="btn btn-info dropdown-toggle col-lg-1" data-toggle="dropdown" style="margin: 0 -5px 0 5px;"></button> <div class="col-lg-1"></div> <label for="usr" class="col-lg-2 text-primary ">Category Name:</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <div class="row"> <div class="input-group mt-3"> <label class="col-lg-2 text-primary">Cost Price :</label> <input type="text" class="col-lg-3 form-control"> <div class="col-lg-2"></div> <label for="usr" class="col-lg-2 text-primary ">Selling Price:</label> <input type="text" class="col-lg-3 form-control "> </div> </div> <br> </div> </form> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM