2013-05-09 62 views
1

我的窗口對象的寬度爲1361px。在javascript中計算相對大小的HTML元素的大小時出錯

一個容器div的寬度設置爲90%,理論上是1224.9px。然而,它的計算大小($(「#mycontainer」)。width())返回1225px。僅供參考,計算的數字似乎來自瀏覽器本身,而不是jQuery。

現在,問題是,如果我把兩個浮動div分別放在1000px和225px,它們將不適合同一行,據稱是因爲1225px> 1224.9px。至少在FF和Chrome中,未在別處進行測試。

如果我將容器設置爲1225px的固定大小,那麼這兩個div將返回在同一行上,這在我腦海中確認瀏覽器不使用高級圓形計算大小來知道有多少空間實際上可供兒童使用。

我想知道是否有人知道如何解決這個問題。我甚至不知道如何獲得容器的百分比大小來自己做這樣的數學:

var width = Math.floor($(window).width * $("#mycontainer").percentageWidth()/100) 

謝謝。

+0

除非你有這樣的理由,否則將容器內的div的像素值轉換爲百分比值是有意義的。 – thesonglessbird 2013-05-09 12:27:03

+0

其實有一個原因,我其實有兩個以上的div,其中一些有固定的寬度,而不是相對的。 – 2013-05-09 12:39:22

回答

0

CSS display: flex;是解決這些怪癖的好方法。