Ich habe ein einfaches Layout gemacht, um dies zu demonstrieren.
Zuerst werde ich 4 Divs setzen, die erste, um die Teilergebnisse zu zeigen, und die letzte, um das Endergebnis zu sehen. Das Markup ist einfach:
<div class="box mesh1"></div>
<div class="box mesh2"></div>
<div class="box mesh3"></div>
<div class="box mesh"></div>
hier Box ist nur für Dimensionen, mesh1 bis 3 die Teilergebnisse halten, in Mesh wir es alle zusammen.
Die CSS ist:
.box {
width: 400px;
height: 150px;
position: relative;
display: inline-block;
}
.mesh1, .mesh {
background:
-webkit-linear-gradient(5deg, rgba(0, 250, 0, 0.5), rgba(0, 100, 0, 0.5))
}
.mesh:after, .mesh:before {
content: "";
position: absolute;
left: 0px;
bottom: 0px;
top: 0px;
right: 0px;
}
.mesh2, .mesh:after {
background: -webkit-radial-gradient(center center, circle cover, rgba(250, 0, 0, 0.6) 0%, rgba(120, 0, 10, 0.5) 100%);}
.mesh3, .mesh:before {
background: -webkit-radial-gradient(10% 10%, ellipse cover, rgba(0, 0, 250, 0.6) 0%, white 100%);}
ich in der mesh1 Klasse gebe einen Hintergrund linear, inclinated 5 Grad und Farben in rgba Format Angabe für Transparenz zu ermöglichen.
Dann, um mehr Farbverläufe überlagern zu können, spezifiziere ich Pseudoelemente wie vorher und nachher, die dieselben Layouteigenschaften teilen.
Zu dem After-Element gebe ich einen kreisförmigen Gradienten, geteilt mit dem Mesh2 Zu dem vor Element gebe ich einen elliptischen Gradienten, außerhalb der Mitte. Alle von ihnen können rgba sein.
Am Ende finden Sie in dem Netz das Ergebnis von überlappenden alles div
(Ich habe überall die Webkit-Notation verwendet, um es kurz zu machen)
Ich würde nicht sagen, dass es viel künstlerisch ist, aber ich lasse diesen Teil zu Ihnen :-)
fiddle here
+1 für die hilfreiche Bild oben –