回答
在CSS术语中,一个类是一个以句号开始的选择器,例如,
.foo { ... }
这将在形式使用
<div class="foo">
此使用的“类”,更在这个意义上“具有一组或一类事物的共同特征,并通过一种从他人分化或质量“,而不是借用OO术语。
由于用户代理定义何时和/或有多少内容符合要求(如:hover
,:active
等),伪类“不太真实”。
这是伪因为你没有做它;浏览器'创建'它,并允许您设置它以改变链接的外观,当它处于该状态时。
CSS引入了伪元素和伪类的概念,基于该位于文档树以外的信息以允许格式。
伪元素创建有关文档树的抽象超出文档语言指定的抽象。例如,文档语言不提供访问元素内容的第一个字母或第一行的机制。 CSS伪元素允许样式表设计者引用这个不可访问的信息。伪元素还可以为样式表设计者提供一种将样式分配给源文档中不存在的内容的方法(例如:before和after之后,伪元素允许访问生成的内容)。
伪类分类上比它们的名称等特性的元素,属性或内容;原则上不能从文档树中推导出来的特征。伪类可以是动态的,即在用户与文档交互时元素可以获取或丢失伪类。例外是可以从文档树中推导出的':first-child'和':lang()',在某些情况下可以从文档树推导出来。
因此,基本上,一个伪类的东西,你可以附加一个风格,但是你从来没有在HTML打印出来自己。另外,取决于用户与UI的交互,伪分类可以被获取并丢失。
随着CSS2/3允许更复杂的元件的规则(之类的东西的输入[类型=复选框]等中,术语伪类似乎越来越过时了。
然而,伪类是只有CSS标识符(或多或少)可以随着用户交互而可靠地改变。对于属性选择器以及什么不是,大多数浏览器倾向于在页面加载时使用所有元素的状态,并且忽略所做的任何改变。但是对于伪类,当伪类变为真(或不真实)时,它们实际上会改变样式。
因此,考虑到这个特定的定义,它们是类,因为规则适用于共享相同“状态”的任何元素,因此可以被认为是“类”,但它是伪的,因为它不是真的属性定义的类,并且因为在任何给定的时间页面被查看,“类”可能是也可能不是真的。
我认为,在某些基于UI的伪类(我特别想到:hover
)时,在任何给定时间只有一个元素可以真正拥有这个“类”,所以它几乎更多一个伪ID,基于我的上述定义。
- 1. 什么类可以访问Visual Studio IDE中所谓的属性?
- 2. 为什么mapply()的行为有所不同,取决于所谓的函数?
- 3. 这种类型的称谓是什么?
- 4. 为什么Bootstrap包含焦点和活动的类和伪类?
- 5. 与现场选择为选择statment(?这是什么所谓的)
- 6. 为什么转换器是没有得到所谓的
- 7. 谓词为真为所有?
- 8. 什么是内容:''是指伪类?
- 9. 为什么使用“some @ mail”:有效的伪类?
- 10. 为什么我的伪类重写显示:无?
- 11. 如何选择所选伪类的伪类?
- 12. 为什么这个Prolog谓词有效?
- 13. 为什么在std :: copy_if签名不限制谓词类型
- 14. 为什么这个std :: sort谓词失败,当类在main()内?
- 15. 为什么sys.modules中有伪模块?
- 16. 什么是伪类,它们用于什么?
- 17. 为什么CSS:不是伪类不能按预期工作?
- 18. 为什么这个伪类选择器不工作?
- 19. 为什么a:活动伪类不起作用
- 20. 为什么:目标伪类不工作在IE中?
- 21. 为什么不能用伪选择器来定位这个类?
- 22. 为什么不“:重点:不(:(主动)”伪类工作?
- 23. 所谓
- 24. 是什么所谓的放置在布局的边界
- 25. 为什么我的伪类没有被Sublime Text检测为有效的语法?
- 26. 最后一个子类或最后一类伪类不工作,为什么?
- 27. PHP:所谓的“静态” A类
- 28. 清除元素上所有伪类的最简单方法是什么?
- 29. 的iOS在什么条件下控制器:didChangeSection:atIndex:forChangeType:所谓
- 30. 什么是所谓的“框架”在视觉工作室?
但为什么它是一个类?如果您一次只能悬停或屏幕上的一个区域,则只有一个p可以随时采用CSS规则。没有阶级意味着属于某个共同组的几个元素,而阶级风格规则意味着所有这些元素都会继承该规则? – Anthony 2009-08-15 08:50:20
@Anthony:伪类可以假定为一个状态。并且每个具有state * hover *的元素都可以通过':hover'进行分类。因此,无论何时'a'元素获得状态*悬停*,都可以通过':hover'选择。 – Gumbo 2009-08-15 08:59:16