html - 选择父元素之外的 CSS 元素

标签 html css

我想选择父选择器之外的 CSS 元素。我可以只用 CSS 做到这一点吗?下面是我想要实现的例子:

<p>Register Form</p>
<div>
  <p>Full Name :</p>
  <p><input type='text' name='name' required></p>
</div>
<p>Please fill in the box above</p>

我想制作 <p>div之后如果输入类型不为空,则隐藏。下面是style我试过但结果失败:

<style>
div > p input:required:valid + p {
    display: none;
}
</style>

最佳答案

遗憾的是,这不能用纯 CSS 来完成。您不能使用 css 修改元素的父元素,只能修改子元素和后续的兄弟元素。

您可以让 javascript 在父 div 的子输入有效/无效时切换类,然后使用 CSS 修改父 div 的兄弟。

关于html - 选择父元素之外的 CSS 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40354053/

相关文章:

css - 如何使重组文本中的脚注看起来像没有括号的上标?

javascript - 如何使用 jQuery Mobile 动态创建按钮?

javascript - 对 html2canvas 的 SVG 支持

html - 如何使用 OnChanges angular 来改变背景颜色?

javascript - 有没有一种巧妙的方法可以将图片用作列表元素符号,然后在上面画一些东西?

html - Bootstrap - 如何让卡片在搜索栏和视口(viewport)底部之间垂直居中?

html - CSS 为什么 div 重叠?

javascript - 通过在主菜单外单击关闭子菜单在 IE 中不起作用,但在 Firefox 和 Chrome 中起作用

javascript - 插入一个 div 以使用 JavaScript 生成的 HTML 包裹其他 div

css - 是否有 "previous sibling"选择器?