Html 常规同级组合器(~),不更新DOM更改,是否按预期工作?

Html 常规同级组合器(~),不更新DOM更改,是否按预期工作?,html,css,google-chrome,css-selectors,Html,Css,Google Chrome,Css Selectors,我尝试了一下(这个问题与他的问题毫无关系),并试图通过应用CSS选择器来解决这个问题,具体取决于复选框是否被勾选。我的想法是,如果有一个元素被选中,前面的提交按钮应该是可见的。我提出的CSS结果是: input[type=checkbox]:checked ~ input[type=submit] { display:block; } 现在,当页面被加载时,submit按钮被隐藏,这是应该的。但是,当您选中一个复选框时,什么也不会发生(大概应该是这样吧?) 如果在加载表单时有一个属性为

我尝试了一下(这个问题与他的问题毫无关系),并试图通过应用CSS选择器来解决这个问题,具体取决于复选框是否被勾选。我的想法是,如果有一个元素被选中,前面的提交按钮应该是可见的。我提出的CSS结果是:

input[type=checkbox]:checked ~ input[type=submit] {
    display:block;
}
现在,当页面被加载时,submit按钮被隐藏,这是应该的。但是,当您选中一个复选框时,什么也不会发生(大概应该是这样吧?)

如果在加载表单时有一个属性为选中的输入字段,则表单中的“提交”按钮应该是可见的,但在取消选中时,“提交”按钮不会隐藏

当您通过Javascript(本练习的全部目的不是使用Javascript)克隆表单(勾选一个复选框)时,它会产生预期的结果,即如果未选中复选框,则隐藏submit按钮;如果勾选复选框,则显示submit按钮

换句话说,css规则不考虑对dom的更改,而是在放入新元素时考虑它。这是否符合预期?首先,我在CSS中看到了类似的情况

例如:

我是不是漏掉了什么东西,或者它不应该像我描述的那样工作


Edit经过firefox测试,效果良好,所以这似乎是谷歌chrome的一个问题。没有在IE或Opera的更高版本中尝试。

您的CSS看起来是正确的,但是浏览器支持当然会有所不同,有支持的地方就会有bug。Javascript将更加可靠。

您的CSS看起来是正确的,但是浏览器的支持当然是不同的,有支持的地方就会有bug。Javascript将更加可靠。

Webkit在与伪类结合使用时,会遇到兄弟类和and类的问题。我有一些问题:悬停,有可能同样的事情发生在:检查。它应该在最近的夜间chromium构建中修复。如果是这样的话,这个bug将在一段时间内在稳定的chrome版本中结束。

Webkit在与伪CLASE组合时遇到了兄弟姐妹和ANDJACENT问题。我有一些问题:悬停,有可能同样的事情发生在:检查。它应该在最近的夜间chromium构建中修复。如果是这样的话,这个错误将在稳定的chrome版本中结束。

css的应用方式不应因内容是在文档加载时加载的还是在加载过程中更改的,或者是否克隆了内容等而改变。尽管如此?正确。每当DOM更新时(该区域存在大量浏览器错误),都应重新评估CSS选择器。CSS的应用方式不应因内容是在文档加载时加载的还是在加载过程中更改的,或者是克隆的等等而改变。但正确。每当DOM更新时,都应该重新评估CSS选择器(这方面存在大量的浏览器错误)。