HTML的修饰(CSS) -- 第三课

文章目录

  • 前言
  • 一、CSS是什么?
  • 二、使用方式
    • 1. 基本语法
    • 2. 引入方式
      • 1.行内式
      • 2.内嵌式
      • 3. 链入式
    • 3. 选择器
      • 1. 标签选择器
      • 2.类选择器
      • 3. id选择器
      • 4. 通配符选择器
    • 4. css属性
      • 1. 文本样式属性
      • 2. 文本外观属性
    • 5. 元素类型及其转换
      • 1. 元素的类型
      • 2. 元素的转换
    • 6.css高级特性
      • 1. 复合选择器
      • 2. css层叠性和继承性
        • 1. 层叠性
        • 2. 继承性
      • 3. css优先级
  • 总结


前言

前面我们已经了解了html的一些基本使用方法,我们再写html代码的时候不可避免的会改变其中的一些样式,而这就有一种专门的方式用来修饰html编写的网页的样式,它就是css!


一、CSS是什么?

CSS(层叠样式表)是一种用于描述网页上元素的样式和布局的语言。它与HTML结合使用,可以通过选择器来选择元素,并通过属性来定义元素的外观和行为。CSS可以控制文字的颜色、大小和字体样式,以及元素的大小、位置和背景等。通过使用CSS,可以使网页更具吸引力、易读性和可访问性。

二、使用方式

1. 基本语法

选择器 { 属性1: 值1; 属性2: 值2; … }

2. 引入方式

1.行内式

行内式也称为内联样式,是通过标记的stvle属性来设置元素的样式。

<标记名style="属性1:属性值1;属性2:属性值2;属性3:属性值3;"> 内容 </标记名>

2.内嵌式

内嵌式是将CSS代码集中写在HTML文档的头部标记中,并且用**

<head>
<style type="text/css">选择器{属性1:属性值1;属性2:属性值2;属性3:属性值3;}
</style>
</head>
div{color: red;font-size: 20px;
}

3. 链入式

链入式是将所有的样式放在一介或多个以.css为扩展名的外部样式表文件中,通过标记将外部样式表文件链接到HTML文档中。

<head><link href="Css文件的路径"type="text/css"rel="stylesheet"/>
</head>

3. 选择器

1. 标签选择器

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><!-- 3.链入式 -- 开发的时候一般都会使用这种方式--><link rel="stylesheet" href="./style.css"><!-- 2.内嵌式 --><style>div{color: red;font-size: 20px;}</style>
</head>
<body><!-- 1.引入css样式 - 行内式,不推荐,写标签的地方建议只写标签 --><div style="color: red;font-size: 20px;">123</div><div>123</div></body>
</html>

上述案例中style标签中的div就属于标签选择器

2.类选择器

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><!-- 类选择器 --><style>/*选择class属性值为box的标签 -- 可以有多个标签有相同的class属性值 每个class标签可以有多个名字*/.box{color: red;font-size: 20px;}.box1{width: 100px;height: 100px;font-size: 50px;background-color: aliceblue;}.box2{width: 200px;height: 200px;background-color: aqua;}</style>
</head>
<body><div class="box box1">123</div><div class="box box2">123</div><p class="box">这是p标签</p>
</body>
</html>

3. id选择器

id选择器使用“#”进行标识,后面紧跟id名,其基本语法格式如下:

/* id名{属性1:属性值1;属性2:属性值2;属性3:属性值3;} */
<style>#box{width: 100px;height: 100px;background-color:aquamarine;}
</style>

4. 通配符选择器

<style>*{color: red;font-size: 10px;/* 清除样式 */list-style: none;}
</style>

4. css属性

1. 文本样式属性

学习HTML时,可以使用文本样式标记及其属性控制文本的显示样式,但是这种方式繁琐且不利于代码的共享和移植。为此,CSS提供了相应的文本样式属性。

为了更方便的控制网页中各种各样的字体,css提供了一系列的字体样式属性

  1. font-size属性用于设置字号。

    • 常用单位

      1. 像素(px):像素是最常用的单位,它表示屏幕上的一个物理像素。例如,font-size: 16px; 表示文本的大小为16像素。
      2. 百分比(%):百分比单位相对于父元素的尺寸来计算。例如,font-size: 120%; 表示文本的大小为父元素字体大小的120%。
      3. em(em):em单位相对于当前元素的字体大小来计算。例如,font-size: 2em; 表示文本的大小为当前元素字体大小的两倍。
      4. rem(rem):rem单位相对于根元素(通常是元素)的字体大小来计算。例如,font-size: 1.5rem; 表示文本的大小为根元素字体大小的1.5倍。
      5. vw(视口宽度单位):vw单位是相对于视口宽度的百分比单位。例如,font-size: 5vw; 表示文本的大小为视口宽度的5%。
      6. vh(视口高度单位):vh单位是相对于视口高度的百分比单位。例如,font-size: 10vh; 表示文本的大小为视口高度的10%。
      7. rem和em的区别:rem单位相对于根元素的字体大小计算,而em单位相对于当前元素的字体大小计算。rem单位可以更好地控制整个页面的大小,而em单位相对于父元素的尺寸来计算,可以用于更细粒度地控制元素的大小。
  2. font-family属性用于设置字体。

    • 常用字体
      1. Arial:这是一种无衬线字体,广泛用于Web设计中。
      2. Helvetica:也是一种无衬线字体,非常相似于Arial。
      3. Times New Roman:这是一种衬线字体,很常见于印刷和出版物中
      4. Georgia:也是一种衬线字体,适合用于阅读大段文字。
      5. Verdana:这是一种宽松的无衬线字体,适合在小尺寸和低分辨率屏幕上使用。
      6. Tahoma:这也是一种无衬线字体,比较紧凑,适合用于小尺寸和高分辨率屏幕。
  3. font-weight属性用于定义字体的粗细。

    • 常用属性
      1. normal:默认值,表示使用正常的字体粗细。
      2. bold:表示使用粗体字体。
      3. bolder:更加粗体的字体,相对于父元素的字体粗细而言。
      4. lighter:更加细的字体,相对于父元素的字体粗细而言。
      5. 数字值(100、200、…、900):表示使用特定的字体粗细,数字越大表示字体越粗。常用的数字值有100(thin)、400(normal)、700(bold)。
      6. initial:表示使用默认的字体粗细。
      7. inherit:表示继承父元素的字体粗细。
  4. font-variant属性用于设置变体(字体变化)。

    • 属性值

      1. normal:默认值,不改变字体的大小写形式。
      2. small-caps:将所有小写字母转换为小型大写字母,同时保持大写字母不变。
  5. font-style属性用于定义字体风格

    • 属性

      1. normal:默认值,标准的字体样式。
      2. italic:斜体字体样式。
      3. oblique:倾斜字体样式。
  6. font属性用于对字体样式进行综合设置。

    • 在CSS的font属性中,参数的顺序是有特定的规定的。它们的顺序应该按照以下顺序排列:

      1. font-style(字体样式)
      2. font-variant(字体变体)
      3. font-weight(字体粗细)
      4. font-size(字体大小)
      5. line-height(行高)
      6. font-family(字体系列)

2. 文本外观属性

  1. color:设置文本颜色。

  2. font-family:设置文本的字体系列。

  3. font-size:设置文本的字体大小。

  4. font-weight:设置文本的字体粗细。

  5. font-style:设置文本的字体样式,比如斜体。

  6. text-align:设置文本的对齐方式,比如左对齐(left)、居中对齐(center)、右对齐(right)等。

  7. text-decoration:设置文本的装饰效果,比如下划线(underline)、上划线(overline)、删除线(line_through)等。

  8. text-transform:设置文本的大小写转换,比如大写、小写、首字母大写等。

    1. none:不进行大小写转换,保持原样。
    2. capitalize:将每个单词的首字母转换为大写。
    3. uppercase:将文本中的所有字母转换为大写。
    4. lowercase:将文本中的所有字母转换为小写。
    5. initial:将属性重置为默认值。
    6. inherit:从父元素继承属性值。
  9. letter-spacing:设置字符间的间距。

  10. line-height:设置行高,控制行与行之间的距离。

  11. white-space:设置文本的处理方式,比如处理空格、换行等。

  12. text-indent 用于设置首行文本的缩进,其属性值可为不同的数值,em字符宽度的倍数,或相对于浏览器窗口的百分比,允许使用负值,建议使用em设置单位

  13. background-color:背景颜色,可以使用rgb(30,0,0),十六制颜色(#ccc),英文单词(red)

5. 元素类型及其转换

1. 元素的类型

HTML标记被定义成了不同的类型,一般分为块标记和行内标记,也称块元素和行内元素。

  1. 块元素

    1. 在页面中以区域块的形式出现。
    2. 每个块元素通常都会独自占据—整行或多整行
    3. 可以对其设置宽度、高度、对齐等属性。
    4. 常见的块元素:h1-h6,div,p,li,ol,ul
  2. 行内元素

    1. 不占有独立的区域。
    2. 仅仅靠自身的字体大小和图像尺寸来支撑结构。
    3. 一般不可以设置宽度、高度、对齐等属性。
    4. 常见的行内元素:strong,b,a,em,u(下划线),span
  3. 行内块元素

    1. 不会独占一行
    2. 能够调整宽高
    3. 本身高度默认是由内容撑开的

行内块元素的使用场景包括创建按钮、图像展示、菜单栏等。通过使用行内块元素可以实现一些复合性的布局效果,并且可以在不破坏文本流的情况下控制元素的尺寸和外观。

2. 元素的转换

请添加图片描述

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>div{width: 200px;height: 200px;background-color: antiquewhite;/* 转换成行内块元素 *//* 注意行内元素inline和行内块元素inline-block */display: inline-block;}</style>
</head>
<body><div>box1</div><div>box2</div><span>这是span标签</span>
</body>
</html>

6.css高级特性

1. 复合选择器

  1. 标签指定选择器
    标签指定式选择器又称交集选择器,由两个选择器构成,其中第一个为标记选择器,第二个为class选择器或id选择器,两个选择器之间不能有空格,如h3.special或p#one。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>/* 交集选择器 :单独选中class属性为box1的div标签*/div.box1{width: 100px;height: 100px;background-color: antiquewhite;}</style>
</head>
<body><!-- 交集选择器示例 --><div class="box1">div标签</div><li><p class="box2">p标签</p></li><span>span标签</span><div>这也是一个div标签</div>
</body>
</html>
  1. 后代选择器
    后代选择器用来选择元素或元素组的后代,其写法就是把外层标记写在前面,内层标记写在后面,中间用空格分隔。当标记发生嵌套时,内层标记就成为外层标记的后代。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>/* 后代选择器 -- 所有代*/ul li{font-size: 50px;}/* 子选择器 -- 只有第一代 */ul>li{font-size: 50px;}</style>
</head>
<body><!-- 后代选择器示例 --><ul><li>1</li><li>2</li><li>3</li><span><li>4</li></span></ul><ol><li>4</li><li>5</li><li>6</li></ol>
</body>
</html>
  1. 并集选择器
    并集选择器是各个选择器通过逗号连接而成的,任何形式的选择器都可以作为并集选择器的一部分。若某些选择器定义的样式完全或部分相同,可利用并集选择器为它们定义相同的样式。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>/* 同时选择到p和div标签 -- 并集选择器 */div,p{width: 200px;height: 200px;background-color: yellow;}.box1,.box2{width: 100px;height: 100px;background-color:yellowgreen;}</style>
</head>
<body><!-- 并集选择器示例 --><div class="box1">div标签</div><li><p class="box2">p标签</p></li><span>span标签</span>
</body>
</html>

2. css层叠性和继承性

1. 层叠性

所谓层叠性是指多种CSS样式的叠加。

2. 继承性

所谓继承性是指书写CSS样式表时,子标记会继承父标记的某些样式,如文本颜色和字号。

并不是所有的CSS属性都可以继承,例如。下面的属性就不具有继承性:边框属性,定位属性,内外边距属性,布局属性,背景属性,元素宽高属性

3. css优先级

思考? 网页制作时,对统一元素,应用不同的背景,会出现什么情况?

定义CSS样式时,经常出现两个或更多规则应用在同一元素上,这时就会出现优先级的问题。

<p class="father" id="header"><strong class="blue">文本的颜色</strong>

请添加图片描述在考虑权重时,初学者还需要注意一些特殊的情况,具体如下:继承样式的权重为0。行内样式优先。权重相同时,CSS遵循就近原则。CSS定义了一个important命令,该命令被赋予最大的优先级


总结

本节主要介绍了css 的基本用法和属性,内容较多,多多练习,熟能生巧!

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

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

相关文章

基于SpringBoot+Vue的驾校官网

一、项目介绍 > 这是一个基于SpringBootVueElementPlus开发的驾校官网。 > 包括用户登录注册、在线学习、模拟考试、预约学车、在线咨询等功能。 > 该项目适用于JAVA初学者的学习项目或毕业课程设计。 二、基础依赖 技术/框架版本描述Java8编程语言Maven3.6依赖…

拥抱可持续创新,数据驱动未来——The Open Group 2024生态系统架构·可持续发展年度大会盛情邀约

随着全球数字化浪潮的持续推进和可持续发展理念的深入人心&#xff0c;企业正面临前所未有的机遇与挑战。如何在保障安全的前提下&#xff0c;实现数据驱动的业务增长与降本增效&#xff0c;已经成为企业数字化转型的核心课题。为此&#xff0c;The Open Group 2024生态系统架构…

领域偏移:协变量移位下的域自适应

现在我们将焦点转移到一种叫做协变量转移的扰动上。我们在一个分类或回归设置中工作&#xff0c;我们希望从x预测y&#xff0c;并假设p≈(y | x)和p∗(y | x)是相同的(标记函数在训练和测试之间不会改变) 假设 (Covariate Shift)。对于列车分布p~和检验分布p∗&#xff0c;我们…

七,MyBatis-Plus 扩展功能:乐观锁,代码生成器,执行SQL分析打印(实操详细使用)

七&#xff0c;MyBatis-Plus 扩展功能&#xff1a;乐观锁&#xff0c;代码生成器&#xff0c;执行SQL分析打印&#xff08;实操详细使用&#xff09; 文章目录 七&#xff0c;MyBatis-Plus 扩展功能&#xff1a;乐观锁&#xff0c;代码生成器&#xff0c;执行SQL分析打印&#…

【卡尔曼滤波】 Kalman Filter 原理详解与公式推导

【卡尔曼滤波】 Kalman Filter 原理详解与公式推导 前言引例&#xff1a;什么是卡尔曼滤波&#xff1f;图解卡尔曼滤波引入从宏观上理解卡尔曼融合从微观上理解状态矩阵先验状态矩阵观测状态矩阵 卡尔曼滤波公式理解参数说明预测阶段&#xff08;Prediction&#xff09;更新阶段…

生信初学者教程(二十):免疫浸润分析

文章目录 介绍加载R包导入数据所需函数堆积图箱线图热图相关性矩阵图输出结果总结介绍 在本章节中,将详细探讨免疫细胞的组成结构、其在不同个体和分组之间的相对丰度差异,并通过热图等可视化手段,对这些差异进行直观而深入的解析。这些分析将有助于科研人员更好地理解免疫细…

L0-Linux-关卡材料提交

SSH全称Secure Shell&#xff0c;中文翻译为安全外壳&#xff0c;它是一种网络安全协议&#xff0c;通过加密和认证机制实现安全的访问和文件传输等业务。SSH 协议通过对网络数据进行加密和验证&#xff0c;在不安全的网络环境中提供了安全的网络服务。 SSH 是&#xff08;C/S…

IDE 使用技巧与插件推荐全面指南

目录 目录 常用IDE概述 Visual Studio Visual Studio Code IntelliJ IDEA PyCharm Eclipse IDE 使用技巧 通用技巧 Visual Studio 专属技巧 Visual Studio Code 专属技巧 IntelliJ IDEA 专属技巧 插件推荐 Visual Studio 插件 Visual Studio Code 插件 IntelliJ…

《如何高效学习》

有道云笔记 第一部分 整体性学习策略 结构 结构就像思想中的一座城市&#xff0c;有很多建筑物&#xff0c;建筑物之间有道路相连&#xff0c;有高大而重要的与其他建筑有上百条路相连&#xff0c;无关紧要的建筑只有少数泥泞的小道与外界相通。 建立良好的知识结构就是绘制…

掌握这12招,ChatGPT秒变你的高效神器!

近期&#xff0c;围绕ChatGPT和人工智能的讨论热度有所减退&#xff0c;OpenAI的更新频率也显著降低。在此阶段&#xff0c;我们可以沉下心来&#xff0c;进行总结与反思&#xff0c;无需担心错失热点&#xff0c;而应专注于更有效地将AI整合进我们的工作流。 背景&#xff1a;…

2024/10/1 操作系统大题专训之文件

2022&#xff1a; 2018&#xff1a; 2016&#xff1a; 2014&#xff1a; 2012&#xff1a; 2011&#xff1a;

postgresql僵尸进程的处理思路

简介 僵尸进程&#xff08;zombie process&#xff09;是指一个已经终止但仍然在进程表中保留条目的进程。正常情况下&#xff0c;当一个进程完成执行并退出时&#xff0c;操作系统会通过父进程调用的wait()或waitpid()系统调用来收集该子进程的退出状态。如果父进程未及时调用…

DICOM文件的格式详细解说(1)

1 DICOM的详细介绍 DICOM要到这里面看Current Edition&#xff0c;这是标准委员会制定的标准&#xff0c;同时也在与时俱进&#xff0c;不断的进行新的数据格式更新。 2 DICOM的格式 图1 DICOM文件格式的图示 要先说一下数据结构&#xff0c;我们被最多影响的是数据结构和算…

Trilium Notes笔记本地化部署与简单使用指南打造个人知识库

文章目录 前言1. 安装docker与docker-compose2. 启动容器运行镜像3. 本地访问测试4.安装内网穿透5. 创建公网地址6. 创建固定公网地址 前言 今天和大家分享一款在G站获得了26K的强大的开源在线协作笔记软件&#xff0c;Trilium Notes的中文版如何在Linux环境使用docker本地部署…

贝励德故事:注册电气工程师有多难考?(知乎)

之所以说是条不归路&#xff0c;给你看看我的复习资料就知道了 这是需要买的手册和规范&#xff0c;加起来有五十斤重了。你还得在三小时内找到知识点结合题意计算作答&#xff0c;计算器不能出一点差错。这个难度可想而知。 这是我备考两年多做过的题&#xff0c;看过的总结&a…

Spring Boot框架下的足球青训俱乐部管理

2 相关技术简介 2.1 Java技术 Java是一门伟大的纯面向对象的编程语言和编程语言。同时&#xff0c;它还是Java语言从嵌入式开发到企业级开发的平台。Java凭借其一次编译&#xff0c;任何地方执行的优点&#xff0c;使得盛行的web应用程序有大量的Java编译&#xff0c;很好地支…

AMD CDNA™2 GPU 中的寄存器压力

Register pressure in AMD CDNA™2 GPUs — ROCm Blogs 注意&#xff1a; 此博客以前是 AMD实验室笔记 博客系列的一部分。 GPU kernel 中的寄存器压力对高性能计算 (HPC) 应用程序的整体性能有着巨大的影响。理解和控制寄存器的使用可以让开发者精心设计代码&#xff0c;以最…

jQuery——元素尺寸

1、内容尺寸 height&#xff08;&#xff09;&#xff1a;height width&#xff08;&#xff09;&#xff1a;width 2.内部尺寸 innerHeight&#xff08;&#xff09;&#xff1a;height padding innerWidth&#xff08;&#xff09;&#xff1a;width padding 3、外部尺寸…

MES数据的集成方式

为了实现与其他关键系统的数据共享和协同工作&#xff0c;不同的集成方式应运而生。MES系统与其他系统的常见集成模式&#xff0c;包括封装接口调用模式、直接集成模式、数据聚合模型、中间件集成模式以及XML的信息集成模式等。 1. 封装接口调用模式 封装接口调用是一种常见的…

2024年9月中国干旱监测报告(FYDI-2.0指数)

目录 引言 旱情监测与分析 资料来源 引言 2024年9月&#xff0c;北方的降水逐渐增多&#xff0c;进入华西秋雨集中期&#xff0c;从青藏高原北部一直延伸到东北多地&#xff0c;常出现大范围的云带&#xff0c;西北地区的降雨强度较大。南方地区降水分布不均&#xff0c;受…