CSS3选择器匹配以“开始”的值;[属性^=值]”;与引号后有空格的值不匹配

CSS3选择器匹配以“开始”的值;[属性^=值]”;与引号后有空格的值不匹配,css,css-selectors,Css,Css Selectors,如果元素将被删除,则选择器将与标记中的元素不匹配 div[class^="test"] (预期的选择器已在后端生成。) 这不是一种选择 有什么建议吗?你在那里做的^=是: '以..开头' 这将在以下方面起作用: div[class^="test"] { } 哪一个对你有用 div[class*="test"] { } 参考 div[class*=“test”]对您的案例不起作用吗?这是一个包含匹配,因此必须小心使用。它甚至会匹配class=“detest”。您可能会看到以开头和包

如果元素将被删除,则选择器将与标记中的元素不匹配

div[class^="test"]
(预期的选择器已在后端生成。)

这不是一种选择


有什么建议吗?

你在那里做的
^=
是:

'以..开头'

这将在以下方面起作用:

div[class^="test"] { }
哪一个对你有用

div[class*="test"] { }

参考


div[class*=“test”]对您的案例不起作用吗?这是一个包含匹配,因此必须小心使用。它甚至会匹配
class=“detest”
。您可能会看到以开头和包含选择器的组合,如前面提到的或。您是否正在尝试匹配
test123
?如果没有,请使用
.test
[class~=test]
@Blix,但这不是
[attr^=value]
选择器的作用。您正在使用“开始于”选择器选择位于末尾的内容。您应该知道这是行不通的,因为在标题中,您将其称为“开始于”选择器。而且,
div.test
完全不是一个坏习惯。谁告诉你的?@Blix:这跟这里有什么关系?好吧,忘了其他人提到的标记名,直接使用
。然后测试
。这对你有用吗?如果没有,为什么不呢?另外,我同意@Harry的观点,这很可能是根据您描述的情况判断的重复。@torazaburo第一个例子是如何正确使用
[attr^=value]
选择器。@torazaburo首先,我从来没有说过第一个是答案,这只是他尝试的一个例子,以及它是如何实际工作的。至于我的“第二个”是实际答案,是的,它也将匹配
abctestdef
,但据我所知,没有其他方法匹配类。其次,我想这是一个答案,因为它符合OP的要求
div[class^="test"] { }
<div class="test and-some-class"></div>  
<!-- only if the very first string in your class matches "test" -->
<!-- so, class=" test something-else" won't work
div[class*="test"] { }
<div class="class test something-else"></div> 
<!-- class name can be anything. "test" can be anywhere -->