Wie maskiere ich einen Abschnitt eines Divs, um dahinter zu sehen?

8

Ich suche nach einer Möglichkeit, einen Teil eines Divs auszublenden, so dass das, was dahinter ist, sichtbar ist.

Wenn ich mir mein Beispiel anschaue, möchte ich den schwarzen Kreis durch eine Art Maske ersetzen, so dass er beim Heruntergleiten den dahinter liegenden Text (oder das Hintergrundbild) dahinter sehen kann.

jsfiddle

%Vor%     
setheid 31.08.2015, 00:50
quelle

3 Antworten

2

Hier ist, was ich heute nachmittag herausgefunden habe:

%Vor%

Sieht aus, als ob es auch bei allen aktuellen Browserversionen funktioniert (ich habe nur Chrome und Safari getestet).

jsfiddle

    
setheid 31.08.2015, 04:12
quelle
2

Wenn Sie nur CSS verwenden möchten, gibt es eine wirklich kreative Lösung für Ihr Problem. Sie trennen den horizontalen Teil, wo das "schwarze Loch" von den anderen ist, in drei Teile: links vom kreisförmigen Loch, das Loch und den rechten Teil. In den Lochteil legen Sie eigentlich ein div ohne Hintergrund und eine Umrandung mit passendem Umrandungsradius. Da Sie bereits alle Breiten- und Höhenmessungen vorgenommen haben, sollte diese weitere Trennung kein Problem darstellen.

Bestes Beispiel dafür, wie der Wal ist: Ссылка

Dies gilt für chomre 4.0+, IE 9+, Firefox 3+, Safari 3.1 und 5 sowie Opera 10.5 Stellen Sie sicher, dass Sie auch die entsprechenden Präfixe (-moz- und -webkit -)

angeben     
Rea 31.08.2015 01:28
quelle
0

Ich glaube nicht, dass es einen Weg gibt, das mit CSS zu tun

Und ich bin mir ziemlich sicher, dass es dafür keine browserübergreifende css-Lösung gibt.

Ich denke, dass Ihre beste Option <canvas> html element + js sein könnte. Ich bin nicht dabei, aber es kann sicherlich gemacht werden ..

Hier ist Mozilla MDN Dokumentation für Canvas .. Ссылка

    
Joaquín O 31.08.2015 01:06
quelle

Tags und Links