Online Preview https://jsrun.pro/AafKp/ First look at the effect: The first step is to realize the grid background: background-image: linear-gradient(0deg, transparent 24%, rgba(32, 255, 77, 0.1) 25%, rgba(32, 255, 77, 0.1) 26%, transparent 27%, transparent 74%, rgba(32, 255, 77, 0.1) 75%, rgba(32, 255, 77, 0.1) 76%, transparent 77%, transparent), linear-gradient(90deg, transparent 24%, rgba(32, 255, 77, 0.1) 25%, rgba(32, 255, 77, 0.1) 26%, transparent 27%, transparent 74%, rgba(32, 255, 77, 0.1) 75%, rgba(32, 255, 77, 0.1) 76%, transparent 77%, transparent); background-size: 3rem 3rem; background-position: -1rem -1rem; The second step realizes the scanning line and gradient background effects background: linear-gradient(180deg, rgba(0, 255, 51, 0) 50%, #00ff33 300%); border-bottom: 2px solid #00ff33; Four corner effects It is four squares of equal width and height, and you can set borders for each of them. Set up scanning animation @keyframes radar-beam { 0% { transform: translateY(-110%); } 100% { transform: translateY(120%); } } Full code: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>css3-scanner.html</title> <style> html, body { height: 100%; margin: 0; } .qr-scanner { background-image: linear-gradient(0deg, transparent 24%, rgba(32, 255, 77, 0.1) 25%, rgba(32, 255, 77, 0.1) 26%, transparent 27%, transparent 74%, rgba(32, 255, 77, 0.1) 75%, rgba(32, 255, 77, 0.1) 76%, transparent 77%, transparent), linear-gradient(90deg, transparent 24%, rgba(32, 255, 77, 0.1) 25%, rgba(32, 255, 77, 0.1) 26%, transparent 27%, transparent 74%, rgba(32, 255, 77, 0.1) 75%, rgba(32, 255, 77, 0.1) 76%, transparent 77%, transparent); background-size: 3rem 3rem; background-position: -1rem -1rem; width: 100%; height: 100%; position: relative; background-color: #111; } .qr-scanner .box { width: 75vw; height: 75vw; max-height: 75vh; max-width: 75vh; position: relative; left: 50%; top: 50%; transform: translate(-50%, -50%); overflow: hidden; border: 0.1rem solid rgba(0, 255, 51, 0.2); } .qr-scanner .line { height: calc(100% - 2px); width: 100%; background: linear-gradient(180deg, rgba(0, 255, 51, 0) 43%, #00ff33 211%); border-bottom: 3px solid #00ff33; transform: translateY(-100%); animation: radar-beam 2s infinite; animation-timing-function: cubic-bezier(0.53, 0, 0.43, 0.99); animation-delay: 1.4s; } .qr-scanner .box:after, .qr-scanner .box:before, .qr-scanner .angle:after, .qr-scanner .angle:before { content: ''; display: block; position: absolute; width: 3vw; height: 3vw; border: 0.2rem solid transparent; } .qr-scanner .box:after, .qr-scanner .box:before { top: 0; border-top-color: #00ff33; } .qr-scanner .angle:after, .qr-scanner .angle:before { bottom: 0; border-bottom-color: #00ff33; } .qr-scanner .box:before, .qr-scanner .angle:before { left: 0; border-left-color: #00ff33; } .qr-scanner .box:after, .qr-scanner .angle:after { right: 0; border-right-color: #00ff33; } @keyframes radar-beam { 0% { transform: translateY(-100%); } 100% { transform: translateY(0); } } </style> </head> <body> <div class="qr-scanner"> <div class="box"> <div class="line"></div> <div class="angle"></div> </div> </div> </body> </html> The above is the details of the example of using CSS3 to implement QR code scanning special effects. For more information about CSS3 QR code scanning special effects, please pay attention to other related articles on 123WORDPRESS.COM! |
<<: About input file control and beautification
>>: Detailed explanation of AWS free server application and network proxy setup tutorial
From the tomcat configuration file, we can see th...
1. What is the use of slow query? It can record a...
Business scenario: The visitor's visit status...
Preface As we all know, everything in Linux is a ...
Preface: To store multiple elements, arrays are t...
There are many differences between IE6 and IE7 in ...
MySQL needs to be upgraded to version 5.5.3 or ab...
HTML page jump: window.open(url, "", &q...
1.MySQL version [root@clq system]# mysql -v Welco...
I hope to align the title on the left and the dat...
I have found a lot of online resources on this pro...
Table of contents Overview Precautions 1. Usage 2...
If you want to change your host name, you can fol...
On web pages, we often encounter this situation: ...
Vue stores storage with Boolean values I encounte...