当前位置: 首页 > 面试题库 >

如何使文本输入框占据父块内的所有剩余宽度?

楚奇逸
2023-03-14
问题内容

如何实现以下目标:

┌────────────────────parent────────────────────┐
│ label [text-box                   ] [button] │
│ paragraph                                    │
└──────────────────────────────────────────────┘
  • label 左对齐
  • button 右对齐
  • text-box 占据父级中的所有剩余宽度
  • paragraph左对齐,label也必须左对齐

二者labelbutton应服从作为最大尽可能别处定义字体属性。parent在窗口内居中对齐,并且自然可以具有任意宽度。

请指教。


问题答案:

更新 [2016年10月]:Flexbox版本…

form {

  display: flex;

}

form input[type="text"] {

  flex: 1;

}


<form>

  <label>Name</label>

  <input type="text" />

  <button>Submit</button>

</form>

<p>Lorem ipsum...</p>

原始答案[2011年4月]:无表CSS版本(表行为)…

<div id="parent">
    <div id="inner">
        <label>Name</label>
        <span><input id="text" type="text" /></span>
        <input id="submit" type="button" value="Submit" />
    </div>
    <p>some paragraph text</p>
</div>

CSS …

#inner {
    display: table;
    width: 100%;
}
label {
    display: table-cell;
}
span {
    display: table-cell;
    width: 100%;
    padding: 0px 10px;
}
#text {
    width: 100%;
}
#submit {
    display: table-cell;
}


 类似资料:
  • 问题内容: 这是代码: 如何在保持同一行的同时使输入元素扩展为填充所有剩余空间?如果我100%投入,它会走自己的线… 问题答案: 可以在IE7 +和所有现代浏览器中使用。 在首先必须走在HTML。有点令人反感,但值得一看。 关键步骤是使用:为何需要这样做的解释如下: 多余的跨度是必需的,因为它对以下内容没有影响:[CSS/DOM中的什么阻止了带有display:块的输入框扩展到其容器的大小

  • 问题内容: 我有这个问题,我有两个股利: 如何使div2占据页面的剩余高度? 问题答案: 使用绝对定位:

  • 问题内容: 我有一个带两个孩子的容器。第一个孩子有给定的身高。如何让第二个孩子占据容器的“自由空间” 而不给其指定高度? 在示例中,粉红色也应占据白色空间。 与此问题类似:如何使div占据剩余高度? 但是我不想摆 绝对的位置 。 问题答案: 可以通过多种方式扩展子级以填充剩余的空间,具体取决于您希望获得的浏览器支持以及是否具有定义的高度。 样本 格网 CSS的布局提供了另一种选择,尽管它可能不如F

  • http://jsfiddle.net/s8g4e/ 类似于这个问题:如何使div占据剩余高度? 但我不想给位置绝对。

  • 问题内容: 在下面的HTML片段中,如何使包含“ LAST”的列的宽度占据行的其余部分,并且包含“ COLUMN ONE”和“ COLUMN TWO”的列的宽度足够宽以包含其内容,而不是更大。 谢谢 问题答案: 您将需要告诉前两列不要换行,并为最后一列提供99%的宽度: 编辑: 您应该将所有样式/演示文稿放在(外部…)css中。 对列使用类(如果您仅针对现代浏览器,则可以使用css3选择器,例如)

  • ANTLR愉快地将所有的表达解析成成分,听者作用于相关的成分,生活是快乐的。下面是语法的一个代表性片段: 但现在,我需要扩展语法以合并两个新表达式,这两个表达式都以接受任何字符序列(包括Unicode)结束,直到。示例输入: 我很难在语法中表达对的所有输入的接受。以下变化导致痛苦: 如何才能做到这一点?期望的结果是,解析树侦听器将获得文本值,如。 我尝试将写入单独的和中,但遇到https://gi