CSS简介与CSS选择器

news2024/11/29 0:41:48

目录

CSS简介

CSS语法规范

HTML引入CSS的方式

行内样式表

内部样式表

外部样式表

CSS选择器

CSS基础选择器

标签选择器

类选择器

单类名选择器

多类名选择器

id选择器

id选择器的使用

id选择器和类选择器的区别

通配符选择器

基础选择器总结


CSS简介

  1. CSS 是层叠样式表 ( Cascading Style Sheets ) 的简称,有时我们也会称之为 CSS 样式表或级联样式表。
  2. CSS 是也是一种标记语言,CSS 主要用于设置 HTML 页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边距等)以及版面的布局和外观显示样式。
  3. CSS 让我们的网页更加丰富多彩,布局更加灵活自如。简单理解:CSS 可以美化 HTML , 让 HTML 更漂亮, 让页面布局更简单。
  4. CSS 最大价值就是由 HTML 专注去做结构呈现,样式交给 CSS,即 结构 ( HTML ) 与样式( CSS ) 相分离

CSS语法规范

  1. CSS同HTML一样也需要一定的规范性。
  2. CSS 规则由两个主要的部分构成:选择器以及一条或多条声明。
选择器 {
    /*键值对*/
}
  1. 选择器是用于指定 CSS 样式的 HTML 标签,花括号内是对该对象设置的具体样式
  2. 属性和属性值以“键值对”的形式出现(键值对:属性与属性对应值)
  3. 属性是对指定的对象设置的样式属性,例如字体大小、文本颜色等
  4. 属性和属性值之间用:分开
  5. 多个“键值对”之间用;进行区分

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>style标签</title>
    <style>
        /* 将p标签的字体颜色设置为红色 */
        p{
            color: red;
        }
    </style>
</head>
<body>
    <!-- 下面的p标签的字体颜色为红色 -->
    <p>
        style标签
    </p>
</body>
</html>

效果如下:

HTML引入CSS的方式

在HTML中引入CSS内容有三种方法,这三种方法也称为样式表:

  1. 行内样式表(行内式)
  2. 内部样式表(嵌入式)
  3. 外部样式表(链接式)

行内样式表

行内样式表(内联样式表)是在元素标签内部的 style 属性中设定 CSS 样式。适合于修改简单样式

基础语法:

<div style="color: red; font-size: 12px;">文本内容</div>
  1. style 其实就是标签的属性
  2. 在双引号中间,写法要符合 CSS 规范
  3. 可以控制当前的标签设置样式
  4. 由于书写繁琐,并且没有体现出结构与样式相分离的思想,所以不推荐大量使用,只有对当前元素添加简单样式的时候,可以考虑使用

内部样式表

内部样式表(内嵌样式表)是写到HTML页面内部. 是将所有的 CSS 代码抽取出来,单独放到一个 <style></style> 标签中

基本语法:

<style>
    选择器 {
        /* 键值对 */
    }
</style>
  1. <style></style>标签理论上可以放在 HTML 文档的任何地方,但一般会放在<head></head>标签中
  2. 通过此种方式,可以方便控制当前整个页面中的元素样式设置
  3. 代码结构清晰,但是并没有实现结构与样式完全分离

外部样式表

实际开发都是外部样式表. 适合于样式比较多的情况,其使用方法是:样式单独写到CSS 文件中,之后把CSS文件引入到 HTML 页面中使用.

引入外部样式表分为两步:

1. 新建一个后缀名为.css 的样式文件,把所有 CSS 代码都放入此文件中。

2. 在 HTML 页面中,使用<link> 标签引入这个文件。

基本语法:

<link rel="stylesheet"  href="css文件路径">

示例代码:

与HTML文件同路径下的CSS文件

/* 只需要写入样式即可 */
/* 类选择器 */
.red {
    color: red;
}

.blue {
    color: blue;
}

.green {
    color: green;
}

.fontStyle {
    font-size: 20px;
    font-weight: bold;
}

HTML文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>外部引入方式</title>
    <!-- 引入外部样式 -->
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <!-- 段落标签 文字为红色-->
    <p class="red">段落标签</p>
    <!-- div标签 文字为绿色,设置字体格式-->
    <div class="green fontStyle">div标签</div>
    <!-- span标签 文字为蓝色-->
    <span class="blue">span标签</span>
</body>
</html>

效果如下:

CSS选择器

选择器(选择符)就是根据不同需求把不同的标签选出来

例如在上面的实例代码中,p就是选择器,选择当前代码里面所有的p标签

在CSS中分为基础选择器和复合选择器

CSS基础选择器

对于基础选择器,基础选择器中一共有四种选择器

  1. 标签选择器
  2. 类选择器
  3. id选择器
  4. 通配符选择器

标签选择器

标签选择器(元素选择器)是指用 HTML 标签名称作为选择器,按标签名称分类,为页面中某一类标签指定统一的 CSS 样式

基本语法如下:

标签选择器 {
    /* 键值对 */
}

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>style标签</title>
    <style>
        /* 将p标签的字体颜色设置为红色 */
        p{
            color: red;
        }
    </style>
</head>
<body>
    <!-- 下面的p标签的字体颜色为红色 -->
    <p>
        style标签
    </p>
</body>
</html>
  • 标签选择器的优点:
    • 能够快速设置页面中同类型标签的统一样式
  • 标签选择器的缺点:
    • 不能差异化设置,即不可以为同类型标签中的某一个标签进行单独设置

当一个选择器中有多个相同属性的键值对时,将以最后一个同属性的键值对为主

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>多个同类型属性</title>
    <style>
        p{
            /* 颜色先设置为红色,再设置为蓝色,最后设置为绿色,将以最后一种颜色为主 */
            color: red;
            color: blue;
            color: green;
            /* 但是不影响字体大小的效果 */
            font-size: 20px;
        }
    </style>
</head>
<body>
    <p>当前字体颜色为绿色,字体大小为20px</p>
</body>
</html>

效果如下:

类选择器

如果想要差异化选择不同的标签,单独选一个或者某几个标签,可以使用类选择器,类选择器有两种

  1. 单类名选择器
  2. 多类名选择器

单类名选择器

所谓单类名选择器,即标签中的class属性值中一次只包含一个类

基本语法如下:

/* 设计类 */
.类名 {
    /* 键值对 */
}

/* 类调用 */
<标签 class="类名" ></标签>
  1. 类选择器在 HTML 中以 class 属性表示,在 CSS 中,类选择器以一个点.号显示
  2. 类选择器使用.进行标识,后面紧跟类名(自定义,我们自己命名的),但是不能使用已经有的标签作为类名
  3. 长名称或词组可以使用-连接两个或以上的单词来为选择器命名
  4. 不要使用纯数字、中文等命名,尽量使用英文字母来表示
  5. 命名要有意义,尽量使别人一眼就知道这个类名的目的

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>类选择器</title>
    <style>
        .red{
            color: red;
        }
        .blue{
            color: blue;
        }
        .green{
            color: green;
        }
    </style>
</head>
<body>
    <div class="red">
        第一个盒子中的文字为红色
    </div>
    <div class="blue">
        第二个盒子中的文字为蓝色
    </div>
    <div class="green">
        第三个盒子中的文字为绿色
    </div>
</body>
</html>

效果如下:

  • 类选择器中出现多个同类型属性时与标签选择器一样的处理方式

多类名选择器

对比单类名选择器,多类名选择器即为标签class属性包括两个或两个以上类

在标签class 属性中写多个类名时中间必须用空格分开,此时这个标签就可以分别具有这些类名的样式

📌

当样式冲突时,后面的样式会覆盖前面的样式

基本语法如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>多类名选择器</title>
    <style>
        .red{
            color: red;
        }
        .blue{
            color: blue;
        }
        .green{
            color: green;
        }
        .fontStyle
        {
            font-size: 30px;
        }

    </style>
</head>
<body>
    <div class="red fontStyle">
        第一个盒子中的文字为红色,字体为30px
    </div>
    <div class="blue green">
        第二个盒子中的文字为绿色,字体大小不变
    </div>
    <div class="green fontStyle">
        第三个盒子中的文字为绿色,字体大小为30px
    </div>
</body>
</html>

效果如下:

id选择器

id选择器的使用

id 选择器可以为标有特定 id 的 HTML 标签指定特定的样式

HTML 元素以 id 属性来设置 id 选择器,CSS 中 id 选择器以#来定义

💡

每一个id 属性名只能在每个 HTML 文档中出现一次,并且不可以被多个标签调用

基本语法如下:

/* 设计id选择器 */
#选择器名 {
    /* 键值对 */
}

/* id调用 */
<标签 id="选择器名"></标签>

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>id选择器</title> 
    <style>
        #box{
            width: 200px;
            height: 200px;
            background-color: red;
        }
        .fontStyle
        {
            color: blue;
        }
    </style>
    </style>
</head>
<body>
    <!-- 将div盒子设置为红色 -->
    <div id="box">
        <!-- 将段落设置为蓝色 -->
        <p class="fontStyle">我是一个段落</p>
    </div>
</body>
</html>

效果如下:

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>id选择器</title> 
    <style>
        #box{
            width: 200px;
            height: 200px;
            background-color: red;
        }
        #box1{
            width: 200px;
            height: 200px;
            background-color: green;
        }
        .fontStyle
        {
            color: blue;
        }
    </style>
    </style>
</head>
<body>
    <!-- 将div盒子设置为红色 -->
    <div id="box">
        <!-- 将段落设置为蓝色 -->
        <p class="fontStyle">我是一个段落</p>
    </div>
    <!-- 将div盒子设置为绿色 -->
    <div id="box1">
        <!-- 将段落设置为蓝色 -->
        <p class="fontStyle">我是一个段落</p>
    </div>
</body>
</html>

效果如下:

id选择器和类选择器的区别

  1. 类选择器类似于人的名字,一个人可以有多个名字,同时一个名字也可以被多个人使用
  2. id 选择器类似于人的身份证号码是唯一的,不得重复
  3. id 选择器和类选择器最大的不同在于使用次数上,一个类可以被多个标签调用,但是一个id只能给一个标签调用
  4. 类选择器在修改样式中用的最多,id 选择器一般用于页面唯一性的元素上,经常和 JavaScript 搭配使用

通配符选择器

在 CSS 中,通配符选择器使用*定义,它表示选取页面中所有元素(标签)

基本语法:

* {
    /* 键值对 */
}

📌

通配符选择器不需要调用, 自动就给所有的元素使用样式。

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>通配符选择器</title>
    <style>
        /* 将页面所有内容都设置为下面的属性值 */
        * {
            color: red;
            font-size: 20px;
        }
    </style>
</head> 
<body>
    <!-- 段落标签 -->
    <p>段落标签</p>
    <!-- 标题标签 -->
    <h1>标题标签</h1>
    <!-- div标签 -->
    <div>div标签</div>
</body>
</html>

效果如下:

基础选择器总结

基础选择器

作用

特点

标签选择器

改变所有匹配指定标签的内容的样式

一次性改变同类型的所有标签包含的内容的样式

类选择器

改变调用类的标签内容的样式

只改变调用类的标签的内容样式,并且一个类可以被多个标签调用,一个标签可以调用多个类

id选择器

改变调用id的标签内容的样式

只改变调用id的标签内容的样式,一个类只能调用一个id选择器,一个id选择器只能被一个类调用,不能被多次调用

通配符选择器

改变整个页面内容的样式

一次性修改整个页面内容的样式

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

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

相关文章

无风扇嵌入式车载电脑在矿山车辆行业应用

矿山车辆行业应用 背景介绍 现代的采矿业面临许多的挑战&#xff0c;其中最重要的就是安全性的问题&#xff0c;无论在矿井下或地面上的工作&#xff0c;都必须确保员工的安全保障。因此&#xff0c;先进的矿车必须整合专用的车载电脑&#xff0c;在极其恶劣的采矿环境中稳定运…

Python 数据结构和算法实用指南(三)

原文&#xff1a;zh.annas-archive.org/md5/66ae3d5970b9b38c5ad770b42fec806d 译者&#xff1a;飞龙 协议&#xff1a;CC BY-NC-SA 4.0 第七章&#xff1a;哈希和符号表 我们之前已经看过数组和列表&#xff0c;其中项目按顺序存储并通过索引号访问。索引号对计算机来说很有效…

SQLite作为应用程序文件格式(二十八)

返回&#xff1a;SQLite—系列文章目录 上一篇:SQLite数据库中JSON 函数和运算符(二十七) 下一篇&#xff1a;SQLite—系列文章目录 摘要 具有定义架构的 SQLite 数据库文件 通常是一种出色的应用程序文件格式。 以下是十几个原因&#xff1a; 简化的应用程序开发单文…

Spring Cloud Gateway集成聚合型Spring Boot API发布组件knife4j,增强Swagger

大家都知道&#xff0c;在前后端分离开发的时代&#xff0c;前后端接口对接是一项必不可少的工作。 可是&#xff0c;作为后端开发&#xff0c;怎么和前端更好的配合&#xff0c;才能让自己不心累、脑累&#xff0c;直接扔给前端一个后端开放api接口文档或者页面&#xff0c;让…

Spark/SparkSQL读取Hadoop LZO文件概述

一、前置配置 IDEA Maven安装配置 Scala&#xff08;可选&#xff09; Java Hadoop.dll&#xff08;可能需要&#xff0c;具体看有无相关错误信息&#xff09; hadoop-lzo-0.xx.xx.jar&#xff08;如果你的版本过高&#xff0c;需要到官网下载高版本&#xff0c;mvnrepository仓…

Elasticsearch:如何将 MongoDB 数据引入 Elastic Cloud

作者&#xff1a;Hemendra Singh Lodhi Elastic Cloud 是由 Elastic 提供的基于云的托管服务。Elastic Cloud 允许客户在亚马逊网络服务 (AWS)、谷歌云平台 (GCP) 和微软 Azure 上部署、管理和扩展他们的 Elasticsearch 集群。 MongoDB 是一种流行的 NoSQL 文档导向数据库&am…

(vue)el-select选择框加全选/清空/反选

(vue)el-select选择框加全选/清空/反选 <el-form-item label"批次"><el-selectv-model"formInline.processBatch"multiplecollapse-tagsfilterableplaceholder"请选择"style"width: 250px"no-data-text"请先选择企业、日…

React - 高级用法

React高级用法 Hooks Reducer useReducer&#xff1a; import React, { useReducer, useState } from react;const initialState { count: 0 };function reducer(state, action) {switch (action.type) {case increment:return { count: state.count 1 }case decrement:re…

获取公募基金持仓【数据分析系列博文】

摘要 从指定网址获取公募基金持仓数据&#xff0c;快速解析并存储数据。 &#xff08;该博文针对自由学习者获取数据&#xff1b;而在投顾、基金、证券等公司&#xff0c;通常有Wind、聚源、通联等厂商采购的数据&#xff09; 1. 导入必要的库&#xff1a; pandas 用于数据处理…

「Qt Widget中文示例指南」如何实现行编辑功能

Qt 是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写&#xff0c;所有平台无差别运行&#xff0c;更提供了几乎所有开发过程中需要用到的工具。如今&#xff0c;Qt已被运用于超过70个行业、数千家企业&#xff0c;支持数百万设备及应用。 Line Edits&#xf…

后端插入数据库问题

IDEA报错&#xff1a;Error updating database. Cause: java.sql.SQLException: Column count doesn’t match value count at row 1 1、看报错消息&#xff0c;SQLException&#xff0c;定位到SQL语句问题 并且看best guess最好猜测&#xff0c;再去找路径下的ShoppingCartMa…

React-基础语法学习

1、教程&#xff1a;井字棋游戏 本教程将引导你逐步实现一个简单的井字棋游戏&#xff0c;并且不需要你对 React 有任何了解。在此过程中你会学习到一些编写 React 程序的基本知识&#xff0c;完全理解它们可以让你对 React 有比较深入的理解。 1.1、教程分成以下几个部分&am…

Hudi-IDEA编程

项目 一、HudiSparkKafka&#xff08;Scala&#xff09; 配置详见【1.Scala配置】 依赖详见【1.HudiSparkKafka依赖】 1-1 构建SparkSession对象 def main(args: Array[String]): Unit {//1.构建SparkSession对象val spark: SparkSession SparkUtils.createSparkSession(…

社交媒体数据恢复:YY语音

YY语音数据恢复指南 在我们的日常生活中&#xff0c;数据丢失是一种常见的现象。有时候&#xff0c;我们可能会不小心删除了重要的文件&#xff0c;或者因为硬件故障而导致数据丢失。在这种情况下&#xff0c;数据恢复软件可以帮助我们找回丢失的数据。本文将重点介绍如何使用Y…

手机拍照技术

拍照技巧 说明: 本文将主要介绍摄影和手机常见技巧&#xff1b; 1. 摄影的基本知识 **说明&#xff1a;**关于摄影&#xff0c;手机和相机的原理都是相同的&#xff0c;不同的是相机在很多方面优于手机&#xff0c;但是专业的设备对于我们这种的非专业的人来说&#xff0c;刚…

MAC上如何将某个目录制作成iso格式磁盘文件,iso文件本质是什么?以及挂载到ParallelDesktop中?(hdiutil makehybrid )

背景 ParallelsDesktop没有安装ParallelsTools的无法共享目录&#xff0c;可以通过ParallelsDesktop提供CD磁盘的方式共享进去 命令 # 准备文档 mkdir mytestdir cp xxx mytestdir# 生成iso hdiutil makehybrid -o output.iso mytestdir -iso -joliethdiutil是MAC提供的磁盘…

linux 修改 root 密码

1、先重启 2、看到下面的界面&#xff0c;按上下箭头&#xff0c;然后按 e 键。 3、进入该界面&#xff0c;按界面步骤操作 4、按ctrlx&#xff0c;进入到下面的界面&#xff0c;依次输入下面的指令即可 mount -o remount,rw /sysroot #让sysroot 能读写chroot /sysroot #切换到…

校园综合服务平台V3.9.2 源码修复大部分已知BUG

校园综合服务平台&#xff0c;版本更新至V3.9.1 &#xff0c;源码功能强大&#xff0c;ui 精美&#xff0c; 功能包含但不限于校园跑腿&#xff0c;外卖&#xff0c;组局&#xff0c;圈子&#xff0c;商城&#xff0c;抽奖&#xff0c;投票&#xff0c;团购&#xff0c;二手市场…

Python中2种常用数据可视化库:Bokeh和Altair

本文分享自华为云社区《探究数据可视化&#xff1a;Bokeh vs. Altair》&#xff0c;作者&#xff1a;柠檬味拥抱。 在数据科学和数据分析领域&#xff0c;数据可视化是一种强大的工具&#xff0c;可以帮助我们更好地理解数据、发现模式和趋势。Python作为一种流行的数据科学工…

【QT进阶】Qt Web混合编程之QWebEngineView基本用法

往期回顾 【QT入门】Qt自定义控件与样式设计之自定义QTabWidget实现tab在左&#xff0c;文本水平的效果-CSDN博客【QT进阶】Qt Web混合编程之CEF、QCefView简单介绍-CSDN博客 【QT进阶】Qt Web混合编程之VS2019 CEF的编译与使用-CSDN博客 【QT进阶】Qt Web混合编程之QWebEngi…