4.CSS(一)

目录

一、CSS简介

二、CSS基础选择器

(一)标签选择器

(二)类选择器

 类选择器-多类名

(三)id选择器

(四)通配符选择器

 (五)总结

三、CSS字体属性

(一)字体系列

(二)字体大小

(三)字体粗细

(四)文字样式

(五)字体复合属性

(六)字体属性总结

四、CSS文本属性

(一)文本颜色

(二)对齐文本

 (三)装饰文本

(四)文本缩进

(五)行间距

(六)文本属性总结

五、CSS的引入方式

(一)内部样式表

(二)行内样式表

(三)外部样式表

(四)CSS引入方式总结


一、CSS简介

CSS的主要场景就是美化网页,布局页面的。

1、HTML的局限性:只关注内容的语义。虽然HTML可以做简单的样式,但臃肿和繁琐。

2、CSS-网页的美容师

  • CSS是层叠样式表(Cascading Style Sheets)的简称,有时称为CSS样式表级联样式表
  • CSS也是一种标记语言
  • CSS主要用于设置HTML页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边距等)以及版面的布局和外观显示样式
  • CSS最大价值:由HTML专注去做结构呈现,样式交给CSS,即结构(HTML)与样式(CSS)相分离

3、CSS语法规范:选择器以及一条或多条声明

  • 选择器是用于指定CSS样式的HTML标签,花括号内是对该对象设置的具体样式
  • 属性和属性值以“键值对”的形式出现
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS语法规范</title><style>/* 选择器{样式} */p{color: brown;font-size: 30px;}</style>
</head>
<body><p>你好呀</p>
</body>
</html>

二、CSS基础选择器

1、CSS选择器的作用:选择器(选择符)就是根据不同需求把不同的标签选出来。

2、选择器的分类

  • 基础选择器
    • 基础选择器是由单个选择器组成的
    • 包括标签选择器、类选择器、id选择器、通配符选择器
  • 复合选择器

(一)标签选择器

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

  • 作用:标签选择器可以把某一类标签全部选择出来,比如所有的<p>标签和所有的<div>标签
  • 优点:能快速为页面中同类型的标签统一设置样式
  • 缺点:不能设计差异化样式,只能选择全部的当前标签
<!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: blue;}div {color: pink;}</style>
</head>
<body><p>男生</p><p>男生</p><p>男生</p><div>女生</div><div>女生</div><div>女生</div>
</body>
</html>

(二)类选择器

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

类选择器在HTML中以class属性表示,在CSS中,类选择器以一个点“.”号显示

口诀:样式点定义,结构类(class)调用,一个或多个,开发最常用

注意:

  • 长名称或词组可以使用中横线来为选择器命名,如star-sing
  • 不要使用纯数字、中文等命名,尽量使用英文字母来表示
  • 命名要有意义
<!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;}</style>
</head>
<body><ul><li class="red">西游记</li><li class="red">水浒传</li><li>红楼梦</li><li>三国演义</li></ul><div class="red">我也想是红色</div>
</body>
</html>

 类选择器-多类名

可以给一个标签指定多个类名,从而达到更多的选择目的。这些类名都可以选出这个标签。(一个标签有多个名字)

1、多类名使用方式

<div class="red font20">你好</div>
  • 在标签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;}.font35 {font-size: 35px;}</style>
</head>
<body><div class="red font35">你好</div>
</body>
</html>

 2、多类名开发中的使用场景

  • 可以把一些标签元素相同的样式(共同的部分)放到一个类里面
  • 这些标签都可以调用这个公共的类,然后再调用自己独有的类
  • 从而节省CSS代码,统一修改也非常方便

(三)id选择器

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

HTML元素以id属性来设置id选择器,CSS中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>#pink {color: pink;}</style>
</head>
<body><div id="pink">哈喽</div>
</body>
</html>

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

1、类选择器(class)好比人的名字,一个人可以有多个名字,一个名字也可以被多个人使用

2、id选择器好比人的身份证号码,全中国是唯一的,不得重复

3、id选择器和类选择器最大的不同在于使用次数上

4、类选择器在修改样式中用的最多,id选择器一般用于页面唯一性的元素上,经常和JavaScript搭配使用

(四)通配符选择器

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

  • 通配符选择器不需要调用,自动就给所有的元素使用样式
  • 特殊情况才使用,使用场景举例(清除所有元素标签的内外边距)
* {margin: 0;padding: 0;
}
<!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;}</style>
</head>
<body><div>我的</div><span>你的</span><ul><li>他的</li></ul>
</body>
</html>

 (五)总结

基础选择器作用特点使用情况用法
标签选择器可以选出所有相同的标签,比如p不能差异化选择较多p { color: red;}
类选择器可以选出1个或多个标签可以根据需求选择非常多.nav { color: red;}
id选择器一次只能选择1个标签id属性只能在每个HTML文档中出现一次一般和js搭配#nav { color: red;}
通配符选择器选择所有的标签选择的太多,有部分不需要特殊情况下使用* { color: red;}
  • 每个基础选择器都有使用场景,都需要掌握
  • 如果是修改样式,类选择器是使用最多的 

三、CSS字体属性

CSS Fonts(字体)属性用于定义字体系列、大小、粗细、和文字样式(如斜体)。

(一)字体系列

CSS使用font-family属性定义文本的字体系列。

  • 各种字体之间必须使用英文状态下的逗号隔开
  • 一般情况下,如果有空格隔开的多个单词组成的字体,加引号
  • 尽量使用系统默认自带字体,保证在任何用户的浏览器中都能正确显示
  • 最常见的几个字体:body { font-family: 'Microsoft YaHei',tahoma,arial,'Hiragino Sans GB';}
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>字体系列</title><style>h2 {font-family: 'Microsoft Yahei';}p {font-family: 'Microsoft Yahei',Arial, Helvetica, sans-serif;}</style>
</head>
<body><h2>前端开发</h2><p>前端开发是创建WEB页面或APP等前端界面呈现给用户的过程</p><p>通过HTML,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案</p><p>来实现互联网产品的用户界面交互</p>
</body>
</html>

(二)字体大小

CSS使用font-size属性定义字体大小。

  • px(像素)大小是我们网页的最常用的单位
  • 谷歌浏览器默认的文字大小为16px
  • 不同浏览器可能默认显示的字号大小不一致,尽量给一个明确值大小,不要默认大小
  • 可以给body指定整个页面文字的大小,有特殊的再单独修改(标题标签比较特殊,需要单独指定文字大小)
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>字体系列</title><style>body {font-size: 16px;}</style>
</head>
<body><h2>前端开发</h2><p>前端开发是创建WEB页面或APP等前端界面呈现给用户的过程</p><p>通过HTML,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案</p><p>来实现互联网产品的用户界面交互</p>
</body>
</html>

(三)字体粗细

CSS使用font-weight属性设置文本字体的粗细。

属性值描述
normal默认值(不加粗的)
bold定义粗体(加粗的)
100-900400等同于normal,而700等同于bold,注意这个数字后面不跟单位
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>字体系列</title><style>.bold {/* font-weight: bold; *//* 这个700不要跟单位,等价于bold,都是加粗的效果 *//* 实际开发中,更提倡使用数字表示加粗或者变细 */font-weight: 700;}</style>
</head>
<body><h2>前端开发</h2><p>前端开发是创建WEB页面或APP等前端界面呈现给用户的过程</p><p class="bold">通过HTML,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案</p><p>来实现互联网产品的用户界面交互</p>
</body>
</html>

(四)文字样式

CSS使用font-style属性设置文本的风格。

属性值作用
normal默认值,浏览器会显示标准的字体样式 font-style: normal;
italic浏览器会显示斜体的字体样式

注意:平时很少给文字加斜体,反而要给斜体标签(em , i)改为不倾斜字体 

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>字体系列</title><style>em {font-style: normal;}</style>
</head>
<body><em>哈哈哈哈</em>
</body>
</html>

(五)字体复合属性

body {

        font: font-style font-weight font-size/line-height font-family;

}

  • 使用font属性时,必须按上面语法格式的顺序书写,不能更换顺序,并且各个属性间以空格隔开
  • 不需要设置的属性可以省略(取默认值),但必须保留font-size和font-family属性,否则font属性将不起作用
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>字体属性的复合属性</title><style>div {/* font-style: italic;font-weight: 700;font-size: 16px;font-family: 'Microsoft Yahei'; *//* 复合属性:简写方式,节约代码 */font: italic 700 16px 'Microsoft Yahei';}</style>
</head>
<body><div>前端开发是创建WEB页面或APP等前端界面呈现给用户的过程</div>
</body>
</html>

(六)字体属性总结

属性表示注意点
font-size字号一定要跟上单位,通常单位是px
font-family字体实际工作中按照团队约定来写字体
font-weight字体粗细加粗是700或bold,不加粗是400或normal,数字不要跟单位
font-style字体样式倾斜是italic,不倾斜是normal,工作中最常用normal
font字体连写

1、字体连写是有顺序的,不能随意换位置

2、其中字号和字体必须同时出现

四、CSS文本属性

CSS Text(文本)属性可定义文本的外观,比如文本颜色、对齐文本、装饰文本、文本缩进、行间距等。

(一)文本颜色

color属性用于定义文本颜色

表示属性值
预定义的颜色值red,green,blue,pink等
十六进制#FF0000,#FF6600,#29D794
RGB代码rgb(255,0,0)或rgb(100%,0%,0%)

开发中最常用的是十六进制

(二)对齐文本

text-align属性用于设置元素内文本内容水平对齐方式。

属性值解释
left左对齐(默认值)
right右对齐
center居中对齐

 (三)装饰文本

text-decoration属性规定添加到文本的修饰。可以给文本添加下划线、删除线、上划线等。

属性值描述
none默认。没有装饰线(最常用)
underline下划线。链接a自带下划线(常用)
overline上划线(几乎不用)
line-through删除线(不常用)

 重点记住如何添加下划线,如何删除下划线,其余的了解

(四)文本缩进

text-indent属性用来指定文本的第一行的缩进,通常是将段落的首行缩进

p {text-indent: 20px;}

 通过设置该属性,所有元素的第一行都可以缩进一个给定的长度,甚至该长度可以是负值。

p {text-indent: 2em;}

 em是一个相对单位,就是当前元素(font-size)1个文字的大小,如果当前元素没有设置大小,则会按照父元素的1个文字大小。

(五)行间距

line-height属性用于设置行间距离(行高),可以控制文字行与行之间的距离。

(六)文本属性总结

属性表示注意点
color文本颜色通常用十六进制
text-align文本对齐可以设定文字水平的对齐方式
text-indent文本缩进通常用于段落首行缩进2个字的距离
text-decoration文本修饰记住添加下划线underline,取消下划线none
line-height行高控制行与行之间的距离

五、CSS的引入方式

按照CSS样式书写的位置(或者引入的方式),CSS样式表可以分为三大类:

1、行内样式表(行内式)

2、内部样式表(嵌入式)

3、外部样式表(链接式)

(一)内部样式表

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

  • <style>标签理论上可以放在HTML文档的任何地方,但一般会放在文档的<head>标签中。
  • 通过此种方式,可以方便控制当前整个页面中的元素样式设置。
  • 代码结构清晰,但是并没有实现结构与样式完全分离
  • 使用内部样式表设定CSS,通常也被称为嵌入式引入

(二)行内样式表

行内样式表(内联样式表)是在元素标签内部的style属性中设定CSS样式,适合于修改简单样式。<div style="color: pink;">你好</div>

  • style其实就是标签的属性
  • 在双引号中间,写法要符合CSS规范
  • 可以控制当前的标签设置样式
  • 由于书写繁琐,并且没有体现结构与样式相分离的思想,所以不推荐大量使用,只有对当前元素添加简单样式的时候,可以考虑使用
  • 使用行内样式表设定CSS,通常也被称为行内式引入

(三)外部样式表

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

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

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

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

<link rel="stylesheet" href="css文件路径">
<!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><div>你好</div>
</body>
</html>

(四)CSS引入方式总结

样式表优点缺点使用情况控制范围
行内样式表书写方便,权重高结构样式混写较少控制一个标签
内部样式表部分结构和样式相分离没有彻底分离较多控制一个页面
外部样式表完全实现结构和样式相分离需要引入最多控制多个页面

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VSCode种git rebase分支冲突解决无法继续rebase

情景&#xff1a; 常规来说我们git开分支开发完新功能之后&#xff0c;提交之前rebase dev分支&#xff0c;然后合并到dev上算是开发完成。 问题还原&#xff1a; 在开发完之后执行如下指令&#xff1a; 1.执行变基操作&#xff1a;git rebase dev。 //这一步出现冲突vscode上…

重磅升级 | 睿士主机威胁溯源系统全新升级,助力用户2023网络攻防演练

攻防演练至今已走过7个年头&#xff0c;逐渐成为网络安全防御体系中至关重要的一环。随着攻防演练对抗水平不断升级&#xff0c;攻击手段愈发隐蔽&#xff0c;攻击自动化程度逐步提高&#xff0c;技术储备也越来越有针对性&#xff0c;从广撒网到精准打击&#xff0c;这些都给蓝…

CS162 11-12 调度与死锁

调度 overview 1.FCFS 可以利用好cache缓存&#xff0c;减少上下文切换。 2.很直观&#xff0c;贪心&#xff0c;可以减少平均的响应时间 3 4. 5.等待调度的时间是平均的 6.优先级翻转&#xff0c;和优先级捐赠 解决 cfs中的调度 死锁 四个必要不充分条件 银行家算法&…

Html基础知识学习——圣杯布局、margin负值、等高布局(十七)

文章目录 圣杯布局margin负值等高布局 圣杯布局 两边页面固定中间页面宽度随着浏览器大小自适应 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-widt…

IP首部报文字段

一、IP首部报文字段 字段如下图所示 二、每个字段的含义 版本 表示 IP 协议的版本。通信双方使用的 IP 协议版本必须一致。目前广泛使用的IP协议版本号为 4&#xff0c;即 IPv4 首部长度 这个字段所表示数的单位是 32 位字长&#xff08;1 个 32 位字长是 4 字节&#xff0…

200行代码写一个简易的C++小黑窗贪吃蛇游戏

分享一个简易的小黑窗贪吃蛇,一共就两百行代码左右(包含注释),很适合初学者巩固语法来练练手. 如果后续需要其他功能也可以再添加. 先小小展示一下: 源码在文末免费领取. 使用工具: VS2019(不是用VS的也可以直接找出cpp和h文件复制到你们用的IDE,甚至是记事本都可以) 闲话…

bgp联邦

1、ip配置 [r1-LoopBack0]ip address 192.168.1.1 24 [r1-LoopBack1]ip address 10.0.0.1 24 [r1-GigabitEthernet0/0/0]ip address 12.0.0.1 24[r2-GigabitEthernet0/0/0]ip address 12.0.0.2 24 [r2-GigabitEthernet0/0/1]ip address 172.16.1.1 29 [r2-GigabitEthernet0/0/…

BTY生态系统DNS关于DeSoc的构想

2022年5月&#xff0c;以太坊创始人Vitalik Buterin与经济学家Glen Weyl和Flashbots研究员Puja Ohlhaver联合发布了《Decentralized Society: Finding Web3’s Soul》。这篇论文的核心是围绕“Web3灵魂”创造出去中心化社会的可能性。 论文中阐述&#xff0c;当下Web3 更多是表…

Docker【安装与基本使用】

【1】Docker的安装 注意&#xff1a;如果之前安装过docker其他版本&#xff0c;请删除干净。 docker-01 10.0.0.51 2G docker-02 10.0.0.52 2G docker-01 [rootdocker-01 ~]# cp -rp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime cp: overwrite ‘/etc/localtime’? …

【论文笔记】KDD2019 | KGAT: Knowledge Graph Attention Network for Recommendation

Abstract 为了更好的推荐&#xff0c;不仅要对user-item交互进行建模&#xff0c;还要将关系信息考虑进来 传统方法因子分解机将每个交互都当作一个独立的实例&#xff0c;但是忽略了item之间的关系&#xff08;eg&#xff1a;一部电影的导演也是另一部电影的演员&#xff09…

Unity打包窗口化放大、缩小、拖拽功能、无边框设置 C#

Unity打包Windows窗口实现放大、缩小、拖拽、无边框 文章目录 Unity打包Windows窗口实现放大、缩小、拖拽、无边框前言一、引入 user32.dll二、使用步骤1.引入库2.功能封装3.效果图如下&#xff0c;绑定自定义按钮 总结 前言 Unity无边框设置、窗口化放大、缩小、拖拽 提示&am…

# Linux下替换删除文件中的颜色等控制字符的方法

Linux下替换删除文件中的颜色等控制字符的方法 文章目录 Linux下替换删除文件中的颜色等控制字符的方法1 Linux下的控制字符&#xff08;显示的文字并不是他本身&#xff09;&#xff1a;2 颜色字符范例&#xff1a;3 替换4 最后 我们在shell编程显示输出时&#xff0c;会定义文…