Dies ist ein wenig schwierig zu erklären, aber: Ich möchte eine ansprechende Höhe div (height: 100%
), der die Breite proportional zur Höhe (nicht umgekehrt) skaliert.CSS: div Breite proportional zur Höhe macht
Ich kenne this method mit einem padding-top
Hack, um die Höhe proportional zur Breite zu machen, aber ich brauche es anders herum zu arbeiten. Abgesehen davon, bin ich nicht besonders scharf auf die zusätzliche Anforderung von absolut positionierten Elementen für den Inhalt dieser Methode, also merke ich, dass ich hier durchaus nach dem Mond fragen kann.
sichtbar zu machen, hier zu helfen, ist ein Bild:
... und hier ist ein jsFiddle, so ziemlich die gleiche Sache darstellt.
Es ist erwähnenswert, dass ich bereits die :before
und :after
pseudo-Elemente vertikal ausrichten, den Inhalt der Box I proportional skalieren möge verwenden.
Ich würde wirklich, wirklich genießen nicht zu jQuery zurückkehren müssen, nur weil es eine inhärente Voraussetzung für Resize-Handler sein wird und generell rundum Debuggen ... aber wenn das ist meine einzige Wahl, dann fiat.
Ich fürchte, dass Sie Javascript dafür verwenden müssen ... –
Es gibt keinen anderen Weg als den Trick mit 'padding' oder' margin' http://jsfiddle.net/V2dyZ/3/. Irgendwie müssen wir eine Beziehung zwischen der Breite und der Höhe finden, so dass wir die Höhe entsprechend einstellen können, aber normalerweise ist die 'Breite' nur relativ zur 'Breite' des Elternteils, die' Höhe' ist nur relativ zu der 'Höhe' des Elternteils ', es gibt nur eine Besonderheit an 'margin' und 'padding', dass ihr Wert in ** prozentual ** (relativer Wert) auf der 'Breite' des Elternteils basiert, unabhängig davon, ob 'padding-top', 'padding' gesetzt ist -bottom' oder 'margin-top',' margin-bottom', also haben wir eine Lösung (nur?) –
[verwandt] (http://stackoverflow.com/questions/20456694/grid-of-responsive-squares/ 29670456 # 29670456) – jbutler483