For firefox, the results are the same. For chrome and IE11, the separators still occupy 1 or 2px even if spacing="0px".
<zk> <label value='1. hbox spacing="0"'/> <hbox spacing="0" width="500px" height="55px" style="background:yellow"> <vbox width="100px" height="50px" style="background:blue" /> <vbox width="100px" height="50px" style="background:blue" /> <vbox width="100px" height="50px" style="background:blue" /> <vbox width="100px" height="50px" style="background:blue" /> <vbox width="100px" height="50px" style="background:blue" /> </hbox> <label value='2. hbox spacing="0px"'/> <hbox spacing="0px" width="500px" height="55px" style="background:yellow"> <vbox width="100px" height="50px" style="background:blue" /> <vbox width="100px" height="50px" style="background:blue" /> <vbox width="100px" height="50px" style="background:blue" /> <vbox width="100px" height="50px" style="background:blue" /> <vbox width="100px" height="50px" style="background:blue" /> </hbox> <label value='3. vbox spacing="0"'/> <vbox spacing="0" width="105px" height="250px" style="background:yellow"> <hbox width="100px" height="50px" style="background:blue" /> <hbox width="100px" height="50px" style="background:blue" /> <hbox width="100px" height="50px" style="background:blue" /> <hbox width="100px" height="50px" style="background:blue" /> <hbox width="100px" height="50px" style="background:blue" /> </vbox> <label value='4. vbox spacing="0px"'/> <vbox spacing="0px" width="105px" height="250px" style="background:yellow"> <hbox width="100px" height="50px" style="background:blue" /> <hbox width="100px" height="50px" style="background:blue" /> <hbox width="100px" height="50px" style="background:blue" /> <hbox width="100px" height="50px" style="background:blue" /> <hbox width="100px" height="50px" style="background:blue" /> </vbox> </zk>