我不确定我是否记得正确,但我想我曾经读过一次使用> css规则中的选择器是不好的做法?有人可以对这个话题有所了解吗?
例如:
<style>
#search-form {
... whatever rules...
}
#search-form > input[type=text] {
... rules...
}
#search-form > button {
... rules ...
}
</style>
<form id="search-form">
<input type="text" placeholder="Search...">
<button>Search!</button>
</form>
答案 0 :(得分:2)
这当然不是不好的做法,但应该与利弊的知识一起使用。使用子选择器(E > F
)将仅选择直接子项,并且由于这会阻止完整的后代遍历,因此浏览器将花费更少的时间来应用后代选择器(E F
)。但是,IE6中不支持该元素,因此如果这对您很重要,请明确指出。
这有一个很好的写作和一些很好的链接:CSS child vs descendent selector
答案 1 :(得分:1)
答案 2 :(得分:1)
子选择器仅匹配左侧选择器的直接后代。它可能是,也可能不是你想要的,但是对于所有后代应用某种风格,无论它们在左侧选择器下方有多深,都是比较常见的。
例如#mydiv > span
问问自己:我真的不想在span
下的p
内匹配#mydiv
。 span
内的li
#mydiv
怎么样?等等。也许你没有 - 也许你这样做。重要的是understand what it does。