Ich suche ein Layout für meine Site zu erstellen, wo eine Sidebar mit einer Breite von 30% auf der rechten Seite des Viewports fixiert ist (der Inhalt befindet sich links davon)) bis das Browserfenster eine bestimmte Breite erreicht, an welcher Stelle ich möchte, dass der Inhalt und die Seitenleiste zentriert sind und nicht mehr mit dem Browserfenster wachsen (da es bei extrem großen Breiten schwer zu lesen ist). Hier ist eine Idee des HTML verwendet:Zentrieren einer Position: fixed div Wenn Viewport eine bestimmte Breite erreicht
<body>
<div id=sidebar>sidebar content</div>
<div id=content>articles, images, etc</div>
Und hier einige der grundlegenden HTML verwendet werden, es zu formatieren:
#sidebar {
width: 30%;
position: fixed;
right: 0;
top: 0;
background-color: gray;
}
#content {
width: 70%;
margin-right: 30%;
max-width: 49em;
}
An diesem Punkt, wenn der Inhalt wird breiter als 49em, es bleibt auf der rechten Seite der Seite haften und erzeugt eine immer größer werdende Lücke zwischen ihm und der festen Seitenleiste. Was ich möchte ist, dass es eine maximale Breite von 49em erreicht, die Seitenleiste 21em erreicht (also immer noch 70:30) und fixiert bleibt, aber diese ganze Breite von 70em im Ansichtsfenster zentriert hat.
Ich möchte auch die Hintergrundfarbe der Seitenleiste den gesamten Weg vom Rand des Inhalts auf der rechten Seite des Bildschirms (dh ein enthalten div, dass sowohl die Seitenleiste und Inhalt mit einer maximalen Breite von zentriert 70em funktioniert nicht, da der Hintergrund der Seitenleiste nur an den Rand des enthaltenden Bereichs anstelle des Viewports gehen würde. Das ist nicht so wichtig, weil es in Ordnung sein könnte, dem Körperelement einen strukturierten Hintergrund zu geben, damit es so aussieht, als ob die Seite auf einer strukturierten Oberfläche "sitzt" (nicht ideal, aber gut). Ich war nur nicht in der Lage, die Seitenleiste und den Inhalt zu zentrieren, während die feste Positionierung der Seitenleiste beibehalten wurde.
Danke!
Update: hier ist ein sehr grobes Schema, was ich suche:
| A | B | C | D |
B ist der Inhaltsbereich mit einer maximalen Breite von 49em. C ist die Seitenleiste mit der maximalen Breite von 21em UND sie muss fest positioniert sein. A und D wären die Ränder (jede Hälfte der Differenz zwischen der Breite des Darstellungsbereichs und 70em). Hintergrund von D muss die gleiche Farbe (grau) wie die Seitenleiste haben. Der Hintergrund von A muss weiß sein.
hinzufügen Können Sie Ihre letzte Forderung reprhase, ich verstehe es nicht (über die strukturierter Hintergrund). Eine kleine schematische Zeichnung wäre auch hilfreich. –
Aktualisiert, hoffentlich ist es ein bisschen klarer. – lemonmade