Erstellen eines CSS3-Box-Shadows auf allen Seiten außer einer: Eine umfassende Lösung
Problem: Entwerfen eines Tabbed In der Navigationsleiste müssen Sie die geöffnete Registerkarte mit einem CSS3-Boxschatten hervorheben. Sie möchten jedoch den unteren Schatten des geöffneten Tabs ausschließen, um zu vermeiden, dass ein schattiger Inhaltsbereich verdeckt wird.
Ansatz:
Um dies zu erreichen, können wir eine Kombination verwenden von Positionierung und Box-Shadow Eigenschaften.
Implementierung:
<code class="css">#content_over_shadow { position: relative; /* Positions the element relative to its parent */ background:#fff; /* Sets a solid background to prevent transparency */ }</code>
<code class="css">#content { box-shadow: 0 0 8px 2px #888; /* Shadow for the bottom line */ }</code>
<code class="css">#nav li a { box-shadow: 0 0 8px 2px #888; /* Shadow for each tab */ background:#FFF; /* Ensure a solid background for shadow visibility */ }</code>
Erklärung:
Die relative Positionierung von #content_over_shadow ermöglicht es, dass es das schattierte #content div überlappt. Indem wir einen einfarbigen Hintergrund festlegen, blockieren wir die Transparenz von #content, sodass der Schatten sichtbar ist.
Durch das Hinzufügen von Box-Shadow-Eigenschaften zu jeder Registerkarte wird die geöffnete Registerkarte hervorgehoben, während die Schatten auf allen anderen Registerkarten beibehalten werden. Sie können den Versatz, die Ausbreitung und die Farbe der Boxschatten anpassen, um das Erscheinungsbild anzupassen.
Das obige ist der detaillierte Inhalt vonWie erstelle ich einen CSS3-Kastenschatten auf allen Seiten eines Elements außer der Unterseite?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!