2013-06-11 140 views
1

我在另一个里面有4个div。等于元素之间的边距

我想里面divs在它们之间等于利润率所以里面divdiv的左边缘和第一之间的同一个空间,两者之间的内部div和内部div最后和根的右边缘之间。

现在我可以看到这个

http://jsfiddle.net/rXYqR/

有没有办法用CSS的任何特殊属性来做到这一点?或者我不得不手动分配保证金?

谢谢!

+0

'#root * {保证金:继承;}'?如果那不是你想要的,试着用一种不太混乱的方式来描述它。 – PlantTheIdea

+0

这听起来像完全相同的问题[这是问这里](http://stackoverflow.com/questions/16964294/how-to-evenly-space-many-inline-block-elements/16964570)。事实证明,这是一个令人惊讶的难题 - 我们没有找到一个好的答案,其中包括边界以及元素之间的边界。 – Spudley

+0

@Spudley下来有一个很好的答案,解决这个问题(我认为)! – Bae

回答

3
#root{ 
    background: red; 
    width: 400px; 
    font-size:0; 
} 

#root > div{ 
    display: inline-block; 
    width: 50px; 
    height: 50px; 
    background: blue; 
    margin-left: calc((100% - 200px)/5); /* Pre-calced 40px */ 
} 

的jsfiddle:http://jsfiddle.net/rXYqR/2/

+0

哇!我不知道'钙'存在!这很棒!谢谢! – Bae

+0

它适用于所有优秀的浏览器。 Chrome,Firefox和IE 9+都支持它。 Safari 6使用供应商前缀来支持它,但它使浏览器崩溃了很多。 –