Как установить alignSelf для flexDirection=row

Я хочу создать View как flexDirection = "row". но я не могу использовать alignSelf, когда использую flexDirection = "row". теперь, как я могу использовать эту цифру:

|                                                 |
|LeftItem-1  LeftItem-2                  RightItem|
|                                                 |
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
0
967
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

Сгруппируйте левую сторону в одну группу и используйте

justify-content:space-between;

Когда вы используете flexbox с flexDirection = "row",

alignSelf, а также свойство alignItems относятся к тому, как элементы выравниваются по вертикали.

Если вы хотите создать именно эту фигуру, поместите два оставшихся элемента в div и используйте

justify-content:space-between;

установить две группы далеко друг от друга по горизонтали

Есть несколько способов добиться этого. Один из простых способов добиться нужного вам макета — это сделать следующее:

<View style = {{ flexDirection : "row" }}>
    <Text>LeftItem-1</Text>
    <Text>LeftItem-2</Text>
    <View style = {{ flex : 1 }}></View>
    <Text>RightItem</Text>
</View>

Другой вариант — сгруппировать левые элементы в <View>, а затем использовать space-between — однако это усложнит структуру и стиль вашего представления:

 <View style = {{ flexDirection : "row", justifyContent:"space-between" }}>
    <View style = {{ flexDirection : "row" }}>
      <Text>1</Text>
      <Text>2</Text>
    </View>
    <Text>RightItem</Text>
</View>
Ответ принят как подходящий

Когда вы используете flexDirection = "row", alignSelf работает вертикально. Когда вы используете flexDirection = "column", alignSelf работает горизонтально.

Так что для этого вы должны использовать JustifyContent.

<View style = {{flexDirection: "row"}}>
    <View style = {{flexDirection: "row",flex:1}}>
        <Text> LeftItem-1   </Text>
        <Text> LeftItem-2   </Text>
    </View>
    <Text> LeftItem-3   </Text>
</View>

Таким образом, вы можете добиться своего результата.

Вы можете узнать больше о flexbox здесь: https://css-tricks.com/snippets/css/a-guide-to-flexbox/

Другие вопросы по теме