Als der Standard-Box-Sizing-Modus alles, was es bisher getan hat, ärgert mich. Jetzt, wo ich denke, dass ich einen guten Zweck dafür gefunden habe, kann ich es nicht zum Ausdruck bringen. Prüfen Sie esVerwendung der Inhalt-Box, um Höhe auszugleichen
#container {
width:200px;
height:200px;
position:relative;
}
#textbar {
position:absolute;
left:0; right:0; bottom:0;
height:20px;
background-color:rgba(0,255,0,0.5);
}
#filler {
height:100%;
margin-bottom:20px;
box-sizing:content-box;
background-color:rgba(255,0,0,0.5);
}
<div id="container">
<div id="filler"></div>
<div id="textbar">here is text</div>
</div>
Die Idee ist, dass die textbar 20px vom Boden des Behälters nehmen sollte und der Füllstoff sollte den Rest. Ich denke, da content-box so beschrieben wird, dass sie margin und padding in ihrer Gesamtbreite/-höhe enthält, subtrahiert sie diese 20px, die ich für die Margin von 100% gegeben habe und effektiv 100% -20px ist, aber kein Glück, sie deckt immer noch die gesamten Container und unterlegt die Textleiste.
Warum ist das? Wie könnte ich das sonst noch machen?
PS! Ich möchte calc() nicht aus Kompatibilitätsgründen verwenden.
Werfen Sie einen Blick auf die Spezifikation für die Anzeige: flex :) – gdgr
kein flex, ich brauche meine IE4-Benutzer! – user81993
IE4 ?! Sie machen wohl Witze. – j08691