html - 将一行表单框的总宽度扩展到 100%

标签 html css

我正在创建一个表单,我在同一行上有几个输入框。

我想让电子邮件输入占一行。日期、时间和数字输入取另一行。但是,我不确定如何让日期/时间/数字 输入正好跨越表单宽度的 100%。

我现在在 CSS 中的百分比是估计值,因此数字框的边缘不会与电子邮件输入框垂直对齐。

input[type=email] {
  width: 100%;
}
input[type=date] {
  width: 22%;
  margin-right: 15px;
}
input[type=time] {
  margin-right: 15px;
}
input[type=number] {
  width: 11.4%
}
<form>
  Email: <input type="email"><br>
  Date: <input type="date">
  Time: <input type="time">
  Number in Party: <input type="number">
</form>

最佳答案

我会用 flex 来做,这是一个有效的 example

我将每一行包裹在一个 div 上,如下所示:

<form>
  <div>Email: <input type="email"></div>
  <div>
    <div>Date: <input type="date"></div>
    <div>Time: <input type="time"></div>
    <div>Number in Party: <input type="number"></div>
  </div>
</form>

CSS

form{

  display: flex;
  flex-direction: column;
}

form>div{
  display: flex;
}

form>div input{
  flex-grow: 1;
}

form>div>div{
  display: flex;
  flex-grow: 1;
}

关于html - 将一行表单框的总宽度扩展到 100%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35214690/

相关文章:

jquery - 如何将一个类添加到所有类的第一段?

javascript - 如果子元素被禁用,单击 EventListener 不起作用

javascript - 如果元素尚未显示,html 会转到另一个页面的特定元素吗?

html - 使用 CSS 突出显示 HTML 表格中的不同元素

css - 如何修复 IE8 中的 CSS3 PIE Box-Shadow 问题

html - 隐藏所有行并显示所选

html - 如何为 CSS 中 HTML 输入类型颜色字段的值添加透明度?

Javascript:for 循环检索并打印一定量的 API 数据

html - Flexbox 问题 - Firefox 和 IE10/11

html - 输入事件状态下标签转换的意外行为