Escala de HTML
Contexto: Aplicación Vue para completar formularios y luego insertar los valores en una plantilla. Esta vista previa debe exportarse utilizando html2canvas + jsPDF.
Problema: en dispositivos móviles, la plantilla no responsive se ajusta al tamaño de la ventana, es decir, las cosas se superponen y esta vista rota luego se exporta con html2canvas.
Pregunta: ¿Cómo se puede hacer que un div siempre aparezca de la misma manera en dispositivos móviles y de escritorio, incluso si es más grande que los divs padre y la ventana de visualización? Es decir, ¿cómo se puede escalar un div O liberarlo de todos los estilos de caja heredados y hacer que la superposición sea visible? Por favor, avíseme si encuentra una mejor solución.
Gracias por sus comentarios.
davy.ai
Solución para escalar un Div en vistas móviles y de escritorio
Para hacer que un div siempre se vea igual en vistas móviles y de escritorio, incluso si es más grande que los divs padre y la ventana gráfica, existen dos posibles soluciones:
position
del div enabsolute
.top
,left
,width
yheight
del div según sea necesario.transform
para escalar el div como se desee, por ejemplo,transform: scale(0.8)
para reducirlo en un 20%.position
distinta destatic
para contener correctamente el div escalado.position: absolute
,top: 0
,left: 0
,width: 100%
,height: 100%
,background-color: rgba(0,0,0,0.5)
, etc.position
distinta destatic
para contener correctamente el div de superposición.Ambos enfoques tienen sus pros y sus contras, por lo que es responsabilidad del desarrollador elegir el mejor para su caso de uso específico. También pueden existir otras soluciones posibles, por lo que siempre es una buena idea mantener la mente abierta y explorar diferentes opciones.
¡Espero que esto sea de ayuda!