列を div に自動的に追加するアプリケーションを作成しています。(Div 内の Div)。この問題は、6 などの奇数のボールの列幅で発生します。6 は 100% に均等に分割できないため、私の解決策は、小数点以下の残りを見つけて最後の列に追加することでした。
何らかの理由で、残りを計算すると、.4 ではなく 0.3999999999999915 になります。
ここに私のjQueryがあります
var numCol = $('.column').length,
colWid = Math.floor((100 / numCol) * 10) / 10,
numRem = 100 - (colWid * numCol);
$('.column').width(colWid + '%');
$('.column:last-child').width(colWid + numRem + "%");
alert(numRem);
Math.round を使用する必要がありますか? これが後で何らかの問題を引き起こす可能性があることを心配しています。
で解決
var numCol = $('.column').length,
colWid = Math.floor((100 / numCol) * 1000) / 1000,
numRem = (100 - (colWid * numCol)).toFixed(3);
$('.column').width(colWid + '%');
$('.column:last-child').width(Number(numRem)+ colWid +'%');