webkit中古怪的百分比解释

时间:2012-02-16 23:52:27

标签: css google-chrome webkit padding percentage

采用响应式设计,逐渐失去头发和睡眠。这个似乎是一个真正的webkit bug:http://jsfiddle.net/TAvec/

问题非常清楚 - webkit将20%填充解释为父级内容框的20%,而firefox和opera将其解释为父级总框的20%(包括父级填充)。

任何想法如何在保持绝对定位的同时解决这个问题?

1 个答案:

答案 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;
}

这里有效:http://jsfiddle.net/KYyR7/3/