È possibile utilizzare calc() per moltiplicare o dividere con valori basati su unità (come 100%, 5px, ecc.).Calc CSS() - Moltiplicazione e divisione con valori unitari
Per esempio speravo di fare qualcosa di simile:
width: calc(100% * (.7 - 120px/100%));
Sperando che ha deliberato di qualcosa di simile (assumendo 100% = 500px):
width: calc(500px * (.7 - 120px/500px));
width: calc(500px * (.7 - .24));
width: calc(500px * .46);
width: calc(230px);
Tuttavia dopo alcuni esperimenti che sembra Non posso avere un valore basato su unità come denominatore per la divisione.
Inoltre, non riesco a collegare più due valori come 5px * 10px
o 5px * 100%
.
So che non ha senso nel 100% dei casi consentire questo, ma nel mio caso d'uso, mi piacerebbe sapere qual è la percentuale 120px della larghezza complessiva, che poi mi nutro di il resto dei miei calcoli.
O questo, o se qualcuno potesse immaginare un modo diverso di scriverlo, funzionerebbe altrettanto bene. Mi sono tormentato il cervello e non ho potuto inventare nulla.
Wow ... Ho letto quella pagina 5 volte in cerca di quella regola. Non sono sicuro di come mi sono perso seduto proprio accanto alla descrizione degli operatori. Grazie. Questo è ciò di cui avevo paura. In realtà sto usando MENO, anche se la formula che ti ho dato sopra ho bisogno di calcolare con calc() poiché ho bisogno di conoscere la larghezza, che è variabile. Torna al tavolo da disegno per trovare un approccio completamente diverso. Grazie per la risposta definitiva, almeno ora so che in questo modo è un vicolo cieco. – samanime
I preprocessori non possono gestire tanto quanto calc() può, dal momento che tali calcoli devono essere eseguiti al momento del rendering, il che rende qualcosa come Sass inutile. – TylerH