使用填充将父级内部绝对定位在父级内部

时间:2014-10-06 14:31:50

标签: html css html5 css3 dom

我有一个载体元素(也就是父母),其中包含另一个div作为孩子。 父母有一个填充。

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

这是一个示例代码链接: http://codepen.io/anon/pen/yKzwb

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

我很确定这很容易解决;我很想记住 -

2 个答案:

答案 0 :(得分:-1)

我不确定这是否是最佳解决方案,但预期结果如下: http://codepen.io/anon/pen/wjgmh

所做的更改:

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

通过提供父母的相对价值来考虑Sean Jermey的答案。

编辑:为了使一个“动态方式”我建议这个css选择器:

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

答案 1 :(得分:-1)

如果我正确理解您的问题,您需要使用相对父级并将填充更改为边距:

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

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

但是当你批评其他答案时,使用绝对定位时很难实现多个孩子的动态解决方案,因为每个孩子都会从父母的顶端绝对位置。如果这与您的问题无关,请详细说明我误解了您的问题。

此链接可能更有帮助:

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