CSS 选择器的常见用法

news2024/11/25 8:42:20

前言

    CSS在编写代码的时候有很多种样式,和和HTML,JS相似,他们都是运行在浏览器中的,下面就介绍一下CSS选择器的常见用法。

标签选择器使用标签名把页面中所有同名标签都选中
类选择器使用.类名的方式对应一组CSS属性
id选择器使用 #类名 的方式对应一组CSS属性
复合选择器只介绍后代选择器

一.标签选择器

   类名是使用HTML标签名,把页面中所有的同名标签都会选中,此时可以看下下图代码的运行结果 。

    缺点:只能针对某一类标签进行设置样式,难以针对某个元素进行个性化的样式设置。

<title>CSS选择器</title>
        <style>
            div {
                font-size: 30px;
                font-weight: 900;
                font-family: '宋体';
                text-align: center;
            }
        </style>
    </head>

    <body>
        <div>1</div>
        <div>2</div>
        <div>3</div>

    </body>

     结果:代码中有三个div标签,此时三个div标签的样式都是一样的。

二.类选择器

    类选择器是在css中创建一个类名,是以.的方式开头,对应一组css样式,然后让某个HTML标签应用这个样式即可,代码如下,我们可以看到结果只有第一个span标签设置了css的样式。

    类选择器是最常用的一个,也是功能最丰富的一个,优点就是可以进行给杏花针对某个标签进行单独设置样式。

<head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>CSS选择器</title>
        <style>
            .one {
                font-size: 30px;
                font-weight: 900;
                font-family: '宋体';
                text-align: center;
            }
        </style>
    </head>

    <body>
        <div>
            <span class="one">我是span标签</span>
            <p></p>
            <span>我也是span标签</span>
        </div>
        <div>1</div>
        <div>2</div>
        <div>3</div>

    </body>

结果:

三.id选择器

    一个HTML标签是可以有一个id属性的,这个属性的值就可以作为标签的身份标识,只能是唯一的;同时也可以通过id选择器来获取指定的标签然后进行设置样式。

    是以#开头的格式,然后对应一组css的样式,可以看到运行结果:只有第二个span标签设置了这个样式。

<title>CSS选择器</title>
        <style>
            .one {
                font-size: 30px;
                font-weight: 900;
                font-family: '宋体';
                text-align: center;
            }

            #ddd {
                color: red;
                font-size: 30px;
                font-weight: 900;
                font-family: '宋体';
                text-align: center;
            }
        </style>
    </head>

    <body>
        <div>
            <span>我是span标签</span>
            <p></p>
            <span id="ddd">我也是span标签</span>
        </div>
        <div>1</div>
        <div>2</div>
        <div>3</div>

    </body>

    结果:

 

四.复合选择器

    后代选择器

     上述的选择器都是css的一些基础的选择器,而复合选择器是比较复杂的,这里主要介绍后代选择器。

    效果就是把上述三种基础的选择器进行组合,同时能够让标签有一个层次结构。

    后代选择器格式:可以写多个基础选择器,使用空格分开,可以针对不同的标签设置不同的样式,同时还能够体现出HTML标签的层次结构。

    后代选择器:可以写多个基础选择器,如下代码的意思就是在.one的后代中找到span标签,后代包括多层父级标签(子标签,孙子标签.....)

    后代选择器存在的意义:如果一个页面是特别复杂的,可以使用后代选择器,针对某个HTML标签进行设置样式,不会影响其他的HTML标签。

<title>CSS选择器</title>
        <style>
            .one span {
                color: burlywood;
                font-size: 30px;
                font-weight: 900;
                font-family: '宋体';
                text-align: center;
            }

            .two span {
                color: red;
                font-size: 30px;
                font-weight: 900;
                font-family: '宋体';
                text-align: center;
            }
        </style>
    </head>

    <body>
        <div class="one">
            <span>我是span标签</span>
            <p></p>

        </div>
        <div class="two">
            <span>我也是span标签</span>
        </div>

    结果:

 CSS相关属性

/*文本相关 */
            .three {
                /* 文本颜色 */
                color: rebeccapurple;
                /* 文本对齐方式 */
                text-align: center;
                /* 文本装饰,加下划线之类的 */
                text-decoration: underline;
                /* none可以把有下划线的字体给去掉  如:a标签 */
                /* 文本缩进  首行缩进多少个字符 */
                text-indent: 20em;
                /*行高(行间距)  */
                line-height: 100px;
            }
/* 背景相关 */
            .four {
                /* 设置背景颜色 */
                background-color: antiquewhite;
                /* 设置背景图片 */
                /* 背景图片默认是平铺的 */
                background-image: url("写图片的地址");
                /*禁止平铺  */
                background-repeat: no-repeat;
                /* 设置背景图片的位置 */
                background-position: 29, 30, 30;
                /* 设置背景大小 */
                background-size: 1000px;
            }

//设置圆角矩形   border-radius: 10px;
/* 块级元素和行内元素的区别:
            1.块级元素默认独占一行,行内元素默认不会独占一行
            2.块级元素可以设置尺寸,,行内元素不可以!!
            行内元素转化成块级元素: display:block
            一般不会把块级元素变成行内元素
            可以使用display:none实现元素隐藏的效果 */
            //一般设置边框的时候此时会把整个元素的盒子撑大,
              所以设置一下属性就不会出现这个情况了



            .fif {
                /* 行内元素 */
                display: inline;
                /* 块级元素 */
                display: block;
            }
            /* 通配符选择器 */
            * {
                /* 此时边框不会撑大元素了 */
                box-sizing: border-box;
            }

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

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

相关文章

小米再度登上《焦点访谈》!中关村论坛展科技风采

5月30日下午&#xff0c;以“开放合作共享未来”为主题的2023中关村论坛展览&#xff08;科博会&#xff09;在京圆满落幕。小米作为科技领军企业参展&#xff0c;设立“科技创新、绿色低碳”主题展区。 小米携智能手机、可穿戴设备、智能家居以及全尺寸人形仿生机器人CyberOne…

【ROS】ROS2编程示例:话题订阅-发布-C++版

1、准备 1&#xff09;安装ROS2 【ROS】Ubuntu22.04安装ROS2&#xff08;Humble Hawksbill&#xff09; 2&#xff09;ROS2命令 【ROS】ROS2命令行工具详解 3&#xff09;配置工作空间 【ROS】ROS2中的概念和名词解释中第一节&#xff1a;工作空间 workspace 4&#xff09;…

MySQL-12-SQL优化

一、MySQL体系结构 1.1、体系结构 # 1.2、查询执行流程 参考&#xff1a;https://www.cnblogs.com/xfeiyun/p/15899990.html 1.3、组件说明 管理工具&#xff1a;MySQL服务软件安装后提供的命令连接池&#xff1a;检查本机是否有空闲资源&#xff08;线程&#xff0c;内存&…

Geoffrey Hinton、姚期智、张钹、Sam Altman等专家共话AI安全与对齐丨2023智源大会议程公开...

6月9日&#xff0c;2023北京智源大会&#xff0c;将邀请AI领域的探索者、实践者、以及关心智能科学的每个人&#xff0c;共同拉开未来舞台的帷幕&#xff0c;你准备好了吗&#xff1f;与会知名嘉宾包括&#xff0c;图灵奖得主Yann LeCun、OpenAI创始人Sam Altman、图灵奖得主Ge…

Linux教程——Linux和UNIX的关系及区别(详解版)

UNIX 与 Linux 之间的关系是一个很有意思的话题。在目前主流的服务器端操作系统中&#xff0c;UNIX 诞生于 20 世纪 60 年代末&#xff0c;Windows 诞生于 20 世纪 80 年代中期&#xff0c;Linux 诞生于 20 世纪 90 年代初&#xff0c;可以说 UNIX 是操作系统中的"老大哥&…

开始梳理大学课程体系(二)--万字数据结构总结上

数据结构总结 第一章 概述1.1 基本概念和术语1.2 数据结构1. 2.1 逻辑结构1.2.2 存储结构 1.3 数据类型和抽象数据类型1.3.1 数据类型1.3.2 抽象数据类型 1.4 算法和算法分析1.4.1 算法的定义及特性1.4.2 评价算法优劣的基本标准1.4.3 算法的时间复杂度1.4.4 算法的空间复杂度 …

chatgpt赋能python:用Python优化交通

用Python优化交通 作为一种功能强大的编程语言&#xff0c;Python已经被广泛应用于各个领域。交通领域也不例外。在交通领域&#xff0c;Python可以发挥重要作用&#xff0c;帮助优化交通运行&#xff0c;提高安全性和效率。 实时路况预测 Python可以通过机器学习算法来对实…

【Linux】进程与文件系统(详细解析)

文章目录 1.前言&#xff08;提出问题&#xff09;2.认识问题3.回顾c文件接口4.学习系统文件IOopen函数第一个参数第二个参数第三个参数函数的返回值 write函数read函数close函数 5.文件描述符 1.前言&#xff08;提出问题&#xff09; 在C语言阶段学习文件操作的时候&#xf…

基于PP-OCRv3的车牌检测和识别

本项目基于百度飞桨AI Studio平台进行实现&#xff0c;百度出品的深度学习平台飞桨&#xff08;PaddlePaddle&#xff09;是主流深度学习框架中一款完全国产化的产品&#xff0c;与Google TensorFlow、Facebook Pytorch齐名。2016 年飞桨正式开源&#xff0c;是国内首个全面开源…

【SpringMVC】| 域对象共享数据

目录 前期准备 域对象共享数据 一&#xff1a;向request域共享数据&#xff08;五种方法&#xff09; 1. 使用ServletAPI向request域对象共享数据&#xff08;了解&#xff09; 2. 使用ModelAndView向request域对象共享数据 3. 使用Model向request域对象共享数据 4. 使用…

chatgpt赋能python:Python代码怎么找?这里介绍几种方法

Python代码怎么找&#xff1f;这里介绍几种方法 在编写Python程序的时候&#xff0c;经常会遇到需要查找已有代码的情况。那么&#xff0c;在这里&#xff0c;我们将介绍几种查找Python代码的方法&#xff0c;希望能对大家有所帮助。 使用文本编辑器的查找功能 在大多数文本…

3.场(field)

目录 1.复习 2.引言 3.数量场 1.概念 2.例题 4.矢量场 1.概念 2.例题 5.坐标变换和坐标单位矢 1.坐标变换 2.单位矢 1.复习 2.引言 如果说矢量分析研究的是矢量的时间变化&#xff0c;那么场就是它的空间变化. 场是客观存在的&#xff0c;杨振宁先生在总结20世…

Spring Boot 3.1中如何整合Spring Security和Keycloak

在今年2月14日的时候&#xff0c;Keycloak 团队宣布他们正在弃用大多数 Keycloak 适配器。其中包括Spring Security和Spring Boot的适配器&#xff0c;这意味着今后Keycloak团队将不再提供针对Spring Security和Spring Boot的集成方案。但是&#xff0c;如此强大的Keycloak&…

数据库|TiDB 数据库大版本升级-基于TiCDC异机升级

作者&#xff1a;高文峰 | 神州数码云基地TiDB团队成员 目录 一、前言 二、升级架构图 三、升级流程 1.下游TiDB集群部署过程 2. 上游TiCDC节点的扩容 3. 上游数据全备恢复到下游 4. TiCDC启用正向同步任务 5. 应用停服务&#xff0c;tidb 无业务会话连接 6. 确认数据…

2023年6月跟产品开发专家学NPDP产品经理认证课到这里

NPDP产品经理国际资格认证是国际公认的唯一的新产品开发专业认证&#xff0c;集理论、方法与实践为一体的全方位的知识体系&#xff0c;为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。 我们针对互联网时代的个人、互联网企业、与传统企业推出一系列学习。 课程从…

小车跑迷宫,如何完成?

先看视频1&#xff1a; 先看视频2&#xff1a; 要制作一个能顺利走到迷宫终点&#xff0c;并能按最短路径回来的小车&#xff0c;重中之重就是寻找其最短路径的算法&#xff0c;迷宫情况复杂多变&#xff0c;多个路口交错纵横&#xff0c;想要完美的找出最短路径并不容易&#…

事件相关功能磁共振波谱技术(fMRS)

导读 质子磁共振波谱(MRS)是一种非侵入性脑成像技术&#xff0c;用于测量不同神经化学物质的浓度。“单体素”MRS数据通常在几分钟内采集&#xff0c;然后对单个瞬态进行平均&#xff0c;从而测量神经化学物质浓度。然而&#xff0c;这种方法对更快速的神经化学物质的时间动态…

chatgpt赋能python:Python人脸身份识别:提高安全性和效率的先进技术

Python人脸身份识别&#xff1a;提高安全性和效率的先进技术 随着科技的发展&#xff0c;人类对于安全性和效率的需求逐渐增加。而人脸身份识别技术正是一个能够满足这一需求的先进技术。在过去的几年中&#xff0c;这种技术已经逐渐发展成为一种普及的安全措施&#xff0c;这…

串口组件:ZylSerialPort.NET 1.83 Crack

ZylSerialPort.NET 1.83 .NET 组件 库 ZylSerialPort.NET 是一个基于线程、事件驱动、异步/同步串口的.NET 组件库。 使用 ZylSerialPort.NET 组件可以轻松地通过串行端口连接与外部设备进行通信&#xff0c;例如调制解调器、条形码阅读器、GSM 模块等。 您也可以将它与 USB、…

Volatile、Synchronized、ReentrantLock锁机制使用说明

一、Volatile底层原理 volatile是轻量级的同步机制&#xff0c;volatile保证变量对所有线程的可见性&#xff0c;不保证原子性。 当对volatile变量进行写操作的时候&#xff0c;JVM会向处理器发送一条LOCK前缀的指令&#xff0c;将该变量所在缓存行的数据写回系统内存。由于缓…