0.0.4 • Published 10 years ago
postcss-logical-properties v0.0.4
postcss-logical-properties

Transform start/end properties to left/right depending on LTR or RTL writing directions of the document. Currently supporting:
float: inline-start || inline-end
clear: inline-start || inline-end
text-align: start || endMore information about logical properties can be on the CSS Working Group Logical Porprties Draft
Install
With npm do:
npm install postcss-logical-properties --save-devExample
Input
element {
float: inline-start;
}Output
element {
float: left; /* In case the direction of the document is rtl */
float: inline-start;
}Usage
Use with grunt-postcss
grunt.initConfig({
postcss: {
options: {
...
processors: [
require('postcss-logical-properties')()
]
}
}
});Options
Type: Object | Null
Default: {rootDir: 'ltr', replace: false, html: true}
rootDirthe root element direction. Can beltrorrtl. PostCSS-logical-properties also tries to get the root direction from CSS (htmlor:root) and overrides this option. Usehtmloption to disable this behaviour.replacereplaces rules containing the logical properties instead of adding fallbacks.htmloverrides root direction from CSShtml {}or:root {}
Roadmap
- Add support for logical directional values:
block-startandblock-end. - Add support for logical values for the
text-alignProperty (startandend). - Add support for logical margins and offsets: the
margin-andoffset-(block-start,block-end,inline-startandinline-endproperties). - Add support for logical padding and border: the
padding-andborder-*-(block-start,block-end,inline-startandinline-endproperties). - Add support for shorthand properties with logical Keyword (
padding,margin). - Add option to create fallbacks for the opposite direction of the document.
- Write tests
Contributing
Pull requests are welcome. If you add functionality, then please add unit tests to cover it.
License
MIT © Ahmad Alfy