Cet article vous présente une introduction aux étiquettes flottantes en CSS (avec des exemples). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.
Dans les projets Web, il existe un module très important qui est le module de connexion/inscription. La partie principale de ce module est un formulaire. Ce formulaire contient deux groupes de saisie importants (nom d'utilisateur/mot de passe). Le groupe contient une étiquette et une entrée, et il existe différents plans de disposition pour étiquette + entrée. Différents concepteurs ont des styles de conception différents, et différents ingénieurs front-end ont des méthodes d'implémentation différentes. Par comparaison, nous avons constaté que la solution actuelle se concentre à la fois sur l’esthétique et la performance.
Alors, quels sont les plans de mise en page pour l'étiquette et l'entrée ?
Le plan de mise en page de l'étiquette+de l'entrée
sera l'étiquette et l'entrée (invite de mot-clé palcholder) sont divisées en parties supérieure et inférieure ; // Utilisé il y a longtemps, utilisez maintenant occasionnellement
pour diviser l'étiquette et l'entrée (invite de mot-clé palcholder) en parties gauche et droite (l'étiquette occupe une certaine largeur et la police de l'étiquette adopte trois solutions courantes : alignée à gauche, alignée à droite et alignée aux deux extrémités) ; // Cas : connexion Weibo, page de connexion jd wap ; , etc.
L'étiquette et l'entrée (invite de mot-clé palcholder) sont toujours divisées en parties gauche et droite. La différence est que la police dans l'étiquette est remplacée par une icône // ; Cas : page de connexion de la communauté de défauts de segment, etc.
Contient uniquement une entrée (indice de mot-clé palcholder) ; // Cas : page de connexion de la communauté de développement Mobile Taobao, page de connexion de la communauté de développement Nuggets, etc.
label vs placholder
label : Décrit le rôle de l'élément de formulaire, utilisé pour spécifier que l'entrée est le nom du champ unique placeholder : Il invite l'utilisateur à saisir le format du contenu Les deux semblent similaires, mais leurs responsabilités sont différentes. De nombreux étudiants ont commis de grosses erreurs ici. Si vous avez besoin d'en savoir plus à leur sujet, veuillez vous référer à MDNÉtiquette animée (no-js)
Page pour l'interaction de l'utilisateur à la Dans le même temps, l'interaction de l'utilisateur avec l'animation est souvent plus facile à impressionner les utilisateurs. Ce qui suit présente une étiquette flottante implémentée à l'aide de pseudo-classes. Code HTML :<div class="input-group"> <input type="text" id="userName" placeholder="用户名/邮箱/卡号"> <label for="userName">账号</label> </div>
.input-group { position: relative; margin: 100px 20px; font-size: 16px; } .input-group>input { display: block; box-sizing: border-box; width: 100%; padding: 16px; font-size: 16px; line-height: 1.0; border: none; border-bottom: 1px solid #cdcdcd; border-radius: 0.4em; transition: box-shadow 0.3s; } .input-group input::placeholder { color: #cdcdcd; } .input-group>input:focus { outline: none; box-shadow: 0.2em 0.8em 1.6em #cdcdcd; } .input-group>label { position: absolute; bottom: 50%; left: 0; z-index: -1; visibility: hidden; color: #050505; opacity: 0; }
.input-group>label { ... -webkit-transform-origin: 0 0; transform-origin: 0 0; -webkit-transform: translate3d(0, 0, 0) scale(0); transform: translate3d(0, 0, 0) scale(0); -webkit-transition: opacity 0.3s, visibility 0.3s, transform 0.3s, z-index 0.3s; transition: opacity 0.3s, visibility 0.3s, transform 0.3s, z-index 0.3s; } .input-group>input:focus ~ label { z-index: 1; visibility: visible; opacity: 1; -webkit-transform: translate3d(0, -36px, 0) scale(1); transform: translate3d(0, -36px, 0) scale(1); }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!