选择器

选择器是什么

  • 选择器就是选择元素的⽅式。
  • 选择元素⽅式的多样化造成选择器的多样化

选择器的分类(28个选择器)

1.全局选择器

  • 通配符 *:全局选择器就是通配符,通配符用于选择所有元素
    *{
    }
    示例:匹配body下所有的元素
 body *{
            margin: 0;
            padding: 0;
            list-style: none;
        }

2.基础选择器

  • 元素选择器 :选择器所有标签
  • id选择器 :选择一个标签
  • class选择器 :选择一组标签

3.属性选择器

  • 属性选择器:
  • 1.通过标签的属性匹配元素 。
  • 2.所有属性选择器都以方括号开头。
  • 1.[属性]
[target]{/*选择带有 target 属性的所有元素。*/
 样式
}
  • 2.[属性=属性值] {}
[target=_blank] 选择带有 target="_blank" 属性的所有元素。
    1. [属性^=属性值] {}
a[href^="https"] 选择其 href 属性值以 "https" 开头的每个 <a> 元素。
    1. [属性$=属性值]
a[href$=".pdf"] 选择其 href 属性值以 ".pdf" 结尾的每个 <a> 元素。
  • 5.[attribute~=value] [title~=flower] 选择带有包含 "flower" ⼀词的 title 属性的所有元素。
  • 6.[attribute|=value] [lang|=en] 选择带有以 "en" 开头的 lang 属性的所有元素。
  • 7.[attribute*=value]

示例:将属性为title的所有元素都设置上前景色。

[title]{
            color: rgb(81, 150, 182);
        }

示例:将属性title的属性值为二级标题的所有元素都设置上背景色。

[title=二级标题]{
            color: cadetblue;
        }

示例:将属性target的属性值为_blank的所有元素都设置上删除线。
超链接的原有属性的value值要添加引号。

[target="_blank"]{
            text-decoration: line-through;
        }

示例:将属性href的属性值为http://www.baidu.com的所有元素都设置上前景色。
^:指定了属性名,并且有属性值,属性值是以http://www.baidu.com开头的;

a[href^="http://www.baidu.com"]{
            color: black;
        }

示例:将属性target的属性值为"_blank"的所有元素都设置上前景色。
$:指定了属性名,并且有属性值,属性值是以_blank结尾的;

 a[target$="_blank"]{
            color: rgb(188, 95, 95);
        }

示例:将属性href的属性值结尾为net的所有元素都添加文字。
$:指定了属性名,并且有属性值,属性值是以net结尾的;

 [href$=net]::after{
            content: "我爱你";
        }

4,伪类选择器

伪类选择器的标志就是单冒号:
只能匹配元素不能创建元素

  • :link:匹配未点击的超链接
  • :hover:匹配悬停/悬浮状态的元素
  • :active: 匹配激活状态(鼠标按下)的元素
  • :visited:匹配访问过(抬起鼠标)的超链接
  • :focus :匹配焦点元素(不是所有元素都拥有焦点,像表单标签,超链接都拥有焦点)
  • :ntn-child :匹配第n个子元素
  • :flrst-child:匹配第一个子元素
  • :last-child:匹配最后一个子元素
  • :root :匹配根元素
  • :not() :匹配不是某个元素的元素
  • :checked:匹配选中的元素
超链接伪类
<style>
        /* 1.匹配未点击的超链接 */
        a:link{
            color: cadetblue;
        }
        /* 2.匹配悬停/悬浮状态的元素 */
        a:hover{
            color: #000;
        }
        /* 3. 匹配激活状态(鼠标按下)的元素*/
        a:active{
            color: cornflowerblue;
        }
        /* 4.匹配访问过(抬起鼠标)的超链接 */
        a:visited{
            color: rgb(255, 0, 0);
        }
    </style>
</head>
<body>
    网易云
</body>
:focus 实列

点击之后触发焦点元素,修改背景色

  input:focus{
            background-

携卷:
            color: rgb(81, 150, 182);
        }

示例:将属性title的属性值为二级标题的所有元素都设置上背景色。

[title=二级标题]{
            color: cadetblue;
        }

示例:将属性target的属性值为_blank的所有元素都设置上删除线。
超链接的原有属性的value值要添加引号。

[target="_blank"]{
            text-decoration: line-through;
        }

示例:将属性href的属性值为http://www.baidu.com的所有元素都设置上前景色。
^:指定了属性名,并且有属性值,属性值是以http://www.baidu.com开头的;

a[href^="http://www.baidu.com"]{
            color: black;
        }

示例:将属性target的属性值为"_blank"的所有元素都设置上前景色。
$:指定了属性名,并且有属性值,属性值是以_blank结尾的;

 a[target$="_blank"]{
            color: rgb(188, 95, 95);
        }

示例:将属性href的属性值结尾为net的所有元素都添加文字。
$:指定了属性名,并且有属性值,属性值是以net结尾的;

 [href$=net]::after{
            content: "我爱你";
        }

5.伪元素选择器

伪元素选择器的标志是双冒号
可以创建元素

  • ::after
  • ::before
  • ::first-line:选中的第一段。
  • ::first-letter :选中第一个。
::first-letter的示例:选中段落p的第一个文字。
 p::first-letter{
            font-size: 2rem;
            color: rgb(110, 63, 1);
        }
::first-letter的示例:选中段落p的第一段文字设置上划线。
 p::first-line{
            text-decoration: overline;
        }

6.组合选择器

组合选择器就算把上面五类选择器放在一起使用

  • 1.分组选择器 :使用逗号组合(匹配到使用逗号分割的每一项)
  • 2.后代选择器 :使用空格组合 (匹配当前元素的所有后代元素)
  • 3.子元素选择器 :使用 > 组合(匹配当前元素的所有子元素)
  • 4.相邻兄弟选择器:使用 + 组合 (匹配当前元素后面的兄弟元素)
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容