Ist es möglich? div "menu" und "submenu" müssen 50px groß sein. "top" und "bottom" müssen 60% und 40% sein. Die Behinde-the-Scene-Berechnung wäre 60% - 50px für "top".Div. Kombinieren Sie procentcent und feste Größe
Antwort
CSS mischt keine Einheiten, damit Sie 60% - 50px sagen - Um etwas wie diesen Effekt zu erzielen, müssten Sie auf JavaScript zurückgreifen, um die Größen zu berechnen.
Wenn Ihre divs direkt darin sind, müssen Sie nicht zu viel von einer Layout-Engine neu implementieren - beim Laden des Dokuments, erhalten Sie die Größe des Ansichtsfensters, dann berechnen, was 60% - 50px in Pixeln ist als # top Elementhöhe und ähnlich für #bottom.
Wie Sie fragen, ob Sie das tun können? Weil ja, können Sie
#menu, #submenu{
height: 50px;
}
#top{
height: 60%;
}
#bottom{
height: 40%;
}
Was passieren würde, beiden Menüs sind wären 50px, und dann wären die obere und die untere 60 und 40% der Seite nehmen. Höchstwahrscheinlich würden Sie Bildlaufleisten haben, weil die Seite 100px über 100% der Seite wäre, aber es ist sehr möglich.
Sie können Prozentsätze, Pixel und Ems mischen.
Obwohl oben und unten als der Code, den Sie geschrieben haben, 60 und 40 Prozent der Seite einnehmen würde. Aber das ist sehr gut möglich. –
Sie wissen, dass er das nicht meinte. Er will den verbleibenden Platz aus Kopf- und Fußzeile 3: 2 teilen. –
Buti-Oxa, das ist richtig! – dbd
Um es mit JavaScript zu lösen, müssen Sie berechnen, wenn das Fenster die Größe ändert. Nicht nur beim Laden von Dokumenten. Das ist meine letzte Option. Eher mit Rahmen gehen ... – dbd