1. :after 伪元素在元素之后添加内容。
  2. :before伪元素在元素之前添加内容。

这个伪元素允许创作人员在元素内容的最后面插入生成内容。默认地,这个伪元素是行内元素,不过可以使用属性 dispiay 改变这一点。

:before和::before的区别?

单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素。伪元素和伪类之所以这么容易混淆,是因为他们的效果类似而且写法相仿,但实际上 css3 为了区分两者,已经明确规定了伪类用一个冒号来表示,而伪元素则用两个冒号来表示。但因为兼容性的问题,所以现在大部分还是统一的单冒号,但是抛开兼容性的问题,我们在书写时应该尽可能养成好习惯,区分两者。

双冒号是在当前规范中引入的,用于区分伪类和伪元素。不过浏览器需要同时支持旧的已经存 在的伪元素写法,比如:first-line、:first-letter、:before、:after等,而新的在CSS3中引入的伪元素则不允许再支持旧的单冒号的写法。

那么现在就可以完整的回答标题中的问题了,对于CSS2之前已有的伪元素,比如:before,单冒号和双冒号的写法::before作用是一样的。

所以,如果你的网站只需要兼容webkit、firefox、opera等浏览器,建议对于伪元素采用双冒号的写法,如果不得不兼容IE浏览器,还是用CSS2的单冒号写法比较安全。

伪类种类

伪元素种类

eg

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<style>.main-box {width: 100px;height: 100px;background-color:red;margin: 0 auto;line-height: 100px;position: relative;/* 改变主体某些样式来伴随更改分身的样式 *//* 水平方向旋转偏移量10度 */transform: skewX(10deg);/* transform: skewY(10deg); */text-align: center;/* 圆角是不会更改的, 我们需要在伪元素身上单独在添加一下 */border-radius: 20px;}.main-box::before,.main-box::after{border-radius: 20px;position: absolute;height: 100%;width: 100%;opacity: 0.6;left: 0;top: 0;}.main-box::before {content: "hello";background-color: skyblue;transform: translateX(-150%);}.main-box::after {content: "world";background-color: orange;transform: translateX(150%);}</style>
<body><div class="main-box">day day up</div>
</body>
</html>

效果

:before、:after伪元素的用法 !相关推荐

  1. HTML:::before和::after伪元素的用法

    随笔 - 366  文章 - 0  评论 - 392 ::before和::after伪元素的用法 一.介绍 css3为了区分伪类和伪元素,伪元素采用双冒号写法. 常见伪类--:hover,:link ...

  2. 细数CSS伪元素及其用法

    引言 CSS中有两个很常见的概念,伪类和伪元素. 伪类用于在页面中的元素处于某个状态时,为其添加指定的样式. 伪元素会创建一个抽象的伪元素,这个元素不是DOM中的真实元素,但是会存在于最终的渲染树中, ...

  3. ::before和::after伪元素的用法

    一.介绍 css3为了区分伪类和伪元素,伪元素采用双冒号写法. 常见伪类--:hover,:link,:active,:target,:not(),:focus. 常见伪元素--::first-let ...

  4. 伪元素学习包含::before、::after的用法

    <!-- 伪元素的学习(伪类元素就是页面代码不会出现伪类元素) 1.::before  before和after主要是配合content属性使用的 2.::after 3.css content ...

  5. 基础知识--:before伪元素和:after伪元素

    http://book.51cto.com/art/201108/285688.htm 3.7  替换指定位置 大家都知道before和after是前.后的意思.但是奇怪的是,CSS中的:before ...

  6. 修改after样式_理解:Before和:After伪元素

    CSS样式表的主要作用是修饰Web页面上的HTML标记,但有时候,为了实现某个效果而往页面里反复添加某个HTML标记很繁琐,或者是显得多余,或者是由于某种原因而做不到.这就是CSS伪元素(Pseudo ...

  7. CSS:理解:Before和:After伪元素

    CSS样式表的主要作用是修饰Web页面上的HTML标记,但有时候,为了实现某个效果而往页面里反复添加某个HTML标记很繁琐,或者是显得多余,或者是由于某种原因而做不到.这就是CSS伪元素(Pseudo ...

  8. css空心三角形_(12)把“可以动的盒子”更优雅地展示: “伪元素”妙用 | CSS...

    原创:itsOli @前端一万小时 本文版权归作者所有,未经授权,请勿转载! 本文节选自"语雀"私有付费专栏「前端一万小时 | 从零基础到轻松就业」 1. 如何使用伪元素来清除浮动 ...

  9. 【CSS进阶】伪元素的妙用--单标签之美

    正文从这里开始,本文主要讲述一下 伪元素 before 和 after 各种妙用.    :before和::before的区别 在介绍具体用法之前,简单介绍下伪类和伪元素.伪类大家听的多了,伪元素可 ...

最新文章

  1. Linux - 手册(manual)使用 详解
  2. 使用VS2019编写C语言程序,环境安装配置+代码调试
  3. 技术系列课回顾 | 视频 QoE 的平衡之道
  4. Android 自定义控件一 带圆形进度的按钮 ControlButton2
  5. 给Sublime Text2安装GraphQL语法高亮插件
  6. 打开计算机属性的命令,电脑双击打开的是属性怎么办
  7. HTTP,FTP,SMTP错误码
  8. Windows下安装Hadoop
  9. php 人像识别,基于OpenCV的PHP图像人脸识别技术
  10. jenkins(六):Jenkins节点管理
  11. 傅里叶分析之掐死教程
  12. PHP一句话木马,中国菜刀
  13. destoon php文件,Destoon 任意文件读取
  14. 【Unity】Jay 开发日志(六)——暂停和结束菜单的创建
  15. Android fragment中广告图片轮播效果的实现(附图 )
  16. midl会议_医学图像分析相关的会议
  17. Java太密来福_这篇文章就是要让你入门java多线程【多线程入门】-Go语言中文社区...
  18. 小程序真机调试出现:request:fail 未能连接到服务器。解决办法
  19. Hibernate入门4.核心技能
  20. 手机访问电脑文件_彻底解决手机-电脑互传大文件的难题 电脑-手机快捷互联互通...

热门文章

  1. 移动渠道巨变:应用商店式微,超级 App 内分发崛起
  2. (转载)Matlab—什么是nc文件,以及如何读取导入
  3. Django cms 教程三:创建模板
  4. (三)模仿学习-Action数据的模仿
  5. PyQt5 界面显示无响应
  6. 农村土地确权之数据入库 —— 国源软件数据入库说明[多档案入库]
  7. Centos7——将网卡修改为任意名称
  8. CSS 强制换行和禁止换行
  9. CDEC 2019中国数字智能生态大会暨第十二届中国软件渠道大会 北京站 | 参会指南...
  10. Redis之布隆过滤器(BloomFilter)