首页 > 其他分享 >css选择器详解

css选择器详解

时间:2022-09-20 16:46:28浏览次数:69  
标签:el 样式 元素 value 详解 选择器 css 属性

CSS 选择器

CSS 选择器用于"查找"(或选取)要设置样式的 HTML 元素。

我们可以将 CSS 选择器分为五类:

  • 基本选择器(根据名称、id、类来选取元素)
  • 组合器选择器(根据它们之间的特定关系来选取元素)
  • 伪类选择器(根据特定状态选取元素)
  • 伪元素选择器(选取元素的一部分并设置其样式)
  • 属性选择器(根据属性或属性值来选取元素)

 

基本选择器

1、通配符选择器

* { }

* 代表页面中所有的元素

2、元素选择器

元素名称 { }

想改变某个元素的默认样式时或者统一文档某个元素的显示效果时

3、id 选择器

# id { }

id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式
id 是独一无二的

4、class 类选择器

.class { }

class 选择器用于描述一组元素的样式,
class 选择器有别于id选择器,class可以在多个元素中使用
一个元素可以设置多个类名

5、群组选择器

使用逗号(,)表示

h1, h2, p {
  text-align: center;
  color: red;
}

把多个选择器写在一起,方便样式的组织管理,组内的选择器是任意类型的。

组合器选择器

1、后代选择器

使用空格( )表示

div span{
    color: red;
}

表示div下存在的所有span

2、子代选择器

使用尖角号(>)表示,CSS3(新增)

div >span{
    color: red;
}

表示div下第一层的span,准确定义HTML文档某个或一组子元素的样式

3、相邻选择器

使用加号(+)表示,CSS3(新增)

指定与一个元素相邻的下一个元素的样式

伪类选择器

2、目标伪类选择器

:target
针对a标签的目标元素,锚点链接,跳转过去实现新的css样式

3、结构伪类选择器

  • (el):first-child 选择子元素中的第一个元素
  • (el):last-child 选择所有 el 元素的最后一个子元素
  • (el):nth-child(n) 选择所有 el 元素的父元素的第 n 个子元素
  • (el):nth-last-child(n) 选择所有 el 元素倒数的第 n 个子元素
  • (el):only-child 选择所有仅有一个子元素,并且子元素是 el 元素
  • (el):first-of-type 选择父元素中的第一个 el 元素
  • (el):last-of-type 选择父元素中最后一个 el 元素
  • (el):nth-of-type(n) 选择所有p元素第 n 个为 el 的子元素
  • (el):nth-last-of-type(n) 选择所有p元素倒数的第 n 个为 el 的子元素
  • (el):only-of-type 选择所有仅有一个子元素中为 el 的元素

          奇数:odd;偶数:even;number*n:可用于隔行变色,或特定位置的多个元素样式的设置

  • (el):empty 匹配没有子元素(包括文本节点)的 el 元素

4、否定伪类选择器

  • :not(el) 选择所有 el 以外的元素

           针对特殊元素不想设置css属性

5、状态(表单元素)伪类选择器

  • :focus 选择元素输入后具有焦点
  • :enabled 匹配每个已启用的元素
  • :disabled 匹配每个被禁用的元素
  • :checked 匹配每个已被选中的 元素
  • :required 选择有"required"属性指定的元素属性
  • :optional 选择没有"required"的元素属性
  • :read-only 选择只读属性的元素属性
  • :read-write 选择没有只读属性的元素属性
  • :valid 选择所有有效值的属性
  • :invalid 在表单元素中的值是非法时设置指定样式
  • :in-range 用于标签的值在指定区间值时显示的样式
  • :out-of-range 选择指定范围以外的值的元素属性

伪元素选择器

伪元素,是html中不存在的元素,仅在css中用来渲染的,伪元素创建了一个虚拟容器,
这个容器不包含任何DOM元素,但是可以包含内容

  • ::after 在内容后增加内容
  • ::before 在内容前增加内容
  • ::first-letter 选择器的首字母
  • ::first-line 选择器的首行
  • ::selection 被用户选取的部分

属性选择器

  • E[attr]:只使用属性名,但没有确定任何属性值
  • E[attr="value"]:指定属性名和属性值(值完整)
  • E[attr~="value"]:指定属性名,并且具有属性值,此属性值是一个词列表,并且以空格隔开,其中词列表中包含了一个value词
  • E[attr^="value"]:属性值是以value开头的(一部分也可以)
  • E[attr$="value"]:属性值是以value结束的(一部分也可以)
  • E[attr*="value"]:属性值中包含了value(一部分也可以)
  • E[attr|="value"]:属性值是value或者以“value-”开头的值

标签:el,样式,元素,value,详解,选择器,css,属性
From: https://www.cnblogs.com/qianduanLamp/p/16711431.html

相关文章

  • CSS-显示与隐藏[display、visibility、overflow]
    CSS-显示与隐藏[display、visibility、overflow]本质:让一个元素在页面中隐藏或者显示出来。1.display显示隐藏display属性用于设置一个元素应如何显示。display:none......
  • HTML5中的表单详解!
    表单是什么?对于用户而言是数据的录入和提交的界面对于网站而言获取用户信息的途径HTML<form>元素表示文档中的一个区域,此区域包含交互控件,用于向Web服务器提交信息......
  • 【前端】CSS:border
    border是CSS中用于设置元素边框的。第一个参数为线的粗细。除了数字型值外,还可以写:thin(细线)medium(中粗线)thick(粗线)第二个参数是线条样式,可选参数如下:小圆点:dotte......
  • python-命令行参数处理 getopt模块详解
    有时候我们需要写一些脚本处理一些任务,这时候往往需要提供一些命令行参数,根据不同参数进行不同的处理,在Python里,命令行的参数和C语言很类似(因为标准Python是用C语言实......
  • 前端面试总结01-html与css
    html:(1)语义化标签的理解:1.增加代码的可读性2.让搜索引擎更容易读懂(2)块级元素与内联元素的标签与区别1.块状元素:display:block/table;常用标签:div,h1,h2,table,ul......
  • 编写 CSS 以使其简洁易读时遵循的 26 条规则
    编写CSS以使其简洁易读时遵循的26条规则CSSStylelintErrorsExamples并非所有开发人员都遵循相同的规则在编写CSS时。如果您与前端开发人员团队合作,则尤其如......
  • JDBC入门详解
    JDBC概念JDBC就是Java操作关系型数据库的一套API,其中真正的实现类由不同的数据库驱动(也就是jar包)实现。JDBC连接数据库步骤创建项目,导入jar包注册驱动,即告诉Java代码......
  • .net Ioc 详解
    一、概念1.1什么是IOC?Ioc—InversionofControl,即 控制反转,其是一种 设计思想,而不是一种技术。在没有使用IOC之前,我们一般是通过new来实例化,从而创建一个对象。但是......
  • HTML详解、HTML标签分类
    什么是HTMLHTML(超文本标记语言——HyperTextMarkupLanguage)是构成Web世界的一砖一瓦。它定义了网页内容的含义和结构。除HTML以外的其它技术则通常用来描述一个网页......
  • Kafka为什么性能这么快?4大核心原因详解
    Kafka的性能快这是大厂Java面试经常问的一个话题,下面我就重点讲解Kafka为什么性能这么快的4大核心原因@mikechen1、页缓存技术Kafka是基于操作系统的页缓存(pagecach......