Wiskundige bewerkings in LESS kanselleer
Daar is soms situasies waar ons 'n
wiskundige bewerking het wat nie
deur LESS as 'n opdrag om te bereken
geïnterpreteer moet word nie. Byvoorbeeld,
so 'n probleem kom voor
in die CSS-funksie calc:
div {
width: calc(100% - 10px);
}
Gelukkig kan LESS sulke plekke korrek hanteer en sal nie die berekening tydens komasie uitvoer nie.
Daar is egter situasies waar die uitdrukking wat nie berekening vereis nie, elders is, byvoorbeeld in 'n veranderlike, soos hier:
@exp: 100% - 10px;
div {
width: calc(@exp);
}
In hierdie geval sal die resultaat van die berekening
in die veranderlike geskryf word, en in calc sal 'n veranderlike
met die berekende waarde gestuur word. Om dit te voorkom, kan ons eksplisiet spesifiseer dat die uitdrukking
onveranderd moet bly.
Om dit te doen, moet die uitdrukking tussen aanhalingstekens geplaas word en 'n tilde-teken voor dit geplaas word:
@exp: ~'100% - 10px';
div {
width: calc(@exp);
}
Korrigeer die kode sodat dit korrek werk:
@exp1: 80% + 10px;
@exp2: 30vh - 10px;
div {
width: calc(@exp1);
margin-top: calc(@exp2);
}