博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
伪元素与伪类
阅读量:6571 次
发布时间:2019-06-24

本文共 1581 字,大约阅读时间需要 5 分钟。

                                      伪元素与伪类

为什么要写这篇文章?

  伪元素和伪类一直都是很容易混淆的,没有大量的实践和用心去体会是不容易记住的。我相信对于绝大部分新手来说是这样的,我自己也是经常记不住,像这样不算难的问题,一直查阅别人的博文,没有点自己的思想,好像是很low的一件事,因此写下这篇文章。

 

什么是伪类?

  伪类的实质是把某种幻像类关联到与伪类相关的元素上,举个例子:

These are the necessary steps:

 使用规则  p:first-child  { font-weight: bold; },会将DIV的第一个子元素P字体变粗。

  如果不使用伪类,我们也希望达到以上效果,那么我们给P元素添加类名first-child,如下:

These are the necessary steps:

  使用规则 .first-child { font-weight: bold; }  可以达到同样的效果。

  这也就是为什么叫做伪类,“类”字体现在好像存在于一个规则,与幻想的类名联系在一起,而我们可以直接使用伪类,添加样式,而不用先想好类名,然后再添加样式。

 伪类的种类有:  

    链接伪类: :link,  :visited

    动态伪类:  :focus,  :hover,  :active

           对第一个子元素:   :first-child

    根据语言选择:   :lang

 

什么是伪元素?

  伪元素能够在文档中插入假想的元素,从而得到某种效果。再使用上一个例子:

These are the necessary steps:

  使用规则p:first-letter { font-size: 200%; }  p元素的第一个字母大小是其余字母的两倍。

  而不使用伪元素,要达到同样的效果,则需要使用新的标签将p元素的第一个字母包裹起来,然后添加类名再添加样式。

T hese are necessary steps:

  使用规则 .first-letter { font-size: 200%; } 也可以实现同样的效果。

  这也就是为什么叫伪元素了,“元素”体现在我们可以不添加额外的标签(标签也叫元素),就可以直接给想要的字母添加样式,就好像使用元素选择器一样。

  常见的伪元素:

      CSS2.1中定义了4个伪元素:设置首字母样式( :first-letter ),设置第一行样式( :first-line ),设置之前( :before )和之后元素( :after )的样式

二者的异同

  相同的地方:①二者都是与选择器有关,有的书又叫伪类选择器和伪元素选择器。②参考《CSS3权威指南》,是这么说的:  根据另外某种条件而非文档结构向文档中的某些部分应用样式,而且无法通过研究文档的标记准确地推断出采用何种方式应用样式。

  不同的地方:伪类为某些元素(甚至是文档本身)的状态所指示的幻像类制定样式。(强调元素,体现伪“类”).

        伪元素可以为文档中不一定具体存在的结构制定样式。(强调不一定具体存在,体现伪“元素").

伪元素的兼容性

  在CSS3选择器中已经将伪元素前面的一个冒号变为两个冒号了。在CSS2选择器中,老的规范中,伪类和伪元素都是一个冒号,新规范为了区分,伪元素统一用两个冒号“::”。因此以后在写CSS3时,推荐使用两个冒号。伪类用一个冒号,这也算一个区别吧。

转载于:https://www.cnblogs.com/cleaverlove/p/6269040.html

你可能感兴趣的文章
rsync搭建使用
查看>>
一台服务器上同时运行多个MySQL
查看>>
cenOS+nginx+php+mysql (非一键包安装)
查看>>
优秀程序员不一定是优秀的软件设计师
查看>>
JS系列
查看>>
在文件夹右键菜单中添加“进入DOS”命令的方法
查看>>
电脑蓝屏代码攻略
查看>>
我的友情链接
查看>>
我来自CSDN
查看>>
windowns
查看>>
java分享第十七天-02(封装操作excel类)
查看>>
在mysql表中插入大量测试数据
查看>>
怎么给电脑设置IP地址和DNS地址,各系统设置IP/DNS几种方法
查看>>
java 面试题解惑二 到底创建了几个String对象?
查看>>
面试总结之 oop desing 之 The Strategy Pattern
查看>>
必 备 习 题 集 (一)
查看>>
第 三 十 四 天:二 阶 段 复 习(五)
查看>>
windows下批量部署简易脚本
查看>>
python爬虫入门—统计豆瓣电影评论词频
查看>>
mysql由于server-id相同而造成同步失败
查看>>