レスポンシブデザインに取り組んでおり、徐々に髪と睡眠を失っています。これは本物のWebkitバグのようです: http://jsfiddle.net/TAvec/
問題は非常に明白です。webkitは20%のパディングを親のコンテンツボックスの20%として解釈しますが、FirefoxとOperaはそれを親の合計ボックス(親のパディングを含む)の20%として解釈します。
絶対的なポジショニングを維持しながら、これを回避する方法はありますか?
レスポンシブデザインに取り組んでおり、徐々に髪と睡眠を失っています。これは本物のWebkitバグのようです: http://jsfiddle.net/TAvec/
問題は非常に明白です。webkitは20%のパディングを親のコンテンツボックスの20%として解釈しますが、FirefoxとOperaはそれを親の合計ボックス(親のパディングを含む)の20%として解釈します。
絶対的なポジショニングを維持しながら、これを回避する方法はありますか?
<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/