CSS概述 | CSS的引入方式 | 选择器

文章目录

        • 1.CSS概述
        • 2.CSS的引入方式
          • 2.1.内部样式表
          • 2.2.行内样式表
          • 2.3.外部样式表
        • 3.选择器

1.CSS概述

CSS,全称Cascading Style Sheets(层叠样式表),是一种用来设置HTML(或XML等)文档样式的语言。CSS的主要作用是描述网页的布局和外观,包括颜色、字体、间距、背景图像等,CSS可以和HTML内容经行分离,这样,一个CSS样式可以用在多个HTML页面,修改时候可以只修改一个CSS文件即可。

CSS的基本语法

选择器 + 一条或N条声明选择器决定针对谁做修改,比如想要对p标签中的字体大小和颜色进行修改,那么p就是一个选择器,这样类型的选择器称为元素选择器

声明,是在一对花括号{}中进行声明 ,每个声明都由两部分组成:属性和值;注:CSS 不区分大小写, 开发时通常使用使用小写字母

p {
  color: red;
  font-size: 16px;
}
2.CSS的引入方式
2.1.内部样式表

通过style 标签将CSS样式嵌入到 html 内部,当CSS内容特别多的时候,html页面就显得很大。这不是一种很好的方法,但是有些网页还是会用,我感觉是历史遗留的问题,哈哈哈。

理论上来说 style 放到 html 的哪里都行,但是一般都是放到 head 标签中。

<html lang="en">
<head>
    <style>
        p {
            color: blue;
        }
    </style>
</head>
<body>
    <div>
        <p>天空为什么是蓝色的</p>
    </div>
</body>
</html>
2.2.行内样式表

通过 style 属性, 来指定某个标签的样式,只适合于写简单样式. 只针对某个标签生效,这种写法优先级较高, 会覆盖其他的样式

<head>
    <style>
        p { color: red; }
    </style>
</head>
<body>
    <p style="color:blue">天空是什么颜色</p> 
</body>
2.3.外部样式表

实际开发中最常用的方式,创建后缀为css的文件, 使用 link 标签引入 css。

在同级目录下的css文件夹中创建style.css文件

p{
    color: blue;
    font-size: 18px;
}

在一个HTML的文件中引用外部的css文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./css/style.css">
</head>
<body>
    <p>大海为什么是蓝色的</p>
</body>
</html>

这样的好处是css样式和html结构彻底分离了,但是受到浏览器缓存影响, 修改之后 不一定 立刻生效。

关于浏览器的缓存

缓存(Cache):提升性能的技术手段,网页依赖的资源(图片/CSS/JS等)通常是从服务器上获取,如果频繁访问该网站, 那么这些外部资源就没必要反复从服务器获取,浏览器就可以使用缓存先存起来(就是存在本地磁盘上), 减少网络传输的时间和带宽消耗,从而提高访问效率。可以使用 ctrl + F5 强制刷新页面;

3.选择器

前面我们就一直在使用选择器(元素选择器),选择器选中标签元素从而设置元素的属性。选择器可以分为基础选择器和复合选择器,我主要分享常见的基础选择器,关于复合选择器可以去参考文档:链接

注:下面的css代码,都是放在和html同级的css文件夹下

标签选择器

能快速为同一类型的标签都选择出来,但是不能差异化选择

p{
    color: blue;
    font-size: 18px;
}
<link rel="stylesheet" href="./css/style.css">
<p>大海为什么是蓝色的</p>
<p>红苹果</p>

展示结果:使用p标签标识的标签就都是蓝色的了

在这里插入图片描述

类选择器

类名用.开头的,下方的标签使用 class 属性来调用,如果类名过长, 可以使用 - 分割

.box-height-width{
    height: 50px;
    width: 300px;
}

.blue{
    color: blue;
}

.red{
    color: red;
}

html页面可以使用class引入多个样式,中间用空格隔开

<p class="blue box-height-width">大海为什么是蓝色的</p>
<p class="red ">苹果是红色的</p>

展示结果:

在这里插入图片描述

id选择器

CSS 中使用 # 开头表示 id 选择器,id 是唯一的, 不能被多个标签使用 (是和 类选择器 最大的区别)

#box{
    height: 500px;
}

#blue{
    color: blue;
}
<p id="blue box">苹果</p>
<p id="blue">大海为什么是蓝色的</p>

展示结果:

在这里插入图片描述

通配符选择器

使用 * 的定义, 选取所有的标签

* {
    color: blue;
}

页面的所有内容都会被改成 红色,可以用于修改浏览器的默认属性

复合选择器(了解)

使用基础选择器组合,常见的符合选择器有:后代选择器、子选择器、并集选择器、伪类选择器

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Code Composer Studio (CCS) - Current and Local Revision

Code Composer Studio [CCS] - Current and Local Revision References 鼠标放在文件内的任意位置&#xff0c;鼠标右键 -> Compare With -> Local History -> Revision Time. References [1] Yongqiang Cheng, https://yongqiang.blog.csdn.net/

vue-路由(六)

阅读文章你可以收获什么&#xff1f; 1 明白什么是单页应用 2 知道vue中的路由是什么 3 知道如何使用vueRouter这个路由插件 4 知道如何如何封装路由组件 5 知道vue中的声明式导航router-link的用法 6 知道vue中的编程式导航的使用 7 知道声明式导航和编程式导航式如何传…

【数据结构】18 二叉搜索树(查找,插入,删除)

定义 二叉搜索树也叫二叉排序树或者二叉查找树。它是一种对排序和查找都很有用的特殊二叉树。 一个二叉搜索树可以为空&#xff0c;如果它不为空&#xff0c;它将满足以下性质&#xff1a; 非空左子树的所有键值小于其根节点的键值非空右子树的所有键值都大于其根结点的键值左…

Rust 学习笔记 - 注释全解

前言 和其他编程语言一样&#xff0c;Rust 也提供了代码注释的功能&#xff0c;注释用于解释代码的作用和目的&#xff0c;帮助开发者理解代码的行为&#xff0c;编译器在编译时会忽略它们。 单行注释 单行注释以两个斜杠 (//) 开始&#xff0c;只影响它们后面直到行末的内容…

Java面向对象三大特征之封装

封装的作用和含义&#xff1a; 程序的设计要追求“高内聚&#xff0c;低耦合”。高内聚就是类的内部数据操作细节自己完成&#xff0c;不允许外部干涉&#xff1b;低耦合是仅暴露少量的方法给外部使用&#xff0c;尽量方便外部调用。 编程中封装的具体优点&#xff1a; 提高代…

Days 33 ElfBoard 固定CPU频率

ELF 1开发板选用的是主频800MHz NXP的i.MX6ULL处理器。根据实际的应用场景&#xff0c;如果需要降低CPU功耗&#xff0c;其中一种方法可以将CPU频率固定为节能模式&#xff0c;下面以这款开发板为例给小伙伴们介绍一下固定CPU频率的方法。 先来介绍一下与CPU频率相关的命令&…

关于umi ui图标未显示问题

使用ant design pro 时&#xff0c;安装了umi ui &#xff0c;安装命令&#xff1a; yarn add umijs/preset-ui -D但是启动项目后&#xff0c;发现没有显示umi ui的图标 找了许多解决方案&#xff0c;发现 umi的版本问题&#xff0c;由于我使用的ant design pro官网最新版本&a…

Quantitative Analysis: PIM Chip Demands for LLAMA-7B inference

1 Architecture 如果将LLAMA-7B模型参数量化为4bit&#xff0c;则存储模型参数需要3.3GB。那么&#xff0c;至少PIM chip 的存储至少要4GB。 AiM单个bank为32MB&#xff0c;单个die 512MB&#xff0c;至少需要8个die的芯片。8个die集成在一个芯片上。 提供816bank级别的访存带…

解决IDEA的Project无法正常显示的问题

一、问题描述 打开IDEA&#xff0c;结果发现项目结构显示有问题&#xff1a; 二、解决办法 File -> Project Structure… -> Project Settings (选Modules)&#xff0c;然后导入Module 结果&#xff1a; 补充&#xff1a; IDEA提示“The imported module settings a…

root MUSIC 算法补充说明

root MUSIC 算法补充说明 多项式求根root MUSIC 算法原理如何从 2 M − 2 2M-2 2M−2 个根中确定 K K K 个根从复数域上观察 2 M − 2 2M-2 2M−2 个根的分布 这篇笔记是上一篇关于 root MUSIC 笔记的补充。 多项式求根 要理解 root MUSIC 算法&#xff0c;需要理解多项式求…

面试题-01

1、JDK 和 JRE 和 JVM 分别是什么&#xff0c;有什么区别&#xff1f; JDK&#xff08;Java Development Kit&#xff0c;Java 软件开发工具包&#xff09; JDK&#xff08;Java Development Kit&#xff09;&#xff1a;JDK 是 Java 开发⼯具包&#xff0c;包含了编写、编译…

社区居家养老新选择,全视通智慧方案让长者生活更安心

随着人口老龄化趋势加剧&#xff0c;养老问题已经成为社会各界关注的焦点。我国政府积极采取相关措施&#xff0c;加速推动养老服务业的健康发展。2023年5月&#xff0c;《城市居家适老化改造指导手册》发布&#xff0c;针对城市老年人居家适老化改造需求&#xff0c;提出了47项…

Linux线程(1)--线程的概念 | 线程控制

目录 前置知识 线程的概念 Linux中对线程的理解 重新定义进程与线程 重谈地址空间 线程的优缺点 线程的优点 线程的缺点 线程异常 线程的用途 Linux线程 VS 进程 线程控制 创建线程 线程等待 线程终止 线程ID的深入理解 前置知识 我们知道一个进程有属于自己的P…

python学习24

前言&#xff1a;相信看到这篇文章的小伙伴都或多或少有一些编程基础&#xff0c;懂得一些linux的基本命令了吧&#xff0c;本篇文章将带领大家服务器如何部署一个使用django框架开发的一个网站进行云服务器端的部署。 文章使用到的的工具 Python&#xff1a;一种编程语言&…

macOS开启HiDPI外接2K显示器(解决字体发虚问题)

1.前言&#xff1a; 购置了一台2K显示器&#xff0c;但通过HDMI直接连接时的显示效果让人难以接受&#xff0c;因此我们需要启用苹果系统的HiDPI模式&#xff0c;以实现更完美的显示效果。 那么&#xff0c;为什么要启用HiDPI模式呢&#xff1f;2K显示器的分辨率为2560*1440&…

数学建模【线性规划】

一、线性规划简介 线性规划通俗讲就是“有限的资源中获取最大的收益”&#xff08;优化类问题&#xff09;。而且所有的变量关系式都是线性的&#xff0c;不存在x、指数函数、对数函数、反比例函数、三角函数等。此模型要优化的就是在一组线性约束条件下&#xff0c;求线性目标…

7.1 Qt 中输入行与按钮

目录 前言&#xff1a; 技能&#xff1a; 内容&#xff1a; 参考&#xff1a; 前言&#xff1a; line edit 与pushbotton的一点联动 当输入行有内容时&#xff0c;按钮才能使用&#xff0c;并能读出输入行的内容 技能&#xff1a; pushButton->setEnabled(false) 按钮不…

17.3.2.9 像素处理与内存处理之比较

版权声明&#xff1a;本文为博主原创文章&#xff0c;转载请在显著位置标明本文出处以及作者网名&#xff0c;未经作者允许不得用于商业目的。 通过第17.3.2.1节到第17.3.2.8节&#xff0c;相信读者对通过锁定内存来处理图像有了一定认识。与第17.3.1节相比较&#xff0c;可以…

【递归】【后续遍历】【迭代】【队列】Leetcode 101 对称二叉树

【递归】【后续遍历】Leetcode 101 对称二叉树 解法一&#xff1a; 递归&#xff1a;后序遍历 左右中解法二&#xff1a; 迭代法&#xff0c;用了单端队列 ---------------&#x1f388;&#x1f388;对称二叉树 题目链接&#x1f388;&#x1f388;------------------- 解法一…

项目开发日志(登录界面):2. LoginTitle组件

LoginTitle组件 样式 说明 属性 属性名含义类型是否必填默认值welcomeTitle欢迎标语String是无mainTitle标题String是无 样式 mainColor -> 主题颜色 代码 <template><div class"logintitle-container"><p class"subtitle">{{ welc…