前端三剑客CSS篇——CSS选择器

news2024/12/28 18:45:17

初识CSS选择器

文章目录

  • 初识CSS选择器
      • CSS三大特征👍
      • CSS的三种使用方法👏
      • CSS常见选择器👀
        • 标签选择器
        • 类选择器
        • id选择器
        • 后代选择器
        • 属性选择器
        • 复合选择器
      • CSS代码风格📜

CSS是前端三剑客不可忽略的一部分,CSS对前端来说是一个美化页面的工具,而且其功能十分强大,程序员可以如果熟练运用的话可以‘随心所欲’的更改页面的样式,使得页面更加美观。

CSS标签是由键值对的模式来排列的。

height:100px; /*height:键 100px:值 意识是高度设置为100px*/

CSS三大特征👍

学习CSS之前,先认识一下CSS的三大特征:

  1. 层叠性

    对同一个标签使用了同一种样式更改时,决定标签最后显示的样式是使用就近原则法,不会对之前修改的样式产生冲突

  2. 继承性

    子标签会继承父标签的某些样式,之前介绍HTML标签中,标签中互相存在着兄弟关系和父子关系,这种样式的继承是在于父子关系之间的

  3. 优先级

    如果选择器相同的情况下,会执行层叠性的规则,否则就是根据其权重来展示样式的。

在这里插入图片描述

CSS的三种使用方法👏

  1. 内部引入

    (1) 这里可以将标签放在任何地方,不过一般是放在头部或者尾部

    <style>
            div {
                height: 100px;
                width: 100px;
                background-color: orange;
            }
    </style>
    

    在这里插入图片描述

  2. 内联引入

    (1) 这里是对div 标签直接使用,其优先级大于其他标签

<div style="height: 100px; width: 100px; background-color: orange;">
        我是一个盒子
</div>
  1. 外部引入

    (1)创建一个以css结尾的文件,可以在文件中写入第一种方式的CSS样式,然后在head标签中引入文件。

<link rel="stylesheet" href="01.css">

虽然CSS有三种引入方式,不过最常使用的是内部引入和外部引入,因为看起来比较美观,修改时也比较简单。

CSS常见选择器👀

选择器,就是一个标签,在引入样式时指定的标签就称为选择器。

标签选择器

标签选择器就是使用HTML标签名来选择元素来进行样式处理,用于选取页面中所有具有相同标签的元素,标签选择器可以匹配所有的HTML标签,是最常见,最基本的标签之一。

举个例子🎁:

div {
    background-color: orange;
}

这个CSS规则会选中HTML文档中所有的div元素,然后将他们的背景色设置为橙色.

类选择器

每个标签都可以设置1个或多个类,比如给一个p标签设置一个名为message的类:

<p class="message">
    我是一段文字
</p>

类选择器就是使用标签中的类名所扩展的一种选择器,要使用选择器中的样式就必须在这个标签中引用这个类。注意,类选择器和标签选择器写法也不同。

举个例子🎁:

.message {
    color:blue;
}

使用了这个类的文字都会变成蓝色。

id选择器

每个HTML标签可以只能设置一个idid具有唯一性,所以使用这个样式一般是给特定的元素设置的。

<p id="textid">测试id选择器</p>

这种选择器很少会使用,不过在特定时期会对页面有一个很大的作用,id选择器的使用方法也与其他的不同,在id名前加#作为该选择器的名称。

举个例子🎁:

#textid {
    color: pink;
}

将这个id的元素的文字颜色设置成粉色。

后代选择器

允许根据类名或标签名嵌套在其他元素中的位置来选中元素,这意味着可以选择父元素下的特定后代元素或者元素集合,后代选择器可以嵌套许多层。

举个例子🎁:

<!-- HTML部分 -->
<div class="parent-element">
    <p>子元素p标签</p>
</div>
<!-- CSS部分 -->
<style>
    .parent-element p {
        color: chartreuse;
    }
</style>

这个代码的意思是将类名为parent-element父元素下的所有p标签元素中文字颜色改为chartreuse

举个例子🎁🎁:

<!-- html -->
<div class="parent-element">
    <p>
        <a href="#">孙子元素a标签</a>
    </p>
</div>
<!-- CSS -->
<style>
    .parent-element p a {
        color: chartreuse;
    }
</style>

这个代码的意思是将类名为parent-element父元素下的所有p标签中所有a标签元素中文字颜色改为chartreuse

属性选择器

属性选择器可以根据元素的属性和值来选择元素。这些选择器对于选中元素有特定的属性,并且这个属性还可以等于一个值或包含一个值。

  1. 等于选择器=

    选中的属性包含指定的属性

    举个例子🎁:

    <!-- html -->
    <div>
        效果组: <input type="text"><br>
        对比组: <input type="email">
    </div>
    <!-- css等于选择器 -->
    <style>
        input[type="text"] {
            background-color: brown;
        }
    </style>
    

    这个选择器的含义是将input标签中所有将type设置成text属性的标签背景颜色改为brown

    在这里插入图片描述

  2. 包含选择器*=

    选中的属性包含指定元素

    举个例子🎁:

    <!-- html -->
    <div>
        效果组:<a href="www.google.com">谷歌</a><br>
        对比组:<a href="www.baidu.com">百度</a>
    </div>
    <!-- css包含选择器 -->
    <style>
        a[href*="google"] {
            font-size: 50px;
        }
    </style>
    

    a标签中所有href属性值包含google字样的字体属性设置为50px的大小。

    在这里插入图片描述

  3. 开始选择器^=

    选择元素属性值以指定开头的元素

    举个例子🎁:

    <div>
        效果组:<a href="https://www.google.com">谷歌</a><br>
        对比组:<a href="www.baidu.com">百度</a>
    </div>
    <!-- css开始选择器 -->
    <style>
        a[href^="https://"] {
            color: #46eb5c;
        }
    </style>
    

    a标签中的href属性中以https://开头的元素中文字颜色改为绿色。

    在这里插入图片描述

  4. 结束选择器$=

    这个与前者真好相反,这个是将属性值中以这个指定的字符串结尾的元素

    举个例子🎁:

    <!-- html -->
    效果组:<img src="../boy.png" style="width: 100px;">
    对比组:<img src="../book1.jpg" style="width: 100px;">
    <!-- css结束选择器 -->
    <style>
        img[src$=".jpg"] {
            border: 2px solid red;
        }
    </style>
    

    .jpg结尾的属性加边框,前面是边框像素,第二个是边框样式,最后一个是边框颜色。

    在这里插入图片描述

  5. 匹配选择器|=

    选择具有前缀属性的元素,或者是以指定值开始和连接字符为-属性值的元素

    举个例子🎁:

    <!-- html -->
    <div class="parent">
        <p>
            属性匹配
        </p>
    </div>
    <!-- css匹配选择器 -->
    <style>
        div[class|="parent"] p {
            font-size: 30px;
        }
    </style>
    

    选择class所有具有parent开头或者只是parent,并包含在div中所有的p标签中所有的字体设置为30px

    复合选择器

    复合选择器是由多个简单选择器(如:标签,类,id,属性,等)组合在一起的选择器,用来更精准的匹配HTML元素,简单的几个选择器由空格隔开。

    举个例子🎁:

    <!-- html -->
    <div class="parent">
        <p id='son'>匹配</p>
        <p>测试</p>
    </div>
    <!-- css复合选择器 -->
    <style>
        .parent p#son {
            font-size: 30px;
        }
    </style>
    

    选择类名为parent的元素中所有p标签中idson的元素。

CSS代码风格📜

虽然CSS是不区分大小写的,不过一般都是使用小写来编写CSS代码,这次的分享都在这里,其实我们编写css代码会经常忘记,不过没关系,业精于勤,忘记了可以去工具查找我们需要使用的标签即可,多动手,自然会手到擒来ヽ(≧□≦)ノ

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/514262.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

知了汇智:坚持发展产教融合,做好高校、人才与企业之间的桥梁

6月将正式迎来高校毕业季&#xff0c;大学生就业是聚焦全社会关注的头等大事。5月9日&#xff0c;成都知了汇智科技有限公司&#xff08;以下简称“知了汇智”&#xff09;组织开展“深化产教融合、聚焦人才培养”的主题座谈会议&#xff0c;联动高校与合作企业参加&#xff0c…

天津专业python培训机构精选(犹豫不如学python)

说起python&#xff0c;有好多年轻开发者都学习过Python&#xff0c;而且到现在为止&#xff0c;还有好多人都在追着Python跑&#xff0c;即便其他语言也很优秀&#xff0c;但是对Python的爱真的是只增不减。接下来&#xff0c;小编就给大家浅说一下&#xff0c;为什么python这…

掌汇云创新鞋业会展,汇集专精特新企业,数字化连接上下游

国内&#xff1a;鞋业供需情况多变&#xff0c;对接难度较大。在一个基数庞大&#xff0c;且成长速度惊人的市场&#xff0c;要想快速地找到供应商显然不是一件简单的事&#xff1b; 国际&#xff1a;鞋业对于外贸的依赖程度很高&#xff0c;但是当前国际局势动荡&#xff0c;…

力扣 151. 反转字符串中的单词

一、题目描述 给你一个字符串 s&#xff0c;请你反转字符串中单词的顺序。 单词是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的单词分隔开。 返回单词顺序颠倒且单词之间用单个空格连接的结果字符串。 注意&#xff1a;输入字符串 s 中可能会存在前导空格、…

内存分段详解

内存分段 1.1 分段机制概述 1.1.1 分段机制产生的原因 对于分段机制&#xff0c;要从Intel的微处理器的8086开始说起&#xff0c;刚开始内存空间比较小&#xff0c;内存寻址采用的是直接访问物理地址的方式。由于技术的发展&#xff0c;计算机做的事情越来越多&#xff0c;程…

Connection closed, EOF detected错误

生产遇到了这个问题 原因&#xff1a;两个http网址&#xff0c;即没有启用SSL 解决方案 在 weblogic的启动文件 bin里面 的 setDomainEnv.sh 这个文件 。 加上这一句 set JAVA_OPTIONS%JAVA_OPTIONS% -DUseSunHttpHandlertrue

IS230STAOH2A开关柜的基本特征是什么以及开关柜如何用于电力系统的保护

​ IS230STAOH2A开关柜的基本特征是什么以及开关柜如何用于电力系统的保护 什么是开关柜 开关设备是用于开关控制和保护电路和设备的装置&#xff0c;电力在我们现代文明中的重要性非常高&#xff0c;因此为了获得持续的电力&#xff0c;我们必须确保电力系统免受大故障的影响…

电脑死机的常用排查思路

在工作过程中难免会遇到死机的问题&#xff0c;排查起来并不是那么轻松&#xff0c;下面分享一下我排查死机问题的思路。 判断是软件还是硬件级别的故障 在死机时先尝试移动鼠标&#xff0c;按大小写切换键或数字键盘锁定键&#xff0c;看看光标是否可以移动&#xff0c;大小…

LabVIEWCompactRIO 开发指南15 托管和监控网络发布的共享变量

LabVIEWCompactRIO 开发指南15 托管和监控网络发布的共享变量 托管 要使用网络发布的共享变量&#xff0c;共享变量引擎必须在分布式系统中的至少一个节点上运行。网络上的任何节点都可以读取或写入共享变量引擎发布的共享变量。所有节点都可以在不安装共享变量引擎的情况下…

【C语言】有符号整型(int) 与 无符号整型(unsigned int)的运算

/*有符号整型(int) 与 无符号整型(unsigned int)的运算1.全局变量&#xff0c;静态变量都是放在静态区&#xff0c;不初始化的时候&#xff0c;默认值为0。局部变量&#xff0c;放在栈区&#xff0c;不初始化的时候&#xff0c;默认值是随机值,编译器会报错2.int 与 unsigned i…

Linux知识点 -- Linux权限

Linux知识点 – Linux权限 文章目录 Linux知识点 -- Linux权限一、shell命令及运行原理二、Linux权限1.概念2.文件类型和访问权限3.更改文件的权限4.没有权限的情况5.更改文件的拥有者和所属组6.添加用户到信任列表7.umask权限掩码8.粘滞位 一、shell命令及运行原理 Linux严格…

【头歌】数组-稀疏矩阵的转置

数组-稀疏矩阵的转置 第1关&#xff1a;一般转置算法 任务描述 本关任务&#xff1a;实现稀疏矩阵的转置操作&#xff08;采用一般转置算法&#xff0c;即按列序转置&#xff09;。 相关知识 为了完成本关任务&#xff0c;你需要理解&#xff1a;1. 矩阵的压缩存储&#x…

np读取txt、csv文件的数据

目录 1、基础参数 2、参数详解 3、应用参数示例 机器学习中使用np.loadtxt()可以高效的导入数据&#xff0c;np.loadtxt()适合.txt文件和.csv文件。但是它默认读取float类型的值。 1、基础参数 numpy.loadtxt(fname, dtype, comments#, delimiterNone, convertersNone, s…

11. 类的继承

一、为什么要用继承 一个简化的Student类 class Student { private:string name;string studentID; public:string getName(){ return name; }void setName(string newName) { name newName; }string getStudentID(){ return studentID; }void setStudentID(string newID) {…

操作系统基础知识介绍之内存技术和优化(一)(包含SRAM和DRAM、SDRAM、GDRAMs)

使用 SRAM 可以满足最小化高速缓存访​​问时间的需要。 然而&#xff0c;当缓存未命中时&#xff0c;我们需要尽快将数据从主存中移出&#xff0c;这就需要高带宽内存。 这种高内存带宽可以通过将构成主内存的许多 DRAM 芯片组织成多个内存条并使内存总线更宽来实现&#xff0…

数字孪生可视化开发工具在各行业中的应用

数字孪生就是指在信息化平台内模拟物理实体、流程或者系统&#xff0c;即打造一个现实场景的数字化孪生双胞胎。出于成本和周期考虑&#xff0c;快速低成本搭建数字孪生系统成为中小型企业的期望&#xff0c;深圳华锐视点研发的UE4数字孪生编辑器&#xff0c;是一种能够帮助用户…

【Shell脚本】Linux安装Nginx以及开机自启

目录 一、Linux安装Nginx脚本1、把编写好的安装Nginx脚本放置到nginx.sh文件中2、在检查网络的时候&#xff0c;这里的IP地址&#xff0c;填写的需要安装Nginx服务器的IP地址3、这里的端口号可按照自己的需要进行修改4、安装Nginx脚本 二、Nginx开机自启 一、Linux安装Nginx脚本…

API网关|JD|pinduoduoAPI接入

API网关是什么 在日常工作中&#xff0c;不同的场合下&#xff0c;我们可能听说过很多次网关这个名称&#xff0c;这里说的网关特指API网关&#xff08;API Gataway&#xff09;。字面意思是指将所有API的调用统一接入API网关层&#xff0c;由网关层负责接入和输出。 那么在什…

相遇于此,“相交链表”问题的两种思路

本篇博客会讲解力扣“160. 相交链表”的解题思路&#xff0c;这是题目链接。 老规矩&#xff0c;先来审题。这道题的题干有点长&#xff0c;简而言之&#xff0c;就是判断2个链表是否相交&#xff0c;如果相交就返回第一个相交结点&#xff0c;不相交就返回NULL。看看题目原文…

轻松打造完美客户服务系统,这4个关键点不容错过

客户服务对于一个企业来说非常重要&#xff0c;有以下几个原因&#xff1a; 1、建立客户忠诚度&#xff1a;通过提供高质量的客户服务&#xff0c;可以增加客户满意度和忠诚度。这将有助于企业保持竞争优势并吸引新客户。 2、提高客户满意度&#xff1a;客户对企业的服务感到…