CSS中一个冒号(:)和两个冒号(::)的区别

CSS中一个冒号(:)和两个冒号(::)的区别

推荐:css视频教程

一个冒号是伪类,两个冒号是伪元素

伪类可以独立于文档的元素来分配样式,且可以分配给任何元素,逻辑上和功能上类类似,但是其是预定义的、不存在于文档树中且表达方式也不同,所以叫伪类。

伪元素所控制的内容和一个元素控制的内容一样,但是伪元素不存在于文档树中,不是真正的元素,所以叫伪元素。

伪类有::first-child ,:link:,vistited,:hover:,active:focus,:lang

伪元素有::first-line,:first-letter,:before,:after (在苏沈小雨编的CSS2.0中文手册中把:first-line,:first-letter列为伪类应该是理解上的错误)

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

伪类和伪元素的区别:

伪类

伪类选择元素基于的是当前元素处于的状态,或者说元素当前所具有的特性,而不是元素的id、class、属性等静态的标志。由于状态是动态变化的,所以一个元素达到一个特定状态时,它可能得到一个伪类的样式;当状态改变时,它又会失去这个样式。由此可以看出,它的功能和class有些类似,但它是基于文档之外的抽象,所以叫伪类。

:link

伪类将应用于未被访问过的链接,与:visited互斥。

:hover

立即学习“前端免费学习笔记(深入)”;

伪类将应用于有鼠标指针悬停于其上的元素。

:active

伪类将应用于被激活的元素,如被点击的链接、被按下的按钮等。

:visited

伪类将应用于已经被访问过的链接,与:link互斥。

:focus

伪类将应用于拥有键盘输入焦点的元素。

:first-child

伪类将应用于元素在页面中第一次出现的时候。

:lang

伪类将应用于元素带有指定lang的情况。

伪元素

与伪类针对特殊状态的元素不同的是,伪元素是对元素中的特定内容进行操作,它所操作的层次比伪类更深了一层,也因此它的动态性比伪类要低得多。实际上,设计伪元素的目的就是去选取诸如元素内容第一个字(母)、第一行,选取某些内容前面或后面这种普通的选择器无法完成的工作。它控制的内容实际上和元素是相同的,但是它本身只是基于元素的抽象,并不存在于文档中,所以叫伪元素。

::first-letter

伪元素的样式将应用于元素文本的第一个字(母)。

::first-line

伪元素的样式将应用于元素文本的第一行。

::before

在元素内容的最前面添加新内容。

::after

在元素内容的最后面添加新内容。

::before::after通常与CSS内容生成配合使用。

更多编程相关知识,请访问:css视频教程!!

以上就是CSS中一个冒号(:)和两个冒号(::)的区别的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2881770.html

(0)
上一篇 2025年3月10日 20:05:52
下一篇 2025年2月25日 06:18:24

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 怎么设置css字体单行居中

    设置css字体单行居中的方法:首先创建一个div;然后在div里写上一个p标签;最后通过设置“text-align: center;”属性实现单行居中即可。 本教程操作环境:Dell G3电脑、Windows7系统、HTML5&&a…

    2025年3月10日 编程技术
    200
  • 波浪的边框css怎么实现

    css实现波浪边框的方法:首先新建一个div,并给它一个类名;然后设置一个背景颜色,并将div设为白色;接着使用伪元素before进行设置,并插入有渐变颜色的形状;最后加上尺寸进行图形的分割,并增加三角形实现波浪效果即可。 本教程操作环境:…

    2025年3月10日 编程技术
    200
  • CSS如何让背景图片不重复

    CSS让背景图片不重复的方法:首先新建一个html文件;然后输入一个div标签,并对这个标签添加一个class类;最后通过属性“background-repeat:no-repeat;”实现背景图片不重复即可。 本教程操作环境:Dell G…

    2025年3月10日 编程技术
    200
  • css td文字不换行如何实现

    css td文字不换行的实现方法:首先打开相应的css代码;然后为表格table与td标签设置“white-space:nowrap;”样式即可使表格内文字不换行。 本教程操作环境:Dell G3电脑、Windows7系统、HTML5&am…

    2025年3月10日
    200
  • 如何解决eclipse css乱码问题

    eclipse css乱码的解决办法:首先打开的一个CSS文件;然后选择“Save As UTF-8”;接着在CSS文件上右键属性并查看编码;最后选择“UTF-8”,并点击“Apply”应用新设置即可。 本教程操作环境:Dell G3电脑、…

    2025年3月10日 编程技术
    200
  • 利用css实现一个简单的对号效果

    一般我们有两种思路去实现,一种是将现成的符号插入页面中,另一种是使用css来实现。 (学习视频分享:css视频教程) 本文主要介绍第二种思路: 给块级元素设置宽度和高度 立即学习“前端免费学习笔记(深入)”; 设置元素相邻的两个 borde…

    2025年3月10日
    200
  • css图片不让选中状态如何实现

    css实现图片不让选中状态的方法:首先打开相应css代码文件;然后使用css中的“pointer-events”属性设置图片不让选中,其语句如“img {pointer-events: none;}”。 本教程操作环境:Dell G3电脑、…

    2025年3月10日
    200
  • css中如何把正方形变成圆形

    css中把正方形变成圆形的方法:首先新建一个html示例文件;然后在body标签中输入div标签,并且给div标签添加一个类名;最后通过添加属性为“border-radius:150px”即可把正方形变成圆形。 本教程操作环境:Dell G…

    2025年3月10日 编程技术
    200
  • 了解CSS的选择器优先级和!important权重

    推荐:css视频教程 CSS中的选择器优先级与!important权重 .class选择器要高于标签选择器。#id选择器要高于.class选择器。标签选择器是优先级最低的选择器。!important的属性它的权重值优先级最高的,大于所有的选…

    2025年3月10日 编程技术
    200
  • css font控制字体的多种变换

    教程推荐:css视频教程 CSS字体属性定义文本的字体系列、大小、加粗、风格(如斜体)和变形(如小型大写字母)font-family控制字体,由于各个电脑系统安装的字体不尽相同,但是基本装有黑体、宋体与微软雅黑这三款字体。 font-siz…

    2025年3月10日
    200

发表回复

登录后才能评论