css基础选择器

css基础选择器

选择器

1.元素选择器

匹配页面所有相同的元素,即页面中相同的元素有相同的样式声明使用。

2.ID选择器

尽量少用,页面中某个元素特殊的样式声明

#idName{

}
3.类选择器

同一页面中任何元素(只需要class的属性值相同)有相同样式声明class的属性值可以写多个

.className{

}
4.通配符选择器

能匹配页面里面的所有元素

*{

}
5.属性选择器

根据属性名和属性值选中元素

6.伪类选择器

伪类由一个冒号:开头,冒号后面是伪类的名称和包含在圆括号中的可选参数。

选中某些元素的某种状态

属性描述
:link向未被访问的链接添加样式
:visited向已被访问的链接添加样式
:hover当鼠标悬停在元素上方时,向元素添加样式
:active向被激活的元素添加样式
:focus向拥有键盘输入焦点的元素添加样式
:first-child向父元素的第一个子元素添加样式
:lang向带有指定lang属性的元素添加样式
:last-child向父元素的最后一个子元素添加样式
:only-child向父元素仅有的一个子元素添加样式
:nth-child(n)向父元素的第n个子元素添加样式
:nth-last-child(n)向父元素的倒数第n个子元素添加样式
first-of-type向同类型中的第一个同级兄弟元素添加样式
last-of-type向同类型中的最后一个同级兄弟元素添加样式
only-of-type向同类型中唯一的一个同级兄弟元素添加样式
nth-of-type(n)向同类型中的第n个同级兄弟元素添加样式
nth-last-of-type(n)向同类型中的倒数第n个同级兄弟元素添加样式
empty向没有任何子元素的元素添加样式
checked向用户界面处于被选中状态的元素添加样式(用input type为radio 与checbox时)
enabled向用户界面处于可用状态的元素添加样式
disabled向用户界面处于被禁止状态的元素添加样式
target向相关URL指向的元素添加样式
7.伪元素选择器
属性描述
:first-letter(::first-letter)设置对象内的第一个字符样式
:first-line(::first-line)设置对象内的第一个行样式
:before(::before)设置在对象前发生的内容
:after(::after)设置在对象后发生的内容
::placeholder设置对象文字占位符的样式
:selection设置对象被选择时的颜色

伪类:用于向某些选择器添加特殊的效果
伪元素:用于将特殊的效果添加到某些选择器

二者区别:
伪类的效果可以通过添加实际的类来实现
伪元素的效果可以通过添加实际的元素来实现

注意
伪类只能使用“:”
而伪元素既可以使用“:”,也可以使用“::”

选择器的组合

1.层级关系

后代元素 空格隔离

<style>
        .box p {
            color: brown;
        }
    </style>
</head>

<body>
    <div class="box">
        <div class="son">
            <p>Lorem ipsum dolor sit amet.</p>
        </div>

    </div>
</body>

子元素 >

  <style>
        .box {
            width: 300px;
            height: 300px;
            background-color: burlywood;
        }
        
        .box>.son {
            border: 1px solid black;
            width: 200px;
            height: 200px;
            background-color: cadetblue;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="son">
            <p>Lorem ipsum dolor sit amet.</p>
        </div>

    </div>
</body>
2.兄弟元素

==注意:==兄弟元素 设置的样式是它兄弟的 不是它的

相邻兄弟元素 紧跟的兄弟元素 +

 <style>
        .box+.head {
            width: 300px;
            height: 300px;
            background-color: burlywood;
        }
    </style>
</head>

<body>
    <div class="box">
        <div class="son">
            <p>Lorem ipsum dolor sit amet.</p>
        </div>
    </div>
    <div class="head"></div>

兄弟元素 ~

 <style>
        .head {
            width: 200px;
            height: 200px;
            background-color: chartreuse;
            border: 1px solid black;
        }
        
        .box~.footer {
            width: 300px;
            height: 300px;
            background-color: burlywood;
        }
    </style>
</head>

<body>
    <div class="box">
        <div class="son">
            <p>Lorem ipsum dolor sit amet.</p>
        </div>
    </div>
    <p class="txt">Lorem ipsum dolor sit amet.</p>
    <div class="head"></div>
    <div class="footer"></div>
3.选择器的并列

多个选择器用逗号隔开

<style>
        .head,
        .box {
            width: 300px;
            height: 300px;
            background-color: burlywood;
        }
    </style>
</head>

<body>
    <div class="box">
        <div class="son">
            <p>Lorem ipsum dolor sit amet.</p>
        </div>
    </div>
    <div class="head"></div>
</body>

CSS是层叠样式 当样式声明有冲突时用下面方法解决

1.比较重要性

作者样式中的!important样式 IE版本太低不支持,打破了优先级原则,只要有它在 它就是最高的

作者样式表中设置的样式

浏览器默认表中的样式

2.比较特殊性

看选择器,选择器的优先级,

规则:通过选择器,计算出一个四位数的选择器(xxxx)

千位:如果是内联(行内)样式,记1 否则记0

百位:统计选择器中所有ID选择器的数量

十位:统计选择器中所有类选择器、属性选择器、伪类选择器的数量

个位:统计选择器中所有元素选择器、伪元素选择器的数量

注意:四个数不是十进制的数,不要看进位的情况

3.比较源次序

就近原则,后来者居上

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值