【前端面试题1】伪类与伪元素有什么区别

伪类与伪元素的区别:

1.伪类使用单冒号,而伪元素使用双冒号。如 :hover 是伪类,::before 是伪元素
2.伪元素会在文档流生成一个新的元素,但伪元素本身并不是DOM元素,并且可以使用 content 属性设置内容


CSS伪类与伪元素选择器列举

伪元素

  • ::before
  • ::after
  • ::selection
  • ::placeholder
  • ::marker

伪类

  • :hover
  • :first-child
  • :last-child
  • :nth-child
选择器例子例子描述
:activea:active选择活动的链接。
:checkedinput:checked选择每个被选中的 元素。
:disabledinput:disabled选择每个被禁用的 元素。
:emptyp:empty选择没有子元素的每个元素。
:enabledinput:enabled选择每个已启用的 元素。
:first-childp:first-child选择作为其父的首个子元素的每个元素。
:first-of-typep:first-of-type选择作为其父的首个元素的每个元素。
:focusinput:focus选择获得焦点的 元素。
:hovera:hover选择鼠标悬停其上的链接。
:in-rangeinput:in-range选择具有指定范围内的值的 元素。
:invalidinput:invalid选择所有具有无效值的 元素。
:lang(language)p:lang(it)选择每个 lang 属性值以 “it” 开头的元素。
:last-childp:last-child选择作为其父的最后一个子元素的每个元素。
:last-of-typep:last-of-type选择作为其父的最后一个元素的每个元素。
:linka:link选择所有未被访问的链接。
:not(selector):not§选择每个非元素的元素。
:nth-child(n)p:nth-child(2)选择作为其父的第二个子元素的每个元素。
:nth-last-child(n)p:nth-last-child(2)选择作为父的第二个子元素的每个元素,从最后一个子元素计数。
:nth-last-of-type(n)p:nth-last-of-type(2)选择作为父的第二个元素的每个元素,从最后一个子元素计数
:nth-of-type(n)p:nth-of-type(2)选择作为其父的第二个元素的每个元素。
:only-of-typep:only-of-type选择作为其父的唯一元素的每个元素。
:only-childp:only-child选择作为其父的唯一子元素的元素。
:optionalinput:optional选择不带 “required” 属性的 元素。
:out-of-rangeinput:out-of-range选择值在指定范围之外的 元素。
:read-onlyinput:read-only选择指定了 “readonly” 属性的 元素。
:read-writeinput:read-write选择不带 “readonly” 属性的 元素。
:requiredinput:required选择指定了 “required” 属性的 元素。
:rootroot选择元素的根元素。
:target#news:target选择当前活动的 #news 元素(单击包含该锚名称的 URL)。
:validinput:valid选择所有具有有效值的 元素。
:visiteda:visited选择所有已访问的链接。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/712117.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

卷积神经网络基本概念补充

卷积(convolution)、通道(channel) 卷积核大小一般为奇数,有中心像素点,便于定位卷积核。 步长(stride)、填充(padding) 卷积核移动的步长(stride…

小白提示您:FaceTime诈骗持续高发,小伙伴们谨防诈骗!

前几天小白的iPhone突然接到了个FaceTime通话请求,说是某抖音账号需要续费啥的才能解锁某些功能。(具体小白也记不太清了) 这几天也有朋友说有个支付宝客服打FaceTime通话给他说快递出现了点问题,需要操作认证一下才能退款啥的。…

多线程万字详解

进程和线程是计算机程序执行的两个重要概念。 1.进程: 进程是操作系统分配资源的基本单位,每个进程都有自己独立的地址空间,每启动一个进程,系统就会为它分配内存。进程间通信比较复杂,需要用到IPC(InterP…

js监听F11触发全屏事件

当用户使用 F11 键进行浏览器全屏时,由于此时并非通过浏览器提供的 Fullscreen API 进入全屏模式,因此无法通过 fullscreenchange 事件来监听全屏状态的变化。在这种情况下,可以通过监听 resize 事件来检测浏览器窗口大小的变化,从…

【学习日记】快速排序

思想 快速排序之所以快,一个重要原因就是其每一次遍历,都把本轮要排序的数字(称为轴)放到了最终的位置上快排使用分治思想,所以一般采用递归实现,非递归版本可以用栈根据第一点,我们需要一个函…

[渗透教程]-006-渗透测试-Metasploit

文章目录 1.Metasploit简介2.配置2.1方法1 推荐2.2方法23.使用4. Metasploitable2-linuxMetasploit攻击流程攻击实例步骤会话管理1.Metasploit简介 Metasploit是一个渗透测试平台,使您能够查找,利用和验证漏洞.是一个免费的可下载的,通过它可以很容易对计算机软件漏洞实施攻击.…

AttributeError_ ‘list‘ object has no attribute ‘view‘

问题描述 训练yolov9的时候遇到了下面的问题。 In loss_tal.py: pred_distri, pred_scores torch.cat([xi.view(feats[0].shape[0], self.no, -1) for xi in feats], 2).split( (self.reg_max * 4, self.nc), 1) The error is as follows: AttributeError: list …

JavaWeb之 Web概述

目录 前言1.1 Web和 JavaWeb的概念1.2 JavaWeb技术栈1.2.1 B/S架构1.2.2 静态资源1.2.3 动态资源1.2.4 数据库1.2.5 HTTP协议1.2.6 Web服务器 1.3 JavaWeb 学习内容 前言 博主将用 CSDN 记录 Java 后端开发学习之路上的经验,并将自己整理的编程经验和知识分享出来&a…

【Web自动化测试——代码篇十二】自动化测试模型——数据驱动测试和关键字驱动测试

🔥 交流讨论:欢迎加入我们一起学习! 🔥 资源分享:耗时200小时精选的「软件测试」资料包 🔥 教程推荐:火遍全网的《软件测试》教程 📢欢迎点赞 👍 收藏 ⭐留言 &#x1…

「优选算法刷题」:删除字符串中的所有相邻重复项

一、题目 给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。 在 S 上反复执行重复项删除操作,直到无法继续删除。 在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。 示例: 输…

理解C#里面的集合有哪些?怎么用,什么是安全集合?

介绍 在C#中,集合是一种用于存储和操作多个元素的数据结构。它们提供了各种操作,如添加、删除、查找等,以及遍历集合中的元素。集合通常根据其实现方式和行为特征进行分类。 集合继承IEnumerable 在C#中,几乎所有的集合类型都实现…

简历中自我评价,是否应该删掉?

你好,我是田哥 年后,不少朋友已经开始着手准备面试了,准备面试的第一个问题就是:简历。 写简历是需要一些技巧的,你的简历是要给面试官看,得多留点心。 很多简历上都会写自我评价/个人优势/个人总结等&…

2024有哪些免费的mac苹果电脑深度清理工具?CleanMyMac X

苹果电脑用户们,你们是否经常感到你们的Mac变得不再像刚拆封时那样迅速、流畅?可能是时候对你的苹果电脑进行一次深度清理了。在这个时刻,拥有一些高效的深度清理工具就显得尤为重要。今天,我将介绍几款优秀的苹果电脑深度清理工具…

一个Web3项目的收官之作,必然是友好的用户界面(Web3项目三实战之四)

正如标题所述,一个对用户体验友好的应用,总是会赢得用户大加赞赏,这是毋庸置疑的。 甭管是web2,亦或是已悄然而至的Web3,能有一个外观优美、用户体验效果佳的的界面,那么,这个应用无疑是个成功的案例。 诚然,Web3项目虽然核心是智能合约攥写,但用户界面也是一个DApp不…

【Leetcode每日一刷】哈希表|纲领、242.有效的字母异位词、349. 两个数组的交集

纲领 🔗代码随想录理论部分 关于哈希表这个数据结构就不再重复讲了,下面对几个关键点记录一下: 哈希碰撞 解决方法1:拉链法 解决方法2:线性探测法 下面针对做题要用到的三种结构讲一下(也是重复造轮子了…

vue.config.js publicPath 和 vue-router base 结合配置项目根目录为二级目录案例

背景: 同个域名下需要有 PC 管理后台, H5 端, 企业微信 ......等多个端, 需要在一个域名下通过不同的路径来区分不同的项目; 例如: abc.com/pc, abc.com/h5, abc.com/wx-work.... 此处做个记录 步骤: 1. 修改 vue.config.js 中的 publicPath module.exports {outputDir:…

MATLAB|【免费】概率神经网络的分类预测--基于PNN的变压器故障诊断

目录 主要内容 部分代码 结果一览 下载链接 主要内容 ​《MATLAB神经网络43个案例分析》共有43章,内容涵盖常见的神经网络(BP、RBF、SOM、Hopfield、Elman、LVQ、Kohonen、GRNN、NARX等)以及相关智能算法(SVM、决策…

Java 下载excel文件

一、背景 微信小程序需要导出excel文件,后端技术Java,前端使用uniapp框架,使用excel模板。 二、excel 报表模板 需要补充的内容是以下标记问号的,其中有个表格,内容是动态添加的 三、Java端代码实现 关键步骤&…

Topaz Video AI:一键提升视频品质,智能重塑影像魅力 mac/win版

Topaz Video AI是一款革命性的视频智能处理软件,它利用先进的机器学习和人工智能技术,为视频创作者提供了前所未有的视频增强和修复功能。无论您是专业视频编辑师、摄影师,还是热爱视频创作的爱好者,Topaz Video AI都能帮助您轻松…

webpack打包效率优化,webpack打包体积优化

优化 webpack 打包效率的方法 使用增量构建和热更新:在开发环境下,使用增量构建和热更新功能,只重新构建修改过的模块,减少整体构建时间。避免无意义的工作:在开发环境中,避免执行无意义的工作&#xff0c…