2012-04-02 44 views
2

我得到了680像素寬的textarea。 這需要做成流動,所以我使用百分比。一個像素的寬度爲100%

百分比使得完美的100%寬度,但它似乎比它應該多渲染1個像素。

http://jsfiddle.net/XXshn/2/

+0

我實在不明白你的文本區域是如何液,因爲它的父已得到固定寬度的最終文本區域也要去固定寬度。關於一個像素的差異是因爲瀏覽器在評估以像素爲單位的填充百分比後,他的歐文算法將十進制數字四捨五入。 – 2012-04-02 11:12:23

+0

在我創建的這個示例中,父級只是一個「固定」持有者。爲什麼他們甚至將數字捨去? – markvandencorput 2012-04-02 11:17:17

+1

94.10029498525074%680 px = 639.88.2006,但瀏覽器將其設置爲639px而不是640px。你的百分比不能達到完美的百分比,因爲除非你改變盒子模型,否則邊界也被評估爲寬度的一部分。 – 2012-04-02 11:21:06

回答

0

什麼是錯的:

textarea { 
border: 1px solid #333333; 
background: #ececec; 
margin: 0; 
outline: 0; 
height: 100px; 
padding: 20px; /* */ 
width: 640px; /* 680px - 2 * 20 */ 
resize: none; } 
+0

我需要它縮放時,例如放在一個較小的股利,因此需要百分比。 – markvandencorput 2012-04-02 11:07:09

+1

好的,所以你的問題是textarea上的邊框,因爲這是用px代替%表示的,當你改變外部div的大小時,它永遠不會是正確的。 – 2012-04-02 11:23:25

+0

將邊框從內部元素移動到外部元素:我在這裏修改了您的示例:http://jsfiddle.net/b8yxP/ – 2012-04-02 11:26:27

相關問題