html - 为什么输入框完全溢出了它们的边界 div?

标签 html css twitter-bootstrap twitter-bootstrap-3

我打算将 4 个输入文本框排列在表单的一行中的 4 个相同大小的列中。利用 Bootstrap 的网格列类,我将中型和大型屏幕尺寸的 col--3 分配给这四个输入 div。 同样,对于小尺寸和超小尺寸,我为它们分配了 col--12,以便输入占据它们自己的整行。然后我的向导希望减小这些输入框的尺寸。我将偏移类添加到四个输入并将它们的列跨度减少到 6 列。这些都适本地居中。

但是,此更改搞砸了我的小屏幕布局。现在每行只有两个输入,而另外两个在下一行。

/* button modification*/

#button-wrapper {
  width: 40%;
  min-width: 200px;
  margin: 0 auto;
}

#ebook-download-button {
  margin: auto 0.5em;
}

.inner {
  margin: 0 auto 0 auto;
  width: 150px;
  padding: 0;
  /* center the block element*/
}

img {
  min-width: 100%;
}

input {
  height: 60%;
  margin: 0px;
}


/* square boxes*/

.square-elem {
  border-radius: 0px;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" rel="stylesheet" />
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />

<body>



  <form id="registration-form" class="">
    <!--<div class="col-md-12 col-sm-12">-->
    <div class="row">
      <div class="col-lg-3 col-md-3 col-sm-6 col-sm-offset-3 col-xs-6 col-xs-offset-3 ">
        <div class="form-group">
          <input type="input" class="form-control square-elem" id="first-name" placeholder="First Name">
        </div>
      </div>

      <div class="col-lg-3 col-md-3 col-sm-6 col-sm-offset-3 col-xs-6 col-xs-offset-3">
        <div class="form-group">
          <input type="input" class="form-control square-elem" id="last-name" placeholder="Last Name">
        </div>
      </div>

      <div class="col-lg-3 col-md-3 col-sm-6 col-sm-offset-3 col-xs-6 col-xs-offset-3">
        <div class="form-group">
          <input type="input" class="form-control square-elem" id="company" placeholder="Company">
        </div>
      </div>

      <div class="col-lg-3 col-md-3 col-sm-6 col-sm-offset-3 col-xs-6 col-xs-offset-3">
        <div class="form-group">
          <input type="input" class="form-control square-elem" id="email" placeholder="Email">
        </div>
      </div>
    </div>
    <div class="row">
      <div id="button-wrapper" style="">
        <div id="ebook-download-button" class="col-md-12 col-sm-12 col-xs-12 text-center">
          <a href="#" role="button" class="btn btn-danger btn-download form-control square-elem" value=""> DOWNLOAD EBOOK </a>
        </div>
      </div>
    </div>
    <!-- </div>
	 -->
  </form>






</body>

这是 JSFiddle (拖框)也是。似乎输入(在每个表单组 div 中)已经完全定位在它们的边界 div 框之外。预期的输出应该是并排排成一行的四个输入。 这可能是什么问题?

最佳答案

如果您的问题是,偏移量仍然在较大的屏幕中,您必须反转每个其他 col 类的偏移量。将 col-md-offset-0 提供给您为较小设备指定偏移量的 div

/* button modification*/

#button-wrapper {
  width: 40%;
  min-width: 200px;
  margin: 0 auto;
}

#ebook-download-button {
  margin: auto 0.5em;
}

.inner {
  margin: 0 auto 0 auto;
  width: 150px;
  padding: 0;
  /* center the block element*/
}

img {
  min-width: 100%;
}

input {
  height: 60%;
  margin: 0px;
}


/* square boxes*/

.square-elem {
  border-radius: 0px;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" rel="stylesheet" />
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />

<body>



  <form id="registration-form" class="">
    <!--<div class="col-md-12 col-sm-12">-->
    <div class="row">
      <div class="col-lg-3 col-md-3 col-md-offset-0 col-sm-6 col-sm-offset-3 col-xs-6 col-xs-offset-3 ">
        <div class="form-group">
          <input type="input" class="form-control square-elem" id="first-name" placeholder="First Name">
        </div>
      </div>

      <div class="col-lg-3 col-md-3 col-md-offset-0 col-sm-6 col-sm-offset-3 col-xs-6 col-xs-offset-3">
        <div class="form-group">
          <input type="input" class="form-control square-elem" id="last-name" placeholder="Last Name">
        </div>
      </div>

      <div class="col-lg-3 col-md-3 col-sm-6 col-md-offset-0 col-sm-offset-3 col-xs-6 col-xs-offset-3">
        <div class="form-group">
          <input type="input" class="form-control square-elem" id="company" placeholder="Company">
        </div>
      </div>

      <div class="col-lg-3 col-md-3 col-sm-6 col-md-offset-0 col-sm-offset-3 col-xs-6 col-xs-offset-3">
        <div class="form-group">
          <input type="input" class="form-control square-elem" id="email" placeholder="Email">
        </div>
      </div>
    </div>
    <div class="row">
      <div id="button-wrapper" style="">
        <div id="ebook-download-button" class="col-md-12 col-sm-12 col-xs-12 text-center">
          <a href="#" role="button" class="btn btn-danger btn-download form-control square-elem" value=""> DOWNLOAD EBOOK </a>
        </div>
      </div>
    </div>
    <!-- </div>
   -->
  </form>






</body>

关于html - 为什么输入框完全溢出了它们的边界 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44391276/

相关文章:

html - 内容上方的滚动条

css - Bootstrap 页面打印

html - 带有粘性标题的响应式 Bootstrap 表

javascript - 使用 CDN 库和外部样式表将 HTML 转换为 PDF

css - 我可以将 SVG 和外部 CSS 转换为 EPS 吗?

html - 如何仅使用 anchor 标记和 css 不使用 ul 和 li 来制作此菜单?

css - 右侧的 Twitter Bootstrap 缩略图标题

HTML、CSS 页面对齐问题

Android网页开发问题

html - 为什么单击按钮时没有触发我的 jQuery 事件?