【发布时间】:2014-04-26 00:31:17
【问题描述】:
如果容器是 500px 宽,标签是 30% 宽,输入框是 70% 宽,那么应该一切都适合,但问题是输入框有一个 4px 左右的边框,并左右填充 2px,使其比原来宽 6px。
我们可以通过使宽度不是 70%,而是 68% 之类的来破解它,但这有点 hacky。有没有办法处理它? (我们不能做 CSS 重置,因为输入框通常需要一个边框,假设我们不使用不占用任何空间的轮廓来修改它。
CSS:
#my-container { width: 500px }
#first-name-label { display: inline-block; width: 30% }
#first-name { display: inline-block; width: 70% }
以下是一些例子:
- http://jsfiddle.net/hNaM7/12/outWidth: 356(用于输入框,如调试控制台所示)
- http://jsfiddle.net/hNaM7/13/outerWidth 351
- http://jsfiddle.net/hNaM7/14/outerWidth 349
- http://jsfiddle.net/hNaM7/15/outerWidth 349
- http://jsfiddle.net/hNaM7/20/ 不会换行,但是输入框会去 超出容器宽度
【问题讨论】:
-
有趣,好像你说用
box-sizing: border-box来解决它...jsfiddle.net/hNaM7/22