Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/wwwroot/mifepriston.org/node_modules/postcss-calc/ |
Upload File : |
# postcss-calc [](https://travis-ci.org/postcss/postcss-calc) > [PostCSS](https://github.com/postcss/postcss) plugin to reduce `calc()`. This plugin reduce `calc()` references whenever it's possible. This can be particularly useful with the [postcss-custom-properties](https://github.com/postcss/postcss-custom-properties) plugin. **Note:** When multiple units are mixed together in the same expression, the `calc()` statement is left as is, to fallback to the [w3c calc() feature](http://www.w3.org/TR/css3-values/#calc). ## Installation ```console $ npm install postcss-calc ``` ## Usage ```js // dependencies var fs = require("fs") var postcss = require("postcss") var calc = require("postcss-calc") // css to be processed var css = fs.readFileSync("input.css", "utf8") // process css var output = postcss() .use(calc()) .process(css) .css ``` **Example** (with [postcss-custom-properties](https://github.com/postcss/postcss-custom-properties) enabled as well): ```js // dependencies var fs = require("fs") var postcss = require("postcss") var customProperties = require("postcss-custom-properties") var calc = require("postcss-calc") // css to be processed var css = fs.readFileSync("input.css", "utf8") // process css var output = postcss() .use(customProperties()) .use(calc()) .process(css) .css ``` Using this `input.css`: ```css :root { --main-font-size: 16px; } body { font-size: var(--main-font-size); } h1 { font-size: calc(var(--main-font-size) * 2); height: calc(100px - 2em); margin-bottom: calc( var(--main-font-size) * 1.5 ) } ``` you will get: ```css body { font-size: 16px } h1 { font-size: 32px; height: calc(100px - 2em); margin-bottom: 24px } ``` Checkout [tests](test) for more examples. ### Options #### `precision` (default: `5`) Allow you to definine the precision for decimal numbers. ```js var out = postcss() .use(calc({precision: 10})) .process(css) .css ``` #### `preserve` (default: `false`) Allow you to preserve calc() usage in output so browsers will handle decimal precision themselves. ```js var out = postcss() .use(calc({preserve: true})) .process(css) .css ``` #### `warnWhenCannotResolve` (default: `false`) Adds warnings when calc() are not reduced to a single value. ```js var out = postcss() .use(calc({warnWhenCannotResolve: true})) .process(css) .css ``` #### `mediaQueries` (default: `false`) Allows calc() usage as part of media query declarations. ```js var out = postcss() .use(calc({mediaQueries: true})) .process(css) .css ``` #### `selectors` (default: `false`) Allows calc() usage as part of selectors. ```js var out = postcss() .use(calc({selectors: true})) .process(css) .css ``` Example: ```css div[data-size="calc(3*3)"] { width: 100px; } ``` --- ## Contributing Work on a branch, install dev-dependencies, respect coding style & run tests before submitting a bug fix or a feature. ```console $ git clone https://github.com/postcss/postcss-calc.git $ git checkout -b patch-1 $ npm install $ npm test ``` ## [Changelog](CHANGELOG.md) ## [License](LICENSE)