aktualisiert werden soll ich ein ungeradees Reflow-Problem habe, in Chrome.Reflow Problem beim Ändern der Größe: div Größe
Wenn ich die Höhe des Browsers ändere, werden die zwei divs am oberen und unteren Rand des pinkfarbenen div nicht aktualisiert, es sei denn, ich mache eine hässliche Timeout-Problemumgehung, wo ich den Container verstecke und zeige mag diese Problemumgehung nicht. Dies funktioniert in FF und Safari, also ist es ein Chrome-Bug.
Eine wichtige Voraussetzung ist, dass die rosa Mitte div die Größe des übergeordneten div diktiert, weil es ein Video ist, und ich brauche es in voller Höhe zu zeigen, ohne die Breite angeben.
Gibt es eine Möglichkeit, dieses Problem zu beheben, ohne hässliche JS Abhilfen zu tun?
HTML:
<div class="video-wrapper">
<div class="header"><div class="left"></div><div class="right"></div></div>
<div class="video">
<span>1</span>
<video></video>
</div>
<div class="footer"><div class="left"></div><div class="right"></div></div>
</div>
CSS:
.video-wrapper{
display: inline-block;
height: 100%;
}
.video-wrapper .header,
.video-wrapper .footer{
width: 100%;
height: 8px;
border: 1px solid;
}
.video-wrapper .video{
height: calc(100% - 16px);
}
.video-wrapper video {
height: 100%;
border: 1px solid pink;
}
.video-wrapper span{
position: absolute;
top:20px;
left:0;
}
Hier ist eine JSFiddle mit der Wiedergabe: https://jsfiddle.net/7o27qkpx/3/
Dies funktioniert, weil Sie Breite 100% verwendet, während ich keine Breite verwenden kann, ich das Video Höhe will die Breite steuern, indem Sie das entsprechende Seitenverhältnis zu halten. – DaJackal