Ubacivanje podataka u atribut style iz objekta u React-u
CSS stilove elementima se takođe mogu dodati
i pomoću atributa style.
U ovoj i nekoliko narednih lekcija,
pogledaćemo načine inline stilizovanja.
Sada nećemo povezivati fajl
styles.css, već ćemo proslediti odgovarajuće
vrednosti u atribut style u vidu objekta
sa stilovima za svaki tag, koje ćemo
pisati direktno u fajlu komponente.
Dakle, uzmimo našu komponentu bez CSS stilova, koju smo radili u prethodnoj lekciji:
function App() {
return (
<div>
<p>text</p>
<p>text</p>
<p>text</p>
</div>
);
}
Hajde da u fajlu App.js pre
komande return kreiramo objekat
sa CSS stilovima za div u promenljivoj
class1. Zapamtite da se nazivi
svojstava ovde pišu u
camelCase
notaciji, a vrednosti svojstava je potrebno
staviti u navodnike:
const class1 = {
width: '200px',
border: '2px solid brown',
padding: '10px',
textAlign: 'center'
};
Sada ćemo dodati objekat class2 sa
stilovima za prvi pasus:
const class2 = {
color: 'orangered',
fontWeight: 'bold'
}
Objekat class3 sa
stilovima za drugi pasus:
const class3 = {
fontStyle: 'italic',
color: 'brown',
}
I, na kraju class4 za
poslednji:
const class4 = {
backgroundColor: 'orange',
fontWeight: 'bold',
color: 'white',
}
Sada, da bismo primenili u komponenti
CSS klase, koristićemo atribut
style. Za prvi pasus
imamo promenljivu class2,
prosledimo je kao vrednost:
<p style={class2}>text</p>
Na sličan način dodajmo stilove iz objekata za ostale tagove.
Kao rezultat, kod komponente će izgledati na sledeći način:
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>
);
}
Uzmite React komponentu koju ste
radili u zadatku iz prethodne lekcije,
kreirajte objekte sa CSS stilovima za
vaše tagove, postavite ih u
odgovarajuće atribute style.