我试图有一个块级输入追加,其中输入栏占据了按钮以外的所有空间。
我使用 a <button>
or得到了这个<span>
,但是一旦我将标签切换到 a <input>
,我又开始遇到样式问题。但是,<input>
标签是必需的。
我已经包括了一个小提琴 - 这里
我试图有一个块级输入追加,其中输入栏占据了按钮以外的所有空间。
我使用 a <button>
or得到了这个<span>
,但是一旦我将标签切换到 a <input>
,我又开始遇到样式问题。但是,<input>
标签是必需的。
我已经包括了一个小提琴 - 这里
我通过这样做使它工作:
.input-append {
display: table;
width: 100%;
}
.add-on {
display: table-cell;
height: auto !important;
}
.input-bar {
display: table-cell;
width: 100%;
border-right-style: None;
}
.well{
padding-right: 58px;
}
编辑:正如@nicefinly 指出的那样,GO 的高度!按钮仍然关闭。在 Chrome 中我没有发现任何问题,但在 Firefox 中我绝对可以看到高度问题。
因此,通过他的所有更改,我还要补充一点,例如,在修改井和附加类时,这将更改使用这些标准 Bootstrap 类的所有地方,这可能不是您想要的。
相反,我会为所有这些自定义类创建单独的类,以便它们在这种特定情况下工作,而在其他地方则按预期工作。例如,“add-on-button”、“well-with-button”等。
@CoderDave 用他的建议为我指明了正确的方向 - @CoderDave 的答案的 JSFiddle
但是,我随后注意到高度有些偏离。相反,我手动设置按钮高度 -我的解决方法的 JSFiddle
.input-append {
display: table;
width: 100%;
}
.add-on {
display: table-cell;
height: 30px !important;
}
.input-bar {
display: table-cell;
width: 100%;
border-right-style: None;
}
.well{
padding-right: 58px;
}
但是之后...
在 Chrome 中进行测试给了我奇怪的结果(不一定是在小提琴中,而是在我的本地环境中)。因此,我没有使用填充,而是使用margin-left
and margin-right
where
margin-left = 17px
在input .add-on
和
margin-right = -55px
在.input-bar
但是...在那之后,我注意到 z-index 导致.input-bar
GO! 当栏处于焦点时的按钮(即我点击它)。
因此,我设置z-index
z-index: -1
为well
z-index: 1
为.input-bar
z-index: 2
为.add-on
这似乎是一个非常老套的解决方案。如果有人有更好的解决方案,请分享。