En lugar de etiquetar cada campo de una forma, a veces es preferible (desde el punto de vista del diseño) tener texto de marcador de posición en cada campo. Por ejemplo, en lugar de tener presente:Texto de marcador de posición en un campo de entrada con CSS solamente (sin JavaScript)
----------------------------------
Full Name: | |
----------------------------------
que tiene esto:
----------------------------------
| Full Name |
----------------------------------
El cuando se hace clic en el campo, el texto desaparece y se puede escribir lo que quieras. Si se salta el campo sin ingresar ningún texto, el marcador de posición vuelve a aparecer.
He visto esto hecho de muchas maneras, pero todos los métodos implican JavaScript. Por ejemplo, Twitter hace un trabajo decente en su signup page, pero si Javascript está deshabilitado, terminas escribiendo tu nombre sobre la palabra 'Nombre completo'.
Estoy buscando un método de solo CSS que funcionaría incluso con JavaScript deshabilitado. La única solución potencial que se me ocurre es establecer el fondo de la etiqueta <input>
en una imagen del texto deseado y luego usar la pseudoclase input:focus
para borrar la imagen de fondo cuando alguien hace clic en el cuadro de texto. Esto parece funcionar, pero sería bueno no tener que usar imágenes.
¿Alguien sabe de un buen recurso sobre cómo hacer esto?
Sería bueno si usted explicó lo que el atributo de marcador de posición para los que no están bien informados. Como estuve hace un minuto. No creo que CSS más antiguo (era anterior a HTML5/CSS3) pueda hacer esto ... – TheZ
Creo que estás introduciendo CSS en áreas en las que aún no puede realizar las tareas que estás esperando. Hay ... * posibilidades * con 'pseudo-elementos' :: before' y ':: after', pero no son confiables con los elementos' input', y cualquier navegador que implemente pseudo-elementos también implementará 'placeholder' atributo. –
Por "marcador de posición" supongo que se refiere a un campo de texto que muestra texto de ejemplo (por ejemplo, "Su nombre aquí") hasta que el usuario lo seleccione. – username