Estilos

Pff, hay tantas formas de implementar los estilos en react y ningua se ha impuesto.

Inline

Deshacerse de los estilos en línea fue una de las principales razones para el uso de archivos CSS separados en el primer lugar. Ahora estamos de vuelta allí

render(props, context) {
  const notes = this.props.notes;
  const style = {
    margin: '0.5em',
    paddingLeft: 0,
    listStyle: 'none'
  };

  return <ul style={style}>{notes.map(this.renderNote)}</ul>;
}

Es una solución muy básica.

Radium

Lo más importante de Radium es que proporciona abstracciones necesarias para tratar las media queries y pseudo clases (por ejemplo,: hover). Tendremos que anotar nuestras clases con `@Radium``

const styles = {
  button: {
    padding: '1em',

    ':hover': {
      border: '1px solid black'
    },

    '@media (max-width: 200px)': {
      width: '100%',

      ':hover': {
        background: 'white',
      }
    }
  },
  primary: { background: 'green' },
  warning: { background: 'yellow' },
};
...
<button style={[styles.button, styles.primary]}>Confirm</button>

CSS Modules

CSS Modules parten de la premisa que las reglas CSS deben ser locales por defecto. Este enfoque nos permite desarrollar CSS como hemos estado haciéndolo.

Esto resuelve una gran cantidad de problemas que otras bibliotecas tratan de resolver a su manera. Si necesitamos estilos globales, todavía podemos obtenerlos.

style.css

.primary { background: 'green'; }
.warning { background: 'yellow'; }
.button { padding: 1em; }
.primaryButton { composes: primary button; }

@media (max-width: 200px) {
  .primaryButton {
    composes: primary button;
    width: 100%;
  }
}

button.jsx

import styles from './style.css';
...
<button className=`${styles.primaryButton}`>Confirm</button>

Referencia http://survivejs.com/react/advanced-techniques/styling-react/

results matching ""

    No results matching ""