简体   繁体   English

根据尺寸的替代布局

[英]Alternate layout based on size

I am entertaining the idea of using bootstrap for all future pages on our internal website. 我很乐意在内部网站的所有将来页面上使用引导程序。 The following image looks and works great on all sized devices. 下图在所有尺寸的设备上看起来都很好用。

在此处输入图片说明

The issue is that I used one row containing two horizontal labels and inputs for each line. 问题是我使用了一行,每行包含两个水平标签和输入。 When the bootstrap resizes, the rows are merged. 调整引导大小时,将合并行。 The issue is that the two columns are separate subjects and when the device view port is smaller, the right column should position itself underneath the left column. 问题是两列是分开的主题,并且当设备查看端口较小时,右列应将自身定位在左列下方。 Instead they merge. 相反,它们合并。 Left column item 1 is first and then right column item 1 is second. 左列项目1是第一个,然后右列项目1是第二个。 I need it too be all of left column and then all of right column. 我也需要所有左列,然后所有右列。

Any direction on this issue would be very helpful. 在这个问题上的任何方向都将非常有帮助。

 @import url('https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css'); .header{ text-align: center; border: 2px solid blue; } .footer { position: absolute; right: 0; bottom: 0; left: 0; background-color: #efefef; text-align: center; border: 2px solid blue; } h1{ margin: auto; } .body{ border: 2px solid blue; margin-top: 10px; } .inline{ display: inline-block; } .no-margin{ margin: 0px; } label{ width: 140px; margin-right: 5px; text-align: left; white-space: nowrap; } input{ margin-left: 0px; margin-top: 10px; } .left_margin{ margin-top: 10px; margin-left: 230px; } @media screen and (min-width: 768px){ label{ text-align: right; } input{ margin-left: 10px; margin-top: 10px; } } 
 <div class="col-lg-12 header"><h1 class="lead">Test</h1></div> <div class="body"> <div class="container"> <form class="form-inline" role="form"> <div class="row"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> </div> <div class="row"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> </div> <div class="row"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control sm-margin" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> </div> <div class="row"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control sm-margin" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> </div> <div class="row"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control sm-margin" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> </div> <div class="row"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> </div> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control sm-margin" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> </div> <div class="row"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> </div> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control sm-margin" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> </div> <div class="row"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> </div> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12 inline"> <label for="input_test" class="control-label inline">Label</label> <div class="form-group"> <div> <input class="form-control sm-margin" type="text" id="input_test" placeholder="Bootstrappin"> </div> </div> </div> </div> </form> </div> </div> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> 

  1. The id must be unique. id必须是唯一的。

  2. col-lg-6 col-md-6 col-sm-12 col-xs-12 is equivalent to col-md-6 . col-lg-6 col-md-6 col-sm-12 col-xs-12等同于col-md-6

  3. Wrap up left and right columns of fields by two <div class="col-md-6"></div> blocks. 用两个<div class="col-md-6"></div>块将字段的左列和右列包裹起来。

  4. I guess you need to use the Horizontal form instead of the Inline form . 我想您需要使用“ 水平”表单而不是“ 内联”表单

  5. Place labels into <div class="form-group"></div> blocks. 将标签放入<div class="form-group"></div>块中。

  6. Make labels left-floating and use the hidden: overflow; 使标签向左浮动并使用hidden: overflow; trick to fill all the remaining space by the non-floating block. 通过非浮动块填充所有剩余空间的技巧。

Please check the result: 请检查结果:

 @import url('https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css'); .header{ text-align: center; border: 2px solid blue; } h1.lead { margin: 0; padding: 12px; } .body{ border: 2px solid blue; margin-top: 10px; padding-top: 12px; } .form-horizontal .form-group { margin-left: 0; margin-right: 0; } .form-horizontal .control-label { display: block; float: left; margin-bottom: 0; margin-right: 20px; padding-top: 7px; white-space: nowrap; } .form-horizontal .form-control { width: 100%; } .fill-free-space { overflow: hidden; } 
 <div class="header"><h1 class="lead">Test</h1></div> <div class="body"> <div class="container"> <form class="form-horizontal" role="form"> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="input_left_1" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_left_1" placeholder="Left"> </div> </div> <div class="form-group"> <label for="input_left_2" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_left_2" placeholder="Left"> </div> </div> <div class="form-group"> <label for="input_left_3" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_left_3" placeholder="Left"> </div> </div> <div class="form-group"> <label for="input_left_4" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_left_4" placeholder="Left"> </div> </div> <div class="form-group"> <label for="input_left_5" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_left_5" placeholder="Left"> </div> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="input_right_1" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_right_1" placeholder="Right"> </div> </div> <div class="form-group"> <label for="input_right_2" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_right_2" placeholder="Right"> </div> </div> <div class="form-group"> <label for="input_right_3" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_right_3" placeholder="Right"> </div> </div> <div class="form-group"> <label for="input_right_4" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_right_4" placeholder="Right"> </div> </div> <div class="form-group"> <label for="input_right_5" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_right_5" placeholder="Right"> </div> </div> <div class="form-group"> <label for="input_right_6" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_right_6" placeholder="Right"> </div> </div> <div class="form-group"> <label for="input_right_7" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_right_7" placeholder="Right"> </div> </div> <div class="form-group"> <label for="input_right_8" class="control-label">Label</label> <div class="fill-free-space"> <input class="form-control" type="text" id="input_right_8" placeholder="Right"> </div> </div> </div> </div> </form> </div> </div> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> 

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

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