Innsetting av data i style-attributtet fra et objekt i React
CSS-stiler til elementer kan også legges til
ved hjelp av attributtet style.
I denne og noen påfølgende leksjoner vil vi
se på metoder for inline-stiling.
Nå vil vi ikke koble til filen
styles.css, men sende de tilsvarende
verdiene til attributtet style i form av et objekt
med stiler for hver tagg, som vi
skriver direkte i komponentfilen.
Så, la oss ta komponenten vår uten CSS-stiler, som vi lagde i forrige leksjon:
function App() {
return (
<div>
<p>text</p>
<p>text</p>
<p>text</p>
</div>
);
}
La oss i filen App.js før
kommandoen return opprette et objekt
med CSS-stiler for div-en i variabelen
class1. Husk at egenskapsnavnene
her skrives i
camelCase
notasjon, og egenskapsverdiene må
stå i anførselstegn:
const class1 = {
width: '200px',
border: '2px solid brown',
padding: '10px',
textAlign: 'center'
};
La oss nå legge til objektet class2 med
stiler for det første avsnittet:
const class2 = {
color: 'orangered',
fontWeight: 'bold'
}
Objektet class3 med
stiler for det andre avsnittet:
const class3 = {
fontStyle: 'italic',
color: 'brown',
}
Og til slutt class4 for
den siste:
const class4 = {
backgroundColor: 'orange',
fontWeight: 'bold',
color: 'white',
}
Nå, for å bruke i komponenten
CSS-klassene, bruker vi attributtet
style. For det første avsnittet
hadde vi variabelen class2,
la oss sende den som verdi:
<p style={class2}>text</p>
På lignende måte legger vi til stiler fra objekter for de andre taggene.
Som et resultat vil komponentkoden se slik ut:
function App() {
const class1 = {
width: '200px',
border: '2px solid brown',
padding: '10px',
textAlign: 'center',
};
const class2 = {
color: 'orangered',
fontWeight: 'bold',
};
const class3 = {
fontStyle: 'italic',
color: 'brown',
};
const class4 = {
backgroundColor: 'orange',
fontWeight: 'bold',
color: 'white',
};
return (
<div style={class1}>
<p style={class2}>text</p>
<p style={class3}>text</p>
<p style={class4}>text</p>
</div>
);
}
Ta React-komponenten som du
lagde i oppgaven til forrige leksjon,
opprett objekter med CSS-stiler til
dine tagger, sett dem i
tilsvarende attributter style.