css flex-grow 设置成三位小数 为什么计算不准确?

新手上路,请多包涵
<style>
    *{margin: 0;padding: 0;}
    .box{display:flex;width:600px;height:300px;}
    .left{
        flex-grow: 0.991;
        width: 100px;
        background: green;
    }
</style>

<div class='box'>
    <div class="left" id="left"></div>
    <script>
        console.log(document.getElementById('left').getBoundingClientRect().width);// 595.484375
    </script>
</div>

在我的chrome 83.0.4103.61打印的width为595.484375 但是按照flex的规则 这个元素的width应该为100+(500*0.991)=595.5
而且chrome devtools elements选中这个元素width显示为595.48.
为什么会这样啊?求解答

阅读 2.6k
推荐问题