Aphrodite-freestyle
A tool for writing style and media query more efficiently with Aphrodite
Feature
- Substate: support the substate nested in style:
item: {
color: 'blue',
selected: {
color: 'red'
}
}
-
Standalone breakpoint definition: it can be used to convert into the styles Aphrodite need.
-
Build-in global selector extension for supporting global style.
Install
npm install aphrodite-freestyle
Notice
-
The name you defined for substate should not start with
:
, because it was used in pseudo-selector -
The
def
param in your style is required. -
The media name in your styles and breakpoints definition should be the same.
-
The alias param's value is a abbreviation for writing the media name convinent, it use as param name in
creatStyle
function's return. So that I can write this way :css(dt.box)
notcss(desktop.box)
. -
Ensure writing param
media
andalias
both in your breakpoints if you use alias.
Usage
1. Defined your breakpoint
//breakpoints.js mobile : '@media (max-width: 600px)' desktop : media:'@media (min-width: 601px) and (max-width: 1200px)' alias:'dt'
2. Design your styles
//styles.js def: item: color: 'green' selected: color: 'yellow' box: //this won't be work because of the breakpoint definition width: '600px' mobile: box: width: '400px' desktop : box: width: '800px' '*a': color: 'orange'
3. Import in
//App.js { let defmobiledt = return <div className=> <div className=> <a href="#">Home</a> </div> </div> } AppdefaultProps = activeItem: 'home'
API
/** * @description * The convert function. * @param @required * @param @required * @return */ /** * @description * Aphrodite origin function, but with some extensions. * @param @required * @return */
Changelog
0.0.3
- Created a global selector extension to support global style
0.0.2
- Support the substate nested in style
- change name
aphrodite-breakpoint
toaphrodite-freestyle
0.0.1
First version, support add media query prefix.