关于css中选择器的小归纳(一)

关于css中选择器的小归纳

一、基本选择器

基本选择器是我们平常用到的最多的也是最便捷的选择器,其中有元素选择器(类似于a,div,body,ul),类选择器(我们在HTML标签里面为其添加的class),ID选择器(与类选择器类似),普遍选择器(*),并且选择器(类似“p.one#first”的写法)和并列选择器(类似“p,.one,#first”的写法)

1.元素选择器

范例:

<p>你好,css</p>
<div>你好,css</div>

css:

div{
            border:1px solid #ededed;
            background-color: lightblue;
        }

只有div标签的内容样式发生改变

2.类选择器

范例:

<p class="one">你好,css</p>
<p class="two">你好,css1</p>

css:

.one{
            border:1px solid #ededed;
            background-color: lightblue;
        }

只有class为“one”的p标签样式发生改变

3.ID选择器

范例:

<p id="first">你好,css</p>
<p id="second">你好,css</p>

css:


#first{
            border:1px solid #ededed;
            background-color: lightblue;
        }

只有ID为“first”的p标签样式发生改变

4.普遍选择器

范例:

<p>你好,css</p>
<div>你好,css</div>

css:

*{
            border:1px solid #ededed;
            background-color: lightblue;
        }

所有标签内的样式都发生改变

5.并且选择器

范例:

<p class="one" id="first">你好,css</p>
<p class="one">你好,css</p>
<p id="first">你好,css</p>

css:

p.one#first{
            border:1px solid #ededed;
            background-color: lightblue;
        }

只有ID为“first”且同时class为“one”的p标签样式发生改变

6.并列选择器

范例:

<p>你好,css</p>
<div class="one">你好,css</div>
<ul id="first">你好,css</ul>

css:

p,.one,#first{
            border:1px solid #ededed;
            background-color: lightblue;
        }

p标签,class为“one”的标签和ID为“first”的标签样式都发生改变

二、层次选择器

层次选择器一般用于选择网页中某一个标签中子类众多的情况,在这个时候为每一个标签都加上class或者是ID不太现实,但是不加又难以选择需要添加样式的标签,此时层次选择器尤为合适。

1.后代选择器(可被后代继承)

范例:

<div class="content">
        <p>你好,css</p>
        <hr>
        <ul>
            <li>one</li>
            <li>two</li>
            <li>three</li>
        </ul>
</div>

css:

.content{
    border:1px solid #ededed;
    background-color: lightblue;
}

class为content的div标签里面所有的子代及孙代样式都发生改变

2.子代选择器(最直接的子代,不能被孙辈元素继承)

范例:

<div class="content">
        <p>你好,css</p>
        <hr>
        <ul>
            <li>one</li>
            <li>two</li>
            <li>three</li>
        </ul>
</div>

css:

.content > li{
    border:1px solid #ededed;
    background-color: lightblue;
}

class为content的div标签里面所有的子代(只有子代,不含孙代)样式都发生改变

3.下一个兄弟选择器

范例:

<div>
        <ul>
            <li>one</li>
            <li>two</li>
            <li>three</li>
        </ul>
        <ol>
            <li>one</li>
            <li>two</li>
            <li>three</li>
        </ol>
        <dl>
            <li>one</li>
            <li>two</li>
            <li>three</li>
        </dl>
        
</div>

css:

ul + ol{
    border:1px solid #ededed;
    background-color: lightblue;
}

ul及ol标签内容的样式发生改变,但是dl内容样未改变

4.之后所有兄弟选择器

范例:

<div>
        <ul>
            <li>one</li>
            <li>two</li>
            <li>three</li>
        </ul>
        <ol>
            <li>one</li>
            <li>two</li>
            <li>three</li>
        </ol>
        <dl>
            <li>one</li>
            <li>two</li>
            <li>three</li>
        </dl>
        
</div>

css:

ul ~ dl{
    border:1px solid #ededed;
    background-color: lightblue;
}

从ul到dl所有内容的样式都发生了改变
(未完,待总结...)

本文转载于:猿2048→https://www.mk2048.com/blog/blog.php?id=hb2khkhaccb

posted @   热爱前端知识  阅读(164)  评论(0)    收藏  举报
编辑推荐:
· dotnet 9 通过 AppHostRelativeDotNet 指定自定义的运行时路径
· 如何统计不同电话号码的个数?—位图法
· C#高性能开发之类型系统:从 C# 7.0 到 C# 14 的类型系统演进全景
· 从零实现富文本编辑器#3-基于Delta的线性数据结构模型
· 记一次 .NET某旅行社酒店管理系统 卡死分析
阅读排行:
· 用c#从头写一个AI agent,实现企业内部自然语言数据统计分析
· 三维装箱问题(3D Bin Packing Problem, 3D-BPP)
· Windows上,10分钟构建一个本地知识库
· 使用 AOT 编译保护 .NET 核心逻辑,同时支持第三方扩展
· Java虚拟机代码是如何一步一步变复杂且难以理解的?
点击右上角即可分享
微信分享提示