"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo obtener el ancho y alto precisos de un elemento transformado en JavaScript?

¿Cómo obtener el ancho y alto precisos de un elemento transformado en JavaScript?

Publicado el 2024-11-08
Navegar:375

How to Get the Accurate Width and Height of a Transformed Element in JavaScript?

Recuperar ancho y alto después de la transformación

Al aplicar una transformación como rotar (45 grados) a un elemento, las dimensiones visuales de ese elemento cambiar. Sin embargo, las propiedades de ancho y alto en JavaScript aún reflejan las dimensiones originales sin transformar.

Solución: uso de getBoundingClientRect()

Para obtener las dimensiones actualizadas después de la transformación, use el método getBoundingClientRect() en HTMLDOMElement. Este método devuelve un objeto que contiene la altura y el ancho transformados.

Ejemplo:

// Get the element
const element = document.querySelector('.transformed');

// Calculate the rotated dimensions
const rect = element.getBoundingClientRect();

// Access the rotated width and height
const rotatedWidth = rect.width;
const rotatedHeight = rect.height;

Demostración:

Visite este jsFiddle para ver un ejemplo práctico: https://jsfiddle.net/your_url_here

Nota: Este método le proporcionará las dimensiones de todo el elemento, incluidos los bordes o el relleno. Si necesita calcular solo las dimensiones del contenido, debe usar offsetWidth y offsetHeight en el elemento de contenido del elemento (por ejemplo,

dentro del elemento transformado).
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3