Ich wollte ein Quadrat div von reiner CSS erstellen was es height
dynamisch ist und es ist width
Basis auf height
skaliert.
Wie wir unten in der Tabelle sehen können, ist die Höhe container
dynamisch basierend auf ihrem Inhalt. Die rote square
nehmen die volle Höhe der container
und die Breite sollte gleich height
sein.
Ich weiß, wir können maintain aspect ratio of a div base on its width, aber ich kann keinen Weg finden, wenn die height
dynamische ist.
Jede Hilfe wäre willkommen! Vielen Dank!
Beachten Sie, dass: Die Höhe ist dynamisch, so the solution with vh
hat nicht funktioniert und das Snipet ist nur ein Spielplatz.mit dynamischer Höhe
#container {
width: 400px;
padding: 20px;
border: solid 1px black;
position: relative;
}
.square {
position: absolute;
top: 0;
right: 0;
bottom: 0;
background-color: red;
width: 100px /*Hmm its just a dummy value*/
}
<div id="container">
<div class="content">
I'm a dynamic content
</div>
<div class="square"></div>
</div>
können Sie CSS die Funktion Calc verwenden. https://www.w3schools.com/cssref/func_calc.asp –
@LucasRosenberger: Ich weiß 'calc()', aber wie benutze ich es, Breite Basis auf Höhe zu berechnen? – Duannx
Entschuldigung missverstanden Ihre Frage. Ich denke, du musst js für diesen Anwendungsfall verwenden. –