我找到了这个CSS代码,然后运行它来查看其功能,并在页面上概述了每个元素,
有人可以解释一下Asterisk *在CSS中的作用吗?
<style>
* { outline: 2px dotted red }
* * { outline: 2px dotted green }
* * * { outline: 2px dotted orange }
* * * * { outline: 2px dotted blue }
* * * * * { outline: 1px solid red }
* * * * * * { outline: 1px solid green }
* * * * * * * { outline: 1px solid orange }
* * * * * * * * { outline: 1px solid blue }
</style>
这是一个通配符,这意味着它将选择DOM中该部分内的所有元素。
例如,如果我要对整个页面上的每个元素应用边距,则可以使用:
* {
margin: 10px;
}
您还可以在子选择中使用它,例如,以下内容将为段落标记内的所有元素添加边距:
p * {
margin: 10px;
}
您的示例正在做一些CSS欺骗,将连续的边框和边距应用于元素,以使它们具有多个彩色边框。例如,白色边框被黑色边框包围。
我见过这些选择器很多次,但并不清楚它们之间的主要区别是什么。有人能解释一下这些符号之间的区别吗?我们应该在什么时候使用这些符号?
问题内容: 例如: 我不知道是什么意思 这是什么之间的区别,只是定义样式没有? 问题答案: 请参阅W3.org上的相邻选择器。 在这种情况下,选择器意味着样式仅适用于直接在另一个段落之后的段落。 一个普通的选择器会将样式应用于页面中的每个段落。 这仅适用于IE7或更高版本。在IE6中,样式不会应用于任何元素。顺便说一下,这也适用于组合器。
问题内容: CSS中的星形选择器是否会影响页面渲染性能? 有使用它的警告吗? 问题答案: 在表演方面,史蒂夫·索德斯就是 其中的一员 : CSS选择器的性能影响 简化CSS选择器 报告之一的无耻报价: 优化CSS选择器的关键是着眼于 最右边的选择器 ,也称为关键选择器(巧合?)。这是一个更昂贵的选择器:A.class0007 * {}。尽管此选择器看起来更简单,但匹配浏览器的成本更高。因为 浏览器
问题内容: 例如: 这个标志到底是什么意思? 问题答案: 是子组合器,有时会误称为直接后代组合器。1个 这意味着选择器仅选择 直接嵌套 在内 的段落,而不选择嵌套 在 其 内 的任何段落。 插图: 选择了什么,没有选择什么: 选择 这直接位于内部的,因此在这两个元素之间建立了父子关系。 没有选择 这是由包含内,而不是本身。尽管这是的后代,但它不是孩子。是孙子 因此,虽然不匹配此元素,但将使用后代组
问题内容: 过去,我一直使用下划线在HTML中定义 类 和 id 属性。在过去的几年中,我改用破折号,主要是为了使自己适应社区中的趋势,而不一定是因为这对我来说很有意义。 我一直认为破折号有更多弊端,但我看不出这样做的好处: 代码完成和编辑 大多数编辑器都将破折号视为单词分隔符,因此我无法浏览所需的符号。假设课程为“ ”,我必须自动完成“ ”,输入连字符,然后完成“ ”。 带下划线的“ ”被视为一
问题内容: 我已经看过几次CSS代码中使用的“大于”(),但是我无法弄清楚它的作用。它有什么作用? 问题答案: 选择直系子女 例如,如果您有这样的嵌套div: 然后在样式表中声明css规则,如下所示: 您的规则仅适用于具有“中级”类的div,因为这些div是元素为“外部”类的元素的直接后代(直接子代)(当然,除非您声明其他更具体的规则来覆盖这些规则) 。见小提琴。 边注 如果您>>`。 注意:IE