Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

237
Views
¿Puedo evitar que calc() se simplifique al configurar el estilo en Javascript?

Creé una función en JavaScript para aplicar un style.right a un elemento. Dependiendo del ancho del medio, le estoy aplicando uno de los siguientes tres estilos

 listElements[i].style.right = "calc(425 * " + portfolioScrollPosition + "px)";

o

 listElements[i].style.right = "calc(33.333 * " + portfolioScrollPosition + "vw)";

o

 listElements[i].style.right = "calc(50 * " + portfolioScrollPosition + "vw)";

Necesito que se escriba en estilos html incrustados EXACTAMENTE así. Sin embargo, calc() está simplificando y solo está escribiendo algo como calc(425px) . ¿Hay alguna forma de evitar que JS haga esta simplificación?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Obtenerlo en la hoja de estilo renderizada es complicado, pero agregarlo a un estilo en línea de elementos que se lea como desee cuando se examine en las herramientas de desarrollo se puede hacer usando literales de plantilla (consulte https://developer.mozilla.org/en -US/docs/Web/JavaScript/Reference/Template_literals )

 Elemement.setAttribute("style", `right:calc(425 * ${portfolioScrollPosition}px;`);

Si realmente lo necesita en la hoja de estilo, deberá cambiar el texto interno de todo el elemento de estilo. <style></style> es como cualquier otro elemento, puede hacer referencia a él y cambiar su texto interno usando element.textContent = "" o element.innerText . Será complicado con una gran hoja de estilo.

Editar He hecho un ejemplo de trabajo para ilustrar el enfoque de volver a escribir el innerText style : https://jsfiddle.net/DaveCP/8czrnhwe/1/ (la herramienta de fragmento SO tiene problemas con los caracteres de nueva línea en una cadena ).

En el ejemplo, la aspect-ratio: calc(2 / 1); se reescribe en aspect-ratio: calc(4 / 1)

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!