2014-10-06 22 views
0

我有一个载体元素(又名父级),其中包含另一个div作为子项。 父项具有填充。使用填充将子内部的孩子绝对定位

我需要使用absolute垂直定位孩子但是我注意到这会弄乱孩子的宽度,这应该是100%(填充父母的整个宽度,服从边距)。

下面是一个例子codepen链路: http://codepen.io/anon/pen/yKzwb

P.S.我正在寻找一种以动态方式工作的解决方案,而不是手动设置每个可能的子内容的左值或右值。

我很确定有这个简单的解决方案;会爱记 -

+3

请上传您所使用的代码。 – j08691 2014-10-06 14:32:41

+1

创建一个jsFiddler – Fabio 2014-10-06 14:34:00

+0

只是发布它作为链接 – Mia 2014-10-06 14:38:31

回答

-1

我不知道这是否是最好的解决办法,但预期的结果是在这里:由 http://codepen.io/anon/pen/wjgmh

变化:

left: 64px; 
right: 64px; 
width: auto; 

还需要考虑肖恩Jermey答案通过把父母的相对价值。

编辑:仅做一个“动态的方式”我提出这个CSS选择器:

#parent > .child { 
//each generalize child behavior 
} 
+0

这不是我正在寻找的解决方案的类型。我正在寻找一个更广义的解决方案,而不是逐个设置每个子元素。 – Mia 2014-10-06 15:03:49

+0

您能否告诉我们您需要的一切,因为多个子元素的含义没有涉及,帮助我们为您找到最佳解决方案。 – Sato 2014-10-06 15:06:18

+0

顺便说一句,如果你有多个孩子,你可以简单地将id改为所有的孩子。这样,所有的孩子都会有相同的行为。 – Sato 2014-10-06 15:12:25

-1

如果我正确理解你的问题,你需要使用相对家长和变化填充保证金:

position: relative; 
margin: 64px; /* absolute is ignoring the padding attribrute */ 

例如:http://jsfiddle.net/o73pb7j4/

但是当你与其他的答案批评,多个孩子一个动态解决方案将难以实现得到控制而e使用绝对定位,因为每个孩子将从父母的顶部绝对位置。如果这与您的问题无关,请详细说明,因为我误解了您要查找的内容。

此链接可能是更多的帮助:

http://blog.vjeux.com/2012/css/css-absolute-position-taking-into-account-padding.html

+0

这与我所寻找的有什么关系? – Mia 2014-10-06 15:37:22

+0

从那时起我编辑了答案。 – JRW 2014-10-07 08:46:37

相关问题