Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 如何在不使用绝对位置的情况下制作后面的内容_Css_Reactjs_React Native - Fatal编程技术网

Css 如何在不使用绝对位置的情况下制作后面的内容

Css 如何在不使用绝对位置的情况下制作后面的内容,css,reactjs,react-native,Css,Reactjs,React Native,我正在开发一个测验应用程序。用户根据自己的信心选择一个选项,因此,我决定在每个选项中使用可触摸的不透明度制作三个框,并且效果良好,但我希望这些框后面有文本,但我还没有实现。这是我的密码 注意:此“样式”包含应用程序的样式对象 <View style={[ Style.flexRow, Style.marginV5, Style.borderRadius20, Style.paddingDefault, Style.bgLight ]}> <Text>Ajax</T

我正在开发一个测验应用程序。用户根据自己的信心选择一个选项,因此,我决定在每个选项中使用可触摸的不透明度制作三个框,并且效果良好,但我希望这些框后面有文本,但我还没有实现。这是我的密码

注意:此“样式”包含应用程序的样式对象

<View style={[ Style.flexRow, Style.marginV5, Style.borderRadius20, Style.paddingDefault, Style.bgLight ]}>
 <Text>Ajax</Text>
 <TouchableOpacity style={[ Style.flex, Style.borderRight, Style.height100, Style.borderLeft ]}>
 </TouchableOpacity>
 <TouchableOpacity style={[ Style.flex, Style.borderRight, Style.height100, Style.borderLeft ]}>
 </TouchableOpacity> 
 <TouchableOpacity style={[ Style.flex, Style.borderRight, Style.height100, Style.borderLeft ]}>
 </TouchableOpacity>
</View>

AJAX


一种方法是将文本位置设置为绝对位置,但在此之后,不可能根据文本大小动态更改父对象的高度。请帮助我解决这个问题,或者如果你知道比这个更好的解决方案,请建议我。谢谢

您可以为其他元素提供负的边距值

由于在第一个顺序中有
Text
组件层次结构,因此应将
TouchableOpacity的
边距设置为负值

<Text>Ajax</Text>
<TouchableOpacity style={{marginTop: -100}}
Ajax

您可以将
TouchableOpacity
框放入
flex
容器中,并将容器设置为
absolute
,而不是将文本设置为
absolute
。这将允许文本大小控制框的高度,同时允许您在文本前面添加任意数量的框

请参见我的示例:

谢谢!但这几乎是与文本绝对位置相同的解决方案。事实上,我想有一个动态的父级高度和那些根据文本(行数)的条,另一个问题来了。您知道如何在覆盖文本时使可触摸不透明度可触摸吗?因为我希望这些块不会使文本不可读,因此我将文本设为z-index 1,但这会使可触摸的不透明度变得不必要。尝试将CSS设置为文本上的
指针事件:无
,以及框上的
指针事件:自动
。它不会使框可点击,因为文本始终位于框上方。我想在方框上方显示文本,并使其可触摸嗯,你可能需要为此提出一个新问题。我能想到的一个技巧是将文本放回框后,将其不透明度设置为零(这样它仍然可以设置高度),然后在第一个
touchablepacity
框中添加一个新的文本元素,并将其位置设置为绝对。新的文本元素将是“显示”文本,而旧的文本元素将纯粹用于设置框的大小。嗯,谢谢!那也许行得通。但我找到了另一个类似的解决方案。我添加了另一个具有相同绝对位置的框视图。这是用来触发操作的新闻事件和另一个后面的文字是用来给边框和突出显示的背景,它的工作良好。再次感谢你的帮助。