Html 文本输入CSS的样式父级
我有一个文本输入,它被包装在一个div中。当输入被聚焦时,我想更改父div的:after的css属性。如何在CSS中实现这一点Html 文本输入CSS的样式父级,html,css,Html,Css,我有一个文本输入,它被包装在一个div中。当输入被聚焦时,我想更改父div的:after的css属性。如何在CSS中实现这一点 <div class="dataInputTextContainer"> <input class="dataInputText" /> </div> 简单地说,你不能 (对不起) CSS根据DOM的独立性工作,因为只能为随后出现在DOM中的元素构造规则。因此,您不能选择父级,甚至不能选择以前的同级 我倾向于建议你坐下来
<div class="dataInputTextContainer">
<input class="dataInputText" />
</div>
简单地说,你不能
(对不起)
CSS根据DOM的独立性工作,因为只能为随后出现在DOM中的元素构造规则。因此,您不能选择父级,甚至不能选择以前的同级
我倾向于建议你坐下来,退后一步,找出你想要实现的目标。99%的时间是其他人做的,或者你只需对CSS或HTML稍作修改就可以做到
顺便说一句,解决方案不是尝试在
输入上设置之前或之后的,而是替换的元素,因此这些元素不适用。为什么不简单地为输入添加一个标签
,并设置其样式?如果您没有在父项的:之后应用样式,而是在与输入相同的级别放置一个标记
,您可以使用此语法应用同级标记的样式。根据一般UX规则,红色背景可能重复表示错误。不推荐。请改用javascript
.dataInputText:FOCUS ~ .dataInputTextContainer:after{
background-color: red;
}