Ich versuche, diesen Effekt mit css3 zu erreichen:CSS3 box-shadow für überlappende artig divs
Der HTML-Code ist sauber etwas wie
...
<header>
...
</header>
<div id="wrapper">
...
</div>
...
und die CSS ist , im Moment, etwas wie
header {
display: block;
width: 900px;
height: 230px;
margin: 0 auto;
border: 1px solid #211C18;
...
box-shadow: 2px 4px 20px #005377;
-moz-box-shadow: 2px 4px 20px #005377;
-webkit-box-shadow: 2px 4px 20px #005377;
}
#wrapper {
width: 820px;
margin: 0 auto;
...
border-right: 1px solid #211C18;
border-bottom: 1px solid #211C18;
border-left: 1px solid #211C18;
...
box-shadow: 2px 4px 20px #005377;
-moz-box-shadow: 2px 4px 20px #005377;
-webkit-box-shadow: 2px 4px 20px #005377;
}
Um das gewünschte Ergebnis zu erhalten, ich müssen:
- die oberen Schatten des Haupt div (kein Problem damit) ausblenden
- Header des unteren Schatten vor dem Haupt div bringen, und nicht hinter, wie es jetzt ist.
Ich habe viel über Box-Schatten gelesen, und ich habe keine Lösung gefunden, die mir wirklich gefällt ... Irgendeine Idee?
Vielen Dank, Ihre Antwort war sehr detailliert und nützlich ... Aber ... was ist, wenn ich eine Fußzeile habe und #main Höhe nicht behoben ist (es kann A LOT je nach Inhalt der Seite ändern)? Hinzufügen von absoluten Positionen zum Layout wird es nach oben verschieben ... – dolma33
Wenn Ihre 'header' feste Höhe ist, dann können Sie einfach die CSS herum und machen Sie die Header-Position absolut und haben sie die Position relativ' # main' überlappen. – Pat
Oh ... sieht aus, dass das Problem ist, dass der Wrap zusammenbricht, so dass es nicht für alle enthaltenen divs Höhe überspannt, wie in diesem jsfiddle http://jsfiddle.net/pbx4L/1/ [Vielen Dank Pat, um mich dazu zu bringen, mich kennenzulernen] Ich habe mich immer mit kollabierenden Eltern beschäftigt, während ich Floats benutzt habe, aber in diesem Fall weiß ich nicht, wie ich das Problem lösen soll ... – dolma33