Причудливая процентная интерпретация в Webkit
-
26-10-2019 - |
Вопрос
Работа над отзывчивым дизайном и постепенно теряя волосы и сон. Это кажется подлинной ошибкой Webkit: http://jsfiddle.net/tavec/
Проблема довольно ясна - Webkit интерпретирует 20% накладную как 20% от коробки для родителей, в то время как Firefox и Opera интерпретируют его как 20% от общей коробки родителей (включая заполнение родителей).
Есть идеи, как обойти это, сохраняя абсолютное позиционирование?
Решение
Вы можете обернуть содержание вашего <aside>
в div
и назначьте накладку этим, а не <aside>
. Анкет Таким образом, вы можете убедиться, что прокладка как в FF, так и в Chrom <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/
Не связан с StackOverflow