For more exciting content, please visit https://github.com/abc-club/free-resources background Without further ado, can we use pure CSS to achieve the following effects: The answer is yes. This can be achieved with the help of css:placeholder-shown:valid:invalid pseudo-class and html5 input pattern attribute The current compatibility of the :placeholder-shown pseudo-class is as follows: :placeholder-show compatibility Directly on the code! ☺️ Source code https://jsbin.com/qenucaz/edit?html,css,output html: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width"> <title>JS Bin</title> </head> <body> <div class="input-fill-box"> <input class="input-fill" placeholder="Email" pattern="^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$" required> <a href="javascript:" class="clear">close</a> <label class="input-label">Email</label> </div> </body> </html> css: .input-fill{ width: 100%; margin: 0; font-size: 16px; line-height: 1.5; outline: none; padding: 20px 16px 6px; border: 1px solid transparent; background: #f5f5fa; border-radius:10px; transition: border-color .25s; } .input-fill:placeholder-shown::placeholder { color: transparent; } .input-fill-box { width: 50%; position: relative; } .input-label { position: absolute; left: 16px; top: 14px; pointer-events: none; color:#BEC1D9; padding: 0 2px; transform-origin: 0 0; pointer-events: none; transition: all .25s; } .input-fill:not(:placeholder-shown) ~ .input-label, .input-fill:focus ~ .input-label { transform: scale(0.75) translate(0px, -14px); } .input-fill:focus{ border: 2px solid #1d31aa; } .clear{ position:absolute; top:10px; right:-20px; display: none; transition: all .25s; } .input-fill::-ms-clear { display: none; } .input-fill:not(:placeholder-shown) + .clear { display: inline; } .input-fill:valid { border-color: green; box-shadow: inset 5px 0 0 green; } .input-fill:not(:placeholder-shown):invalid { border-color: red; box-shadow: inset 5px 0 0 red; } More For more exciting content, please visit https://github.com/abc-club/free-resources The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM. |
<<: The concept of MySQL tablespace fragmentation and solutions to related problems
>>: How to install docker under centos and remotely publish docker in springboot
I recently encountered a problem when doing IM, a...
Overview What is harbor? The English word means: ...
1. Introduction to MariaDB and MySQL 1. Introduct...
Table of contents 1. Keywords 2. Deconstruction 3...
We usually use float layout to solve the compatib...
1. In addition to the default port 8080, we try t...
1. Installation process MySQL version: 5.7.18 1. ...
Table of contents Object parameters using destruc...
Use JS to implement a random roll call system for...
I used to think that script could be placed anywh...
Drop-down menus are also very common in real life...
Preface Linux has corresponding open source tools...
Library Management Create a library create databa...
1. Overview The information_schema database is th...
1. The ENV instruction in the Dockerfile is used ...