Infoga data i style-attributet från ett objekt i React
CSS-stilar kan också läggas till på element
med hjälp av attributet style.
I denna och flera efterföljande lektioner kommer vi
att undersöka metoder för inline-styling.
Nu kommer vi inte att inkludera filen
styles.css, utan istället skicka motsvarande
värden till attributet style i form av ett objekt
med stilar för varje tagg, som vi
kommer att skriva direkt i komponentfilen.
Så, låt oss ta vår komponent utan CSS-stilar, som vi gjorde i förra lektionen:
function App() {
return (
<div>
<p>text</p>
<p>text</p>
<p>text</p>
</div>
);
}
Låt oss i filen App.js före
kommandot return skapa ett objekt
med CSS-stilar för div-en i variabeln
class1. Kom ihåg att egenskapsnamnen
här skrivs i
camelCase
notation, och egenskapsvärden måste
sättas inom citattecken:
const class1 = {
width: '200px',
border: '2px solid brown',
padding: '10px',
textAlign: 'center'
};
Låt oss nu lägga till objektet class2 med
stilar för det första stycket:
const class2 = {
color: 'orangered',
fontWeight: 'bold'
}
Objektet class3 med
stilar för det andra stycket:
const class3 = {
fontStyle: 'italic',
color: 'brown',
}
Och slutligen class4 för
det sista:
const class4 = {
backgroundColor: 'orange',
fontWeight: 'bold',
color: 'white',
}
För att tillämpa CSS-klasserna i komponenten
använder vi oss av attributet
style. För det första stycket
hade vi variabeln class2,
låt oss skicka den som ett värde:
<p style={class2}>text</p>
På liknande sätt lägger vi till stilar från objekten för de återstående taggarna.
Som ett resultat kommer komponentkoden att se ut på följande sätt:
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
gjorde i uppgiften till förra lektionen,
skapa objekt med CSS-stilar till
dina taggar, och sätt in dem i
motsvarande attribut style.