好吧,所以我們知道設置填充到對象會導致寬度改變,即使它被明確設置。雖然人們可以爭論這背後的邏輯,但它會導致一些問題。填充內的輸入中斷寬度100%
對於大多數情況下,您只需添加一個子元素並將填充添加到該元素,而不是將其設置爲100%,但對於表單輸入而言,這不是一個可能的步驟。
在此請看:http://sandman.net/test/formcss.html
第二輸入有其填充設置爲5px的這一點我非常喜歡的默認設置。但不幸的是,這使得輸入在所有方向上增加了10px,包括在100%寬度上添加10px。
這裏的問題是,我不能在輸入內添加一個子元素,所以我無法修復它。所以問題是:
有沒有辦法在輸入內添加填充,同時仍然保持寬度100%?它必須是100%,因爲表格會以不同的寬度父母呈現,所以我不知道父母的寬度。
請參閱http://stackoverflow.com/questions/628500/can-i-stop-100-width-text-boxes-from-extending-beyond-their-containers/628912#628912瞭解如何使用CSS3' box-sizing'屬性 – 2010-04-21 20:13:52
只需要說,謝謝你保持你的示例頁面一直在上。當有人在問題中發佈網址時驅動我瘋狂,並且在答案被回答後或者他們不使用jsfiddle之類的東西時它就停止了。 – 2011-10-07 07:49:43
關於使用box-sizing屬性;我的問題是同樣的問題,但與高度 - 設置高度單獨意味着100%意味着高度+邊框+填充=容器高度。爲了讓輸入具有容器的實際高度,我只需要使用 box-sizing:content-box。 – Skychan 2015-09-14 18:33:01