CSS常用选择器

基本选择器

外部样式

<link rel="stylesheet" href="CSS选择器.css">

内部样式

<style>

    p {

        background:rgb(76, 34, 41);

        color:yellow;

    }

</style>

行内样式

<span style="color: blue;">aaa</span>

 

当三者同时使用时,

行内样式>内部样式=外部样式(后两者谁优先看谁在上面)

CSS的语法

selector{

    property:value;

    property:value;

}

元素选择器

直接用元素名称做选择 E{}

比如:

div {

    background:pink;

    color:yellow;

}

选择div元素

特例:选择所有元素 *

* {

    background:pink;

    color:yellow;

}

属性选择器

E[att()]{}

有id属性的div元素

div[id]

有id属性且id属性值为xx的div元素

div[id=xx]

有id属性且id属性值以xx开头的div元素

div[id^=xx]

有id属性且id属性值以xx结尾的div元素

div[id$=xx]

有id属性且id属性值包含xx的div元素

div[id*=xx]

id选择器

#bb{

    background:pink;

    color:yellow;

}

特例:结合选择器

p标签中id=bb的元素(中间不要有空格)

p#bb{

    background:pink;

    color:yellow;

}

class选择器

.xx{

    background:pink;

    color:yellow;

}

特例:结合选择器

div.xx{

    background:pink;

    color:yellow;

}

包含选择器

selector1 selector2{}

空格表示后代

div .xx{

    background:pink;

    color:yellow;

}

    <div>

        <p class="xx">oo</p>

    </div>

子选择器

父亲是div,后代(孩子,孙子…..)的class=xx

只选儿子

div>.xx{

    background:pink;

    color:yellow;

}

兄弟选择器

selector1~selector2{}

.aa~li{

    background:pink;

    color:yellow;

}

id为aa的弟弟们(下行)

特例:所有弟弟用*

选择器组合

selector1,selector2,selector3….{}

(只要符合其中一个即可)

span,.aa,p{

    background:pink;

    color:yellow;

}

伪元素选择器

首字母选择器

div::first-letter{

    background-color:pink;

    color: blue;

}

first-letter只能用于块级元素(竖着布局的元素)

首行选择器 first-line

浏览器对于中英文理解不同,中文任意一个汉字后都可换行,但英文只能在一个单词后换行。全是字母的话可以用空格隔开字母分割处。

单词是否裂开:

word-break: break-all;

word-break: keep-all;

在元素前后添加选择器

div::befor{

    content: "aaaaa";

    background-color:pink;

    color: blue;

}

div::after{

    content: "aaaaa";

    background-color:pink;

    color: blue;

}

伪类选择器

结构性伪类选择器

:nth-child(n) 其中的n可以是数字(1,2,3)也可以是英文单词(odd 奇数 even 偶数),也可以是表达式(2n+1….)

第一个元素:first-child

最后一个元素:last-child

:nth-last-child(n) 倒着数第n个

<ul>

        <li>hello1</li>

        <li>hello2</li>

        <li>hello3</li>

</ul>

ul li:nth-child(1){

    background-color:pink;

    color: blue;

}

如果ul里的第二行刚好是li元素,则被选中

如果要找li的第二个,则写为

ul li:nth-of-type(2)

第一个写为:first-of-type

最后一个写为:last-of-type

倒着数::nth-last-of-type(2)

UI状态伪类选择器

鼠标悬停:hover

ul li:hover{

    background-color:pink;

    color: blue;

}

焦点状态:focus

input:focus{

    background-color:yellow;

    color: blue;

}

选中状态:checked

比如:

input:checked{

    background-color:yellow;

    color: blue;

}

其他伪类选择器

not():过滤掉某些元素

ul li:not(.aa):not(#bb){

    background-color:pink;

    color: blue;

}

除去class=aa和id=bb的li

CSS选择器优先级

1.选择器写的越长(越准确),优先级越高

2.优先级高低,id选择器>class选择器>元素选择器

3.同级别长度,CSS代码按照顺序执行,后面的代码会把前边的覆盖掉,即样式覆盖

4.以上场景使用绝大部分场景,若特殊场景不使用自行测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值