采用响应式设计,逐渐失去头发和睡眠。这个似乎是一个真正的webkit bug:http://jsfiddle.net/TAvec/
问题非常清楚 - webkit将20%填充解释为父级内容框的20%,而firefox和opera将其解释为父级总框的20%(包括父级填充)。
任何想法如何在保持绝对定位的同时解决这个问题?
答案 0 :(得分:0)
您可以将<aside>
的内容包含在div
中,并将填充分配给该内容,而不是<aside>
。这样,您可以确保FF和Chrome中的填充(未测试O或IE)相对于容器呈现,即<aside>
。
<!-- HTML -->
<article>
<h1>Parent</h1>
<p>Content...</p>
<aside>
<div class="content">
<h1>Aside child</h1>
<p>The prime minister also suggested the move would have implications for the UK's EU and Nato membership.</p>
</div>
</aside>
</article>
//CSS
article{
background:chocolate;
padding-left:40%;
position:relative;
}
aside{
background:chartreuse;
position:absolute;
left:0;top:0;bottom:0;
width:20%;
}
article div.content { //'%' declarations relative to parent
width: 100%;
height: 100%;
padding: 20%;
border:20px solid black;
background-color: #fff;
}