Los compiladores Less que estoy usando ( OrangeBits y dotless 1.3.0.5 ) están traduciendo agresivamente
body { width: calc(100% - 250px - 1.5em); }
dentro
body { width: calc(-151.5%); }
Lo cual obviamente no es deseado. Me pregunto si hay una manera de indicarle al compilador Less que esencialmente ignore el atributo durante la compilación. He buscado en la documentación de Less y en la documentación de ambos compiladores, y no pude encontrar nada.
¿El compilador Less or a Less lo admite?
Si no, ¿hay un extensor CSS que lo haga?
css
compilation
less
css-calc
Nick Babcock
fuente
fuente
Respuestas:
Menos ya no evalúa la expresión dentro
calc
de forma predeterminada desde entoncesv3.00
.Respuesta original (
Less v1.x...2.x
):Hacer esto:
En Less 1.4.0 tendremos una
strictMaths
opción que requiere que todos los cálculos de Less estén entre paréntesis, por localc
que funcionará "fuera de la caja". Esta es una opción ya que es un cambio importante. Las primeras versiones beta de 1.4.0 tenían esta opción activada por defecto. La versión de lanzamiento lo tiene desactivado por defecto.fuente
calc(100% - 50px)
en less.css 1.4.0 y el resultado fuecalc(50%)
. El~"..."
truco increíble sigue funcionando, pero estoy confundido por la declaración "lista para usar", que me hace pensar que lo anterior funcionaría. Luke, ¿cómo funciona el soporte para elcalc
cambio en Less 1.4.0? ¡Gracias!calc(@somePercent ~"-" @someLength)
Un caso de uso muy común de calc es tomar 100% de ancho y agregar un margen alrededor del elemento.
Uno puede hacerlo con:
fuente
-o-calc-
Todavía no está implementada .Hay varias opciones de escape con el mismo resultado:
fuente
Hay una manera más ordenada de incluir variables dentro del cálculo escapado, como se explica en esta publicación: la función CSS3 calc () no funciona con Less # 974
Al usar los corchetes, no es necesario cerrar y volver a abrir las comillas de escape.
fuente