Heim Web-Frontend CSS-Tutorial Ausführliche Erklärung zur Implementierung mehrerer Rahmen in CSS3

Ausführliche Erklärung zur Implementierung mehrerer Rahmen in CSS3

Mar 09, 2017 pm 05:36 PM

Der Box-Shadow von CSS3 ist wirklich leistungsstark, um mehrere Ränder zu erstellen. Dies ist auch der Schwerpunkt der detaillierten Erläuterung der CSS3-Methode zur Implementierung mehrerer Ränder. Aber werfen wir vorher einen Blick auf die traditionelle Methode mit besserer Kompatibilität:

Methode 1: p-Verschachtelung, um mehrere Ränder zu erreichen.

Rendering:
Ausführliche Erklärung zur Implementierung mehrerer Rahmen in CSS3

HTML-Code

<p id="outer">
    <p id="inner">p嵌套实现多重边框</p>
</p>
Nach dem Login kopieren


CSS-Code

#outer {   
    width: 100px;   
    height: 100px;   
    background-color: bisque;   
    border: 10px solid brown;   
    position: relative;   
}   

#inner {   
    width: 84px;   
    height: 84px;   
    border: 8px solid blue;   
}   
/*#outer,
#inner {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}*/
Nach dem Login kopieren


Nachteile: Es ist möglicherweise nicht möglich, die Struktur zu ändern, oder die Kosten für die Änderung der HTML-Struktur sind hoch, wenn mehrere PS mit abgerundeten Ecken festgelegt werden. Die Ränder passen nicht perfekt. Abgerundete Renderings mit mehreren Rändern:
Ausführliche Erklärung zur Implementierung mehrerer Rahmen in CSS3

Methode 2: Verwenden Sie Umriss+Umriss-Offset, um mehrere Ränder zu erzielen.
Wenn wir nur zwei Rahmenebenen zeichnen müssen, können wir auch Umrisse verwenden. Der Umriss ist eine Ebene außerhalb des Randes, was dem Randprinzip entspricht. Durch Festlegen des Umrissstils können Sie eine weitere Rahmenebene außerhalb des Rahmens festlegen.
Es ist jedoch zu beachten, dass sich der durch das Umrissattribut festgelegte Rahmen mit der Änderung des Rahmenstils des internen Elements nicht ändert. Mit anderen Worten: Wenn der Elementrand abgerundete Ecken hat, ist der äußerste Rand, der durch Umriss gezeichnet wird, immer noch rechteckig. Dies ist ein Mangel bei der Umrisszeichnung von Rändern.
Rendering:
Ausführliche Erklärung zur Implementierung mehrerer Rahmen in CSS3

HTML-Code

<p id="outline">outlie实现多重边框</p>
Nach dem Login kopieren


CSS-Code

#outline {   
    width: 84px;   
    height: 84px;   
    border: 8px solid blue;   
    /*-webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;*/
    outline: 10px solid brown;   
    outline-offset: 0px;   
    /*border和outline之间的距离*/
    margin: 20px;   
    /*因为outline不影响布局,使用margin给边框腾位置*/
}
Nach dem Login kopieren


Vorteile: Es ähnelt einem Rahmen und kann auf verschiedene Linientypen eingestellt werden, z. B. gepunktete Linien und durchgezogene Linien.

Nachteile: Der Umriss hat keinen Einfluss auf das Layout. Sie müssen den Rand verwenden, um Platz für den Rand zu schaffen. um zu verhindern, dass es von anderen Elementen verdeckt wird. Wenn der Container selbst abgerundete Ecken hat, kann der Strich nicht vollständig an die abgerundeten Ecken angepasst werden. Die Darstellung erfolgt wie folgt:
Ausführliche Erklärung zur Implementierung mehrerer Rahmen in CSS3

Methode 3: Verwenden Sie die Box-Shadow-Außenprojektion, um mehrere zu erreichen Grenzen.
Das Box-Shadow-Attribut kann den Schatten für das Box-Modell festlegen. Tatsächlich hat es aber auch die Funktion, Grenzen zu setzen.
Box-Shadow kann fünf Parameter übergeben. Die ersten beiden Parameter repräsentieren den Versatz der Projektion, der dritte Parameter repräsentiert den Unschärfegrad der Projektion, der vierte Parameter repräsentiert die Erweiterung der Projektion und der letzte Parameter repräsentiert die Farbe der Projektion. Allerdings verwenden wir den vierten Parameter hier selten, um die Projektion zu erweitern. Durch Festlegen eines geeigneteren Werts kann der Effekt des Randes simuliert werden.
In ähnlicher Weise kann das Box-Shadow-Attribut eine Liste mehrerer Schatten übergeben, getrennt durch ",". Solange wir also eine Schattenliste definieren und den Wert ihres Erweiterungsparameters schrittweise erhöhen, können wir den Effekt mehrerer Grenzen zeichnen.
Rendering:
Ausführliche Erklärung zur Implementierung mehrerer Rahmen in CSS3

HTML-Code

<p id="boxShadow">boxshadow实现多重边框(外投影)</p>
Nach dem Login kopieren


CSS-Code

#boxShadow {   
    margin: 40px;   
    /*因为box-shadow不影响布局,使用margin给边框腾出位置*/
    width: 84px;   
    height: 84px;   
    border: 8px solid blue;   
    -webkit-border-radius: 5px;   
    -moz-border-radius: 5px;   
    border-radius: 5px;   
    -webkit-box-shadow: 0 0 0 10px brown;   
    box-shadow: 0 0 0 10px brown;   
    /*参数分别为:水平偏移量、垂直偏移量、模糊距离、向外扩展距离和投影颜色*/
}
Nach dem Login kopieren


Vorteile: Mehrere abgerundete Ecken werden gleichzeitig perfekt aneinander ausgerichtet, Sie können auch eine Liste erhalten und mehrere Projektionen (d. h. Ränder) gleichzeitig festlegen. Sein Erweiterungseffekt basiert auf der Form des Elements selbst. Wenn das Element ein Rechteck ist, wird es zu einem größeren Rechteck erweitert. Wenn das Element abgerundete Ecken hat, wird es auch zu abgerundeten Ecken erweitert.

Nachteile: CSS3-Attribute haben eine schlechte Kompatibilität; Box-Shadow hat keinen Einfluss auf das Layout. Wenn die relative Position dieses Elements und anderer Elemente wichtig ist, müssen Sie Ränder und andere Methoden verwenden, um zusätzlichen Platz für diese zu schaffen „Grenze“ schafft Platz, um zu verhindern, dass er von anderen Elementen verdeckt wird.

Hinweis: Die Verwendung von Inline-Schatten (d. h. der hinzugefügte Box-Shadow-Parameter ist eingefügt, der Standardwert ist äußerer Schatten, wenn er nicht festgelegt ist) scheint eine bessere Wahl zu sein. Da Inline-Schlagschatten es ermöglichen, dass der Schlagschatten innerhalb des Elements erscheint, ist es einfacher, den Abstand so einzustellen, dass Platz für mehrere Ränder innerhalb des Elements geschaffen wird.

Methode 4: Verwenden Sie die Box-Shadow-Innenprojektion, um mehrere Ränder zu erzielen. (Empfohlen)

Rendering:
Ausführliche Erklärung zur Implementierung mehrerer Rahmen in CSS3

HTML-Code

<p id="moreboxShadow">boxshadow实现多重边框(内投影)</p>
Nach dem Login kopieren


CSS-Code

/*使用box-shadow一次性设置多个边框,并且使用内嵌投影*/
#moreboxShadow {   
    width: 120px;   
    height: 120px;   
    border: 8px solid blue;   
    /*注意:向外扩张的距离要每次累加;内嵌投影即添加参数为inset,该参数可选,当不设置时即为外投影*/
    -webkit-box-shadow: inset 0 0 0 10px brown, inset 0 0 0 20px yellow, inset 0 0 0 30px green;   
    box-shadow: inset 0 0 0 10px brown, inset 0 0 0 20px yellow, inset 0 0 0 30px green;   
    padding: 30px;   
    /*设置内边距,为box-shadow添加的添加的边框疼位置,这样就不会影响元素之间的位置*/
}
Nach dem Login kopieren


Vorteile: Durch die Inline-Schattierung erscheint der Schatten innerhalb des Elements, und das Festlegen der Polsterung schafft Platz für mehrere Ränder innerhalb des Elements, was die Handhabung erleichtert.

Nachteile: CSS3-Attribute, schlechte Kompatibilität

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung zur Implementierung mehrerer Rahmen in CSS3. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Arbeiten mit GraphQL Caching Arbeiten mit GraphQL Caching Mar 19, 2025 am 09:36 AM

Wenn Sie kürzlich mit GraphQL gearbeitet oder seine Vor- und Nachteile überprüft haben, haben Sie zweifellos Dinge wie "GraphQL nicht unterstützen Caching" oder gehört

Machen Sie Ihren ersten Seltsamen -Sufle -Übergang Machen Sie Ihren ersten Seltsamen -Sufle -Übergang Mar 15, 2025 am 11:08 AM

Die Sufelte Transition -API bietet eine Möglichkeit, Komponenten zu beleben, wenn sie das Dokument eingeben oder verlassen, einschließlich benutzerdefinierter Svelte -Übergänge.

Show, Don ' Tell Show, Don ' Tell Mar 16, 2025 am 11:49 AM

Wie viel Zeit damit, die Inhaltspräsentation für Ihre Websites zu entwerfen? Wenn Sie einen neuen Blog -Beitrag schreiben oder eine neue Seite erstellen, denken Sie darüber nach

Aufbau einer Ethereum -App mit Redwood.js und Fauna Aufbau einer Ethereum -App mit Redwood.js und Fauna Mar 28, 2025 am 09:18 AM

Mit dem jüngsten Aufstieg von Bitcoins Preis über 20.000 USD und kürzlich von 30.000, dachte ich, es lohnt

Was zum Teufel haben NPM -Befehle? Was zum Teufel haben NPM -Befehle? Mar 15, 2025 am 11:36 AM

NPM-Befehle führen verschiedene Aufgaben für Sie aus, entweder als einmalige oder als kontinuierlich ausgeführter Vorgang für Dinge wie das Starten eines Servers oder das Kompilieren von Code.

Wie verwenden Sie CSS, um Texteffekte wie Textschatten und Gradienten zu erstellen? Wie verwenden Sie CSS, um Texteffekte wie Textschatten und Gradienten zu erstellen? Mar 14, 2025 am 11:10 AM

In dem Artikel werden CSS für Texteffekte wie Schatten und Gradienten verwendet, diese für die Leistung optimiert und die Benutzererfahrung verbessert. Es listet auch Ressourcen für Anfänger auf (159 Zeichen)

Erstellen Sie Ihr eigenes Bragdoc mit ELEITY Erstellen Sie Ihr eigenes Bragdoc mit ELEITY Mar 18, 2025 am 11:23 AM

Unabhängig davon, in welcher Phase Sie als Entwickler Sie befinden, haben die Aufgaben, die wir erledigen - ob groß oder klein - einen enormen Einfluss auf unser persönliches und berufliches Wachstum.

Verwenden wir (x, x, x, x), um über Spezifität zu sprechen Verwenden wir (x, x, x, x), um über Spezifität zu sprechen Mar 24, 2025 am 10:37 AM

Ich habe mich neulich mit Eric Meyer unterhalten und erinnerte mich an eine Eric Meyer -Geschichte aus meinen prägenden Jahren. Ich habe einen Blog -Beitrag über CSS -Spezifität geschrieben, und

See all articles