CSS3选择器大全[通俗易懂]

CSS3选择器大全[通俗易懂]1.CSS3选择器属性选择器在HTML中,通过各种各样的属性可以给元素增加很多附加的信息。例如,通过id属性可以将不同div元素进行区分。input[type="text"]{width:150px;display:block;margin-bottom:10px;background-color:yellow;font-family:Verdana…

大家好,又见面了,我是你们的朋友全栈君。

1.CSS3选择器 属性选择器
在HTML中,通过各种各样的属性可以给元素增加很多附加的信息。例如,通过id属性可以将不同div元素进行区分。

input[type="text"]
{ width:150px; display:block; margin-bottom:10px; background-color:yellow; font-family: Verdana, Arial; }

在CSS2中引入了一些属性选择器,而CSS3在CSS2的基础上对属性选择器进行了扩展,新增了3个属性选择器,使得属性选择器有了通配符的概念,这三个属性选择器与CSS2的属性选择器共同构成了CSS功能强大的属性选择器。如下表所示:

这里写图片描述

2.CSS3 结构性伪类选择器—root
:root选择器,从字面上我们就可以很清楚的理解是根选择器,他的意思就是匹配元素E所在文档的根元素。在HTML文档中,根元素始终是<html>
:root选择器等同于<html>元素,简单点说:

:root{background:orange}
html {background:orange;}

得到的效果等同。
建议使用:root方法。

3.CSS3 结构性伪类选择器—not
:not选择器称为否定选择器,和jQuery中的:not选择器一模一样,可以选择除某个元素之外的所有元素。
就拿form元素来说,比如说你想给表单中除submit按钮之外的input元素添加红色边框,CSS代码可以写成:

input:not([type="submit"]){ border:1px solid red; }

4.CSS3 结构性伪类选择器—empty
:empty选择器表示的就是空。用来选择没有任何内容的元素,这里没有内容指的是一点内容都没有,哪怕是一个空格。
比如说,你的文档中有三个段落p元素,你想把没有任何内容的P元素隐藏起来。我们就可以使用:empty选择器来控制。

p:empty { display: none; }

5.CSS3 结构性伪类选择器—target
:target选择器称为目标选择器,用来匹配文档(页面)的url的某个标志符的目标元素。

6.CSS3 结构性伪类选择器—first-child
:first-child选择器表示的是选择父元素的第一个子元素的元素E。简单点理解就是选择元素中的第一个子元素,记住是子元素,而不是后代元素。

7.CSS3 结构性伪类选择器—last-child
:last-child选择器与:first-child选择器作用类似,不同的是:last-child选择器选择的是元素的最后一个子元素。

8.CSS3 结构性伪类选择器—nth-child(n)
:nth-child(n)选择器用来定位某个父元素的一个或多个特定的子元素。其中“n”是其参数,而且可以是整数值(1,2,3,4),也可以是表达式(2n+1、-n+5)和关键词(odd、even),但参数n的起始值始终是1,而不是0。也就是说,参数n的值为0时,选择器将选择不到任何匹配的元素。

经验与技巧:当“:nth-child(n)”选择器中的n为一个表达式时,其中n是从0开始计算,当表达式的值为0或小于0的时候,不选择任何匹配的元素。如下表所示:
这里写图片描述

9.CSS3 only-child选择器
:only-child选择器选择的是父元素中只有一个子元素,而且只有唯一的一个子元素。也就是说,匹配的元素的父元素中仅有一个子元素,而且是一个唯一的子元素。

10.CSS3选择器 :enabled和:disabled选择器
在Web的表单中,有些表单元素有可用(“:enabled”)和不可用(“:disabled”)状态,比如输入框,密码框,复选框等。在默认情况之下,这些表单元素都处在可用状态。那么我们可以通过伪选择器:enabled对这些表单元素设置样式。

:disabled选择器刚好与:enabled选择器相反,用来选择不可用表单元素。要正常使用:disabled选择器,需要在表单元素的HTML中设置“disabled”属性。

11.CSS3选择器 :checked选择器
在表单元素中,单选按钮和复选按钮都具有选中和未选中状态。(大家都知道,要覆写这两个按钮默认样式比较困难)。在CSS3中,我们可以通过状态选择器:checked配合其他标签实现自定义样式。而:checked表示的是选中状态。

12.CSS3选择器 ::selection选择器
::selection伪元素是用来匹配突出显示的文本(用鼠标选择文本时的文本)。浏览器默认情况下,用鼠标选择网页文本是以“深蓝的背景,白色的字体”显示的。

13.CSS3选择器 :read-only和read-write选择器
:read-only伪类选择器用来指定处于只读状态元素的样式。简单点理解就是,元素中设置了“readonly=’readonly’”

:read-write选择器刚好与:read-only选择器相反,主要用来指定当元素处于非只读状态时的样式。

14.CSS3选择器 ::before和::after
::before::after这两个主要用来给元素的前面或后面插入内容,这两个常和”content”配合使用,使用的场景最多的就是清除浮动。

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157193.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • J1939CANTP

    J1939CANTPSAEJ1939在卡车领域得到了广泛的认可,由多个文档组成,描述了从物理层到诊断层以及应用层的通信协议层。SAEJ1939-21描述了数据链路和传输层,包括两种传输协议变体:用于广播消息的BAM(广播宣布消息),以及CMDT(连接模式数据传输)用于点对点连接。该规范定义了SAEJ1939-21的传输协议如何在AUTOSAR体系结构中实现。它只描述了与AUTOSAR体系结构相关的实现部分。协议特定的细节,如精确的计时,不属于本规范的一部分。因此,为了能够实现J1939…

    2022年5月3日
    83
  • 2021Java高级面试题及答案,太牛了!

    2021Java高级面试题及答案,太牛了!什么是RPC?RPC原理是什么?什么是RPC?RPC(RemoteProcedureCall)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。比如两个不同的服务A、B部署在两台不同的机器上,那么服务A如果想要调用服务B中的某个方法该怎么办呢?使用HTTP请求当然可以,但是可能会比较慢而且一些优化做的并不好。RPC的出现就是为了解决这个问题。RPC原理是什么?服务消费方(client)调用以本地调用方式调用服务;client

    2022年7月18日
    18
  • laravel-admin 安装(总结)

    laravel-admin 安装(总结)

    2021年10月29日
    42
  • MFC控件 — 进度条【案例】「建议收藏」

    MFC控件 — 进度条【案例】「建议收藏」打开游戏或者其他一些软件时,时常会看到刚开始时有一个进度条在加载,有点酷炫的感觉。对于MFC进度条的使用,下面用一个案例介绍一下。案例:进度条单步加载和自动连续加载步骤:1.按下图在对话框中添加一个进度条,一个编辑框,和3个按钮,并为进度条添加一个控件变量进度条变量:m_Progress2.在初始化函数中对进度条进行初始化,代码如下:BOOLCSpinDlg::OnInitDia…

    2022年7月16日
    17
  • generic host process for win32_hostunreachable怎么解决

    generic host process for win32_hostunreachable怎么解决本人使用的windows2003sp1英文版。昨天开始总是莫明其妙出现GenericHostProcess进程出错提示框,紧跟着svchost内存出错提示框, 之后一些service就停止工作,比如WindowsAudio,必须手动重启才能听音乐;网络连接假死,tcp连接需要重连,不胜其扰。上网搜了些文章,基本上分为三个原因:1,木马病毒。2,系统漏洞。3,硬件驱动问题

    2022年10月10日
    0
  • Python上位机软件图形界面实战(2)[通俗易懂]

    Python上位机软件图形界面实战(2)[通俗易懂]前言上位机图形界面开发设计用QTDesigner就可以了。但是qtdesigner生成的是.ui文件,我们需要将.ui转换为我们用的py文件。这里就要用到昨天设置Pyuic来生成。由于只是初步开发所以设计的界面没有美化,只是体验一下功能就可以了。1Pyuic的修改今天做的时候才发现昨天的Pyuic没设置好。下来在昨天的基础上只修改这两行。-mPyQt5.uic.pyuic$F…

    2022年5月29日
    49

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号