zoukankan      html  css  js  c++  java
  • 伪元素选择器

    伪元素选择器

    • ::first-letter —— 匹配指定选择器的首字母/首汉字

    • ::first-line —— 匹配指定选择器的首行。

    • ::selection —— 匹配元素中被用户选中或处于高亮状态的部分。

    • ::before —— 匹配被选元素的内容前面插入内容,可以与 content 配合使用

    • ::after —— 匹配被选元素的内容后面插入内容,可以与 content 配合使用

      before 和 after 的内容是无法被选取的

    伪类和伪元素的区别

    1. 伪类本质上是为了弥补常规 CSS 选择器的不足,以便获取到更多信息;

    2. 伪元素本质上是创建了一个有内容的虚拟容器;

    3. CSS3 中伪类和伪元素的语法不同—— :是伪类 , ::是伪元素

    4. 可以同时使用多个伪类,而只能同时使用一个伪元素,且伪元素只能在末尾使用

    5. 根本区别在于:它们是否创造了新的元素, 这个新创造的元素就叫 "伪元素" 。

      • 伪元素/伪对象:是虚拟的元素,是创建新元素。 这个新元素(伪元素) 是某个元素的子元素,这个子元素虽然在逻辑上存在,但却并不实际存在于文档树中.
      • 伪类:(无标签,找不到, 只有符合触发条件时才能看到 ), 逻辑上存在但在文档树中却无须标识的“幽灵”分类。

    伪元素特点

    • 伪元素要配合 content 属性一起使用
    • 伪元素不会出现在 DOM 中,所以不能通过 js 来操作,仅仅是在 CSS 渲染层加入
    • 伪元素的特效通常要使用:hover 伪类样式来激活

    :before 和 ::before

    • 相同点
      • 都可以用来表示伪类对象,用来设置对象前的内容
      • :befor 和::before 写法是等效的
    • 不同点
      • :befor 是 Css2 的写法,::before 是 Css3 的写法
      • :before 的兼容性要比::before 好 ,不过在 H5 开发中建议使用::before 比较好

    由于::before 和::after 生成的伪元素 包含在元素格式框内
    因此不能应用在替换元素或单标签元素上, 比如 img 或 br 元素。

    那些用 src 的都属于 导入,导入就是替换元素
    用 href 的属于 引用,如 a 标签,非替换元素

  • 相关阅读:
    三、瀑布流中的ajax请求详解 Confi
    显示GridControl的横向滚动条
    耳目一新的感觉(转)
    JavaScript学习笔记——变量,作用域和内存管理
    Servlet编程笔记
    JavaScript,应该选择内嵌形式还是外链形式(Inline Code Versus External Files)
    JavaScript学习笔记——Javascript基本语法
    为主机空间添加一个phpmyadmin
    关于Post中明文传送密码以及其他
    Maven原理和Maven2新特性
  • 原文地址:https://www.cnblogs.com/pengnima/p/13126636.html
Copyright © 2011-2022 走看看