



















To assist developers using SCSS & Utopia, we’ve published utopia-core-scss. This library includes functions & mixins to calculate and generate Utopian type & space scales directly in SCSS.
npmnpm install utopia-core-scss
@use to namespace the functions and mixins.@use 'node_modules/utopia-core-scss/src/utopia' as utopia;
:root {
@include utopia.generateTypeScale((
"minWidth": 320,
"maxWidth": 1240,
"minFontSize": 18,
"maxFontSize": 20,
"minTypeScale": 1.2,
"maxTypeScale": 1.25,
"positiveSteps": 5,
"negativeSteps": 2,
));
$customClampValue: utopia.calculateClamp((
"minWidth": 320,
"maxWidth": 1240,
"minSize": 16,
"maxSize": 20,
));
}
There are four mixins:
The prefix for the custom properties can be altered, but defaults to step- for typography, and space- for space units. Space mixins can also supply usePx: true if you wish to disconnect space from browser text zoom preferences.
All mixins can be relativeTo:
container (cqi)viewport-width (vw)viewport (vi) ← this is the default.Full documentation can be viewed on GitHub.
The four functions mimic the above mixins, and in fact power each one under the hood. Where mixins generate (slightly) opinionated code, functions give you the raw values so you can totally customise the CSS output to your requirements.
step, minFontSize, maxFontSize and clampsizes, oneUpPairs and customPairs listslabel & clampclamp stringFull documentation can be viewed on GitHub.
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。