2.CSS选择器

标记选择器(元素选择器):

  • 标签选择器可以选中所有的标签元素,比如div,ul,li ,p等等,不管标签藏的多深,都能选中,选中的是所有的,而不是某一个,所以说 “共性” 而不是 ”特性“
div{
    color:red;
    font-size: 100px;
}

类选择器:

  • 对任何合法的HTML标签都可以使用class属性
  • class属性用于定义页面上的HTML元素标记组,给指定的一组标记设置相同的样式规则
  • 如果是多个类要用空格分隔
  • 设置class属性后,使用类选择器是由点号“.”及类名称直接相连构成

截取片段:

    <style>
        .c2{color: red;font-weight: bold;}
        .c3{font-style: italic;}
    </style>
</head>
<body>
    <div>
        <p>小白</p>
    </div>
    <p class="c2">著名诗人</p>
    <ol class="c1">
        <li class="c2">李白</li>
        <li class="c3 c4">杜甫</li>
        <li>李牧</li>
    </ol>
联合选择器
  • 标记选择器和类选择器联合使用
  • 使用方式:标记选择器与类选择器直接相连

代码片段:

    <style>
        .c2{color: red;font-weight: bold;}
        .c3{font-style: italic;}
		/*类选择器*/
        p.c2{color: green;font-size: 20px;}
        li.c3{color: red;}
		/*联合选择器*/
    </style>
</head>
<body>
    <div>
        <p>小白</p>
    </div>
    <p class="c2">著名诗人</p>
    <ol class="c1">
        <li class="c2">李白</li>
        <li class="c3 c4">杜甫</li>
        <li>李牧</li>
    </ol>

id选择器:

  • 只有页面上的标记(body标记及其子标记)才能具有给定的id
  • 在同一页面中的id必须唯一
  • id属性的取值要以字母开头(由字母、数字、下划线、连字符组成,最好使用前三个)
  • 使用id选择器由井号“#”以及id属性值直接相连构成

代码片段:

    <style>
        #right{
            color: red;
            text-align: right;
            font-size: 20px;
        }
    </style>
</head>
<body>
    <p id="right">使用id选择器设置样式</p>

全局声明(通用选择器):

  • 选中所有的标签,给所有的标签渲染

代码片段:

    <style>
        *{
            color: red;
        }
    </style>
</head>
<body>
    <h1>标题</h1>
    <p>小白</p>
    <a href="">超链接</a>

组合选择器

派生选择器(后代):

  • 使用 空格 表示后代选择器。顾名思义,父元素的后代(包括儿子,孙子,重孙子)

代码片段:

    <style>
        div a{ 
            /*div标签下的所有a标签*/
            color: red;
        }
    </style>
</head>
<body>
    <div>
        <a href="">华为</a>  /*变红*/
        <p>
            <a href="">红米</a>  /*变红*/
        </p>
        <a href="">小米</a>  /*变红*/
    </div>
    <a href="">苹果</a>

子代选择器:

  • 使用 > 表示子代选择器。比如div>p,仅仅表示的是当前div元素选中的子代(不包含孙子…)元素p。

代码片段:

    <style>
		/*div标签下的第一层a标签*/
        div>a{
            color: red;
        }
    </style>
</head>
<body>
    <div>
        <a href="">华为</a>  /*变红*/
        <p>
            <a href="">红米</a>
        </p>
        <a href="">小米</a>  /*变红*/
    </div>
    <a href="">苹果</a>

集体声明(并集选择器):

  • 多个选择器之间使用 逗号 隔开。表示选中的页面中的多个标签。一些共性的元素,可以使用并集选择器

代码片段:

    <style>
        p,h1{
            color: red;
        }
    </style>
</head>
<body>
    <p>段落1</p>  /*变红*/
    <a href="">超链接</a>
    <h1>h1标签</h1>  /*变红*/
</body>

相邻选择器:

  • 选择紧接着一个标签后的另一个标签,两者有相同的父标签
  • 相邻兄弟选择器使用了加号(+)

代码片段:

    <style>
        div+a{
            color: red;
        }
    </style>
</head>
<body>
    <a href="">三星</a>
    <div>
        <a href="">华为</a>
        <p>
            <a href="">红米</a>
        </p>
        <a href="">小米</a>
    </div>
    <a href="">苹果</a>  /*变红*/
    <a href="">百度</a>

弟弟选择器:

  • 在同一父标签下,一个标签后面另一个标签(所有)全为这个标签的“弟弟”
  • 使用波浪符(~)

代码片段:

    <style>
        div~a{
            color: red;
        }
    </style>
</head>
<body>
    <a href="">三星</a>
    <div>
        <a href="">华为</a>
        <p>
            <a href="">红米</a>
        </p>
        <a href="">小米</a>
    </div>
    <a href="">苹果</a>  /*变红*/
    <a href="">百度</a>  /*变红*/

CSS属性选择器:

  • 属性选择器,字面意思就是根据标签中的属性,选中当前的标签。

基本属性选择器

  • 定义属性选择器时,需要通过方括号([])将属性包围住
  • [匹配的属性]{属性:值;...} 选择所有包含该属性的标签
  • 标签[匹配的属性]{} 选择该标签且包含该属性的标签

代码片段:

    <style>
        [title]{
            color: red;
        }
		input[type]{
            background-color: green;
		}
    </style>
</head>
<body>
    <div title="div标签">
        <p>段落1</p>          /*变红*/
    </div>
	<input type="text">      /*变绿*/

属性和值选择器

  • 以指定“属性/值”的所有标记设置样式
  • [属性=属性值]{}
  • 标签[属性=属性值]{}

代码片段:

    <style>
        [title=div标签]{
            color: red;
        }
    </style>
</head>
<body>
    <div title="div标签">
        <p>段落1</p>             /*变红*/
    </div>
    <div title="div2">
        <p>段落2</p>
    </div>
</body>

多个值的属性和值选择器

  • 可以对具有指定值的某个属性的所有标记设置样式(使用于由空格分隔的属性值)
  • [属性~=value]{} 属性值是以空格分隔的词汇列表中一个单独的词
  • [属性^=value]{} 属性值是以value开头的
  • [属性$=value]{} 属性值是以value结尾的
  • [属性*-value]{} 属性值中包含了value的
  • [属性|=value]{} 属性值是value或者以"value-"开头的

伪类选择器:

  • 伪类选择器一般会用在超链接a标签中
  • 用法:标签:伪类名{}
伪类名说明
link设置a标签在未被访问前的样式
visited设置a标签在被访问之后的样式
hover设置a标签在鼠标悬停时的样式(不止用于a标签)
active设置a标签在被鼠标摁住的时候的样式
focus向拥有键盘输入焦点的元素添加样式。
first-child设置第一个子标签的样式
lang设置具有lang属性的标签的样式

伪元素选择器

伪元素说明
first-letter设置第一个字符的样式(用于块级元素)
first-line设置第一行的样式表(用于块级元素)
before在元素的内容前面插入新内容(结合content属性使用)
after在元素内容的后面插入新内容(结合content属性使用)

代码片段:

    <style>
        a:link{
            color: red;
        }
        a:visited{
            color: aqua;
        }
        a:hover{
            color: deeppink;
        }
        a:active{
            color: green;
        }
        p:first-letter{
            font-size: 20px;
            color: blue;
        }
        p:before{
            content: "?";
            font-size: 50px;
            color: brown;
        }
        p:after{
            content: "!";
            font-size: 50px;
            color: brown;
        }
    </style>
</head>
<body>
    <a href="https://www.w3school.com.cn/index.html">w3c</a>
    <p>段航</p>

知识来源于网上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值