您现在的位置是:网站首页> 编程资料编程资料
css3 伪元素和伪类选择器详解详解如何使用CSS3中的结构伪类选择器和伪元素选择器解析CSS中的伪元素及其与伪类的区别详解CSS中的伪类与伪元素及二者间的区别浅谈CSS伪类与伪元素CSS伪类和伪元素的区别详解CSS伪类/伪元素选择器整理css伪类伪元素域高级选择器的介绍CSS伪类与CSS伪元素的区别及由来具体说明浅谈CSS 伪元素&伪类的妙用
2021-09-06
823人已围观
简介 无论是伪类还是伪元素,都属于CSS选择器的范畴。所以它们的定义可以在CSS标准的选择器章节找到。分别是 CSS2.1 Selectors 和 CSS Selector Level 3,两者都已经是推荐标准。
伪类选择器:CSS中已经定义好的选择器,不能随便取名
常用的伪类选择器是使用在a元素上的几种,`如a:link|a:visited|a:hover|a:active`
提示:在 CSS 定义中,a:hover 必须被置于 a:link 和 a:visited 之后,才是有效的。
提示:在 CSS 定义中,a:active 必须被置于 a:hover 之后,才是有效的。
伪元素选择器:并不是针对真正的元素使用的选择器,而是针对CSS中已经定义好的伪元素使用的选择器。
CSS中有如下四种伪元素选择器:
· first-line:为某个元素的第一行文字使用样式;
· first-letter:为某个元素中的文字的首字母或第一个字使用样式;
· before:在某个元素之前插入一些内容;
· after: 在某个元素之后插入一些内容;
使用方法:选择器:伪元素{样式}
结构性伪类选择器
1. 四个最基本的:root、not、empty、target
2. first-child、last-child、nth-child、nth-last-child、
nth-child(odd)、nth-child(even)、nth-last-child(odd)、nth-last-child(even)
3. nth-of-type、nth-last-of-type
4. 循环使用样式
5. only-child
:root()选择器,从字面上我们就可以很清楚的理解是根选择器,他的意思就是匹配元素E所在文档的根元素。在HTML文档中,根元素始终是。“:root”选择器等同于元素
:not()选择器称为否定选择器,和jQuery中的:not选择器一模一样,可以选择除某个元素之外的所有元素。
:empty()选择器表示的就是空。用来选择没有任何内容的元素,这里没有内容指的是一点内容都没有,哪怕是一个空格。
:target()选择器来对页面某个target元素(该元素的id被当做页面中的超链接来使用)指定样式,该样式只在用户点击了页面中的超链接,并且跳转到target元素后起作用
“:first-child()”选择器表示的是选择父元素的第一个子元素的元素E。简单点理解就是选择元素中的第一个子元素,记住是子元素,而不是后代元素。
:nth-child()选择某个元素的一个或多个特定的子元素;
:nth-last-child()从某父元素的最后一个子元素开始计算,来选择特定的元素。
看下面一个例子:
前端
开发
工程
软件
工程
:nth-child()可以选择某个的一个或多个特定的子元素,你可以按这种方式进行选择:
:nth-child(length);/*参数是具体数字*/
:nth-child(n);/*参数是n,n从0开始计算*/
:nth-child(n*length)/*n的倍数选择,n从0开始算*/
:nth-child(n+length);/*选择大于length后面的元素*/
:nth-child(-n+length)/*选择小于length前面的元素*/
:nth-child(n*length+1);/*表示隔几选一*/
//上面length为整数
值得注意的是:nth-child(0)没有选择元素,nth-child(1)选择第一个元素。
“:nth-of-type(n)”选择器和“:nth-child(n)”选择器非常类似,不同的是它只计算父元素中指定的某种类型的子元素。当某个元素中的子元素不单单是同一种类型的子元素时,使用“:nth-of-type(n)”选择器来定位于父元素中某种类型的子元素是非常方便和有用的。
":only-child"表示的是一个元素是它的父元素的唯一一个子元素。
伪元素:
CSS中的伪元素大家以前看过::first-line,:first-letter,:before,:after;
那么在CSS3中,他对伪元素进行了一定的调整,在以前的基础上增加了一个“:”也就是现在变成了“::first-letter,::first-line,::before,::after”另外他还增加了一个“::selection”,两个“::”和一个“:”css3中主要用来区分伪类和伪元素,到目前来说,这两种方式都是被接受的,也就是说不管使用哪种写法所起的作用都是一样的,只是一个书写格式不同而以。
::first-line选择元素的第一行,比如说改变每个段落的第一行文本的样式,我们就可以使用这个
p::first-line {font-weight:bold;}
::before和::after这两个主要用来给元素的前面或后面插入内容,这两个常用"content"配合使用,见过最多的就是清除浮动,
.clearfix:before,
.clearfix:after {
content: ".";
display: block;
height: 0;
visibility: hidden;
}
.clearfix:after {clear: both;}
.clearfix {zoom: 1;}
::selection用来改变浏览网页选中文的默认效果
相关内容
- CSS绝对定位元素left设为50%实现水平居中绝对定位元素被遮挡的解决方法绝对定位的元素在ie6下不显示隐藏了的有效解决方法IE7中绝对定位元素之间的遮盖问题示例探讨将一个绝对定位的div水平垂直居中对齐css教程之绝对定位使用详解有关绝对定位的全面理解
- CSS3实现的文本3D效果附图css3中transform属性实现的4种功能详解CSS3.0(Cascading Style Sheet) 层叠级联样式表纯CSS3实现div按照顺序出入效果CSS3实现列表无限滚动/轮播效果css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效CSS3实现的侧滑菜单CSS3实现的3D隧道效果用CSS3画一个爱心css3 实现文字闪烁效果的三种方式示例代码六种css3实现的边框过渡效果
- 纯CSS打造忙碌光标适用于忙碌等待的情况CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- 浏览器特定的CSS Hacks汇总CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- 设置DIV最小高度以及高度自适应随着内容的变化而变化独行DIV自适应宽度布局CSS实例与应用范围CSS min-height IE6、IE7、FF下DIV自适应高度CSS 实现div宽度根据内容自适应
- CSS失效怎么办?请检查网页最头部是否包含Doctype标签HTML网页头部代码实例详解HTML 网页头部代码全清楚网页头部css代码优化实例网页头部优化建议
- 用CSS实现三列DIV等高布局以传达更好的视觉效果一文汇总 CSS 两列布局和三列布局的具体使用利用CSS3的flexbox实现水平垂直居中与三列等高布局CSS实现页面两列布局与三列布局的方法示例CSS三列布局的多种表现形式CSS三列布局两端固定宽度中间自适应CSS教程:三列固定网页布局实例详解CSS多种三列自适应布局实现
- css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单纯CSS制作的响应式折叠菜单分享纯CSS实现圆角折叠菜单的方法CSS3实现的支持同时折叠多个菜单的手风琴菜单特效源码 CSS3实现的垂直手风琴折叠菜单特效源码jQuery/CSS3实现的可折叠侧边栏菜单特效源码基于CSS3实现的3D折叠展开动画菜单特效源码基于jquery+css3实现左右摇摆可滑动展开折叠圆形导航菜单纯css实现多级折叠菜单折叠树效果
- 一款纯css3实现的圆形旋转分享按钮旋转角度可自己调整css3中transform属性实现的4种功能详解CSS3.0(Cascading Style Sheet) 层叠级联样式表纯CSS3实现div按照顺序出入效果CSS3实现列表无限滚动/轮播效果css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效CSS3实现的侧滑菜单CSS3实现的3D隧道效果用CSS3画一个爱心css3 实现文字闪烁效果的三种方式示例代码六种css3实现的边框过渡效果
- 用纯css3实现的图片放大镜特效效果非常不错css3动画鼠标放上图片逐渐变大鼠标离开图片逐渐缩小效果基于CSS3实现鼠标滑过图片上移代码无需JS和jQuery代码实现CSS3鼠标浮动放大图片