Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

220
Vistas
¿Mostrar imagen al comienzo de TextField material-ui y no a ningún lado?

¿Cómo mostraría una imagen dentro de un TextField como si fuera parte del texto, como un InputAdornment, pero no a ambos lados, sino al principio del TextField? Un ejemplo de lo que estoy tratando de lograr.

y no al lado como un icono al lado del área de entrada de texto que es lo que hace InputAdornment (por ejemplo, no como un icono de búsqueda al lado de un campo de consulta)?

La única forma en que puedo pensar es simplemente colocar la imagen sobre TextField, pero descubrí que esto no hacía obvio que la imagen es parte de la entrada.

Revisé la documentación, pero no parece haber una forma obvia de lograr esto.

¡Muchas gracias de antemano!

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Los comentarios sobre su pregunta son parcialmente correctos. No puede editar razonablemente el <input> real sin perder la funcionalidad, pero el componente Textfield no es solo un <input> y está compuesto por múltiples elementos que pueden contener/mostrar una imagen.

Dado que no se especificó ninguna versión de MUI, asumiré que está utilizando la última. (Esto también se puede lograr con MUI 4 TextField utilizando la antigua función makeStyles ).

Puede cambiar la ubicación de TextField startAdornment con algunos cambios en el CSS subyacente. Esencialmente, puede cambiar la flex-direction predeterminada de row a column y luego ajustar las canaletas a su gusto:

 <TextField id="input-with-icon-textfield" label="TextField" variant="outlined" sx={{ ".MuiOutlinedInput-root": { paddingTop: "1rem", flexDirection: "column" }, img: { paddingRight: "1rem" } }} InputProps={{ startAdornment: <img src="https://via.placeholder.com/180x150/200" /> }} placeholder="Enter image caption..." />

Lo que produce esto:

ingrese la descripción de la imagen aquí

Ejemplo de trabajo: https://codesandbox.io/s/inputwithicon-material-demo-forked-tyx7y?file=/demo.js:139-580

about 4 years ago · Juan Pablo Isaza Denunciar

0

Puede seleccionar el elemento de entrada nativo producido por la biblioteca y colocar una imagen de fondo en él. Luego definiría una background-position-(x|y) para ajustar la ubicación de la imagen. Para modificar la posición del texto en consecuencia, movería el cursor dentro del campo especificando la propiedad de padding o text-indent .

Debajo de las posiciones de fondo 5px 6px para la colocación de x e y se establece al final de la propiedad de background respectivamente.

 input[type='text'][class^='MuiInput'] { background: url(https://dummyimage.com/20/00ff00/000) no-repeat 5px 6px; padding-left: 10px; /* or */ text-indent: 10px; }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda