Вставка данных в атрибут style из объекта в React

CSS стили элементам можно также добавлять и с помощью атрибута style. В этом и нескольких последующих уроках мы рассмотрим способы инлайновой стилизации.

Теперь мы не будем подключать файл styles.css, а передадим соответствующие значения в атрибут style в виде объекта со стилями для каждого тега, которые мы будем писать прямо в файле компонента.

Итак, возьмем наш компонент без CSS стилей, который мы делали на прошлом уроке:

function App() { return ( <div> <p>text</p> <p>text</p> <p>text</p> </div> ); }

Давайте в файле App.js перед командой return создадим объект с CSS стилями для дива в переменной class1. Помните, что названия свойств здесь пишутся в camelCase нотации, а значения свойств нужно взять в кавычки:

const class1 = { width: '200px', border: '2px solid brown', padding: '10px', textAlign: 'center' };

Теперь добавим объект class2 со стилями для первого абзаца:

const class2 = { color: 'orangered', fontWeight: 'bold' }

Объект class3 со стилями для второго абзаца:

const class3 = { fontStyle: 'italic', color: 'brown', }

И, наконец class4 для последнего:

const class4 = { backgroundColor: 'orange', fontWeight: 'bold', color: 'white', }

Теперь, чтобы применить в компоненте CSS классы, воспользуемся атрибутом style. Для первого абзаца у нас была переменная class2, передадим ее в качестве значения:

<p style={class2}>text</p>

Подобным образом добавим стили из объектов для остальных тегов.

В результате, код компонента будет выглядеть следующим образом:

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> ); }

Возьмите React компонент, который вы делали в задаче к прошлому уроку, создайте объекты с CSS стилями к вашим тегам, проставьте их в соответствующих атрибутах style.



Чат с GPT Компилятор