--- id: 5a24c314108439a4d4036182 title: Add Inline Styles in React challengeType: 6 isRequired: false videoUrl: '' localeTitle: Añadir estilos en línea en React --- ## Description
Es posible que haya notado en el último desafío que existían otras diferencias de sintaxis con respecto a los estilos HTML en línea además del atributo de style establecido en un objeto de JavaScript. Primero, los nombres de ciertas propiedades de estilo CSS usan camel case. Por ejemplo, el último desafío establece el tamaño de la fuente con fontSize en lugar de font-size. Las palabras con guión, como font-size son sintaxis no válida para las propiedades de los objetos de JavaScript, por lo que React usa camel case como regla general, todas las propiedades de estilo con guión se escriben utilizando el camel case en JSX. Se supone que todas las propiedades con unidades de longitud como valor (como height , width y fontSize ) están en px a menos que se especifique lo contrario. Si desea puede usar em, por ejemplo, envuelva el valor y las unidades entre comillas, como {fontSize: "4em"} . Aparte de las propiedades con valores en px, todos los demás valores de propiedad deben incluirse entre comillas.
## Instructions
Si tiene un gran conjunto de estilos, puede asignar un object estilo a una constante para mantener su código organizado. Descomente la constante de styles y declare un object con tres propiedades de estilo y sus valores. Dale al div un color de "purple" , un tamaño de fuente de 40 , y un borde de "2px solid purple" . A continuación, establezca el atributo de style igual a la constante de styles .
## Tests
```yml tests: - text: La variable de styles debe ser un object con tres propiedades. testString: 'assert(Object.keys(styles).length === 3, "La variable de styles debe ser un object con tres propiedades.");' - text: La variable de styles debe tener una propiedad de color establecida en un valor de purple. testString: 'assert(styles.color === "purple", "La variable de styles debe tener una propiedad de color establecida en un valor de purple.");' - text: La variable de styles debe tener una propiedad fontSize establecida en un valor de 40. testString: 'assert(styles.fontSize === 40, "La variable de styles debe tener una propiedad fontSize establecida en un valor de 40.");' - text: La variable de styles debe tener una propiedad de border establecida en un valor de 2px solid purple. testString: 'assert(styles.border === "2px solid purple", "La variable de styles debe tener una propiedad de border establecida en un valor de 2px solid purple.");' - text: El componente debe representar un elemento div. testString: 'assert((function() { const mockedComponent = Enzyme.shallow(React.createElement(Colorful)); return mockedComponent.type() === "div"; })(), "El componente debe representar un elemento div.");' - text: El elemento div debe tener sus estilos definidos por el objeto de styles. testString: 'assert((function() { const mockedComponent = Enzyme.shallow(React.createElement(Colorful)); return (mockedComponent.props().style.color === "purple" && mockedComponent.props().style.fontSize === 40 && mockedComponent.props().style.border === "2px solid purple"); })(), "El elemento div debe tener sus estilos definidos por el objeto de styles.");' ```
## Challenge Seed
```jsx // const styles = // change code above this line class Colorful extends React.Component { render() { // change code below this line return (
Style Me!
); // change code above this line } }; ```
### After Test
```js console.info('after the test'); ```
## Solution
```js const styles = { color: "purple", fontSize: 40, border: "2px solid purple" }; // change code above this line class Colorful extends React.Component { render() { // change code below this line return (
Style Me!
// change code above this line ); } }; ```