【前端基础】CSS介绍|CSS选择器|常用CSS

目录

一、CSS介绍

1.1 什么是CSS

1.2 基本语法规范

1.3 引⼊⽅式

1.4 规范

💡二、CSS选择器

 1. 标签选择器

2. class选择器

3. id选择器

4. 复合选择器

5. 通配符选择器

三、常用CSS

3.1 color

3.2 font-size

3.3 border

3.4 width/height

3.5 padding

3.6 外边距


💡推荐

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击跳转到网站】


一、CSS介绍

1.1 什么是CSS

CSS(Cascading Style Sheet),层叠样式表,⽤于控制⻚⾯的样式.

CSS能够对⽹⻚中元素位置的排版进⾏像素级精确控制,实现美化⻚⾯的效果.能够做到⻚⾯的样式和结构分离.(样式,布局,排版

简单理解:CSS理解为为"东⽅四⼤邪术"之化妆术,对⻚⾯的展⽰进⾏"化妆"

CSS前->CSS修饰后:


1.2 基本语法规范

选择器+{⼀条/N条声明}

•选择器决定针对谁修改(找谁)

• 声明决定修改啥.(⼲啥)

• 声明的属性是键值对  使⽤;区分键值对,使⽤:区分键和值

<style>p {/* 设置字体颜⾊ */color: red;/* 设置字体⼤⼩ */font-size: 30px;}
</style><p>hello</p>

注意:

• CSS要写到style标签中(后⾯还会介绍其他写法)

• style标签可以放到⻚⾯任意位置 ⼀般放到head标签内.

• CSS使⽤/* */作为注释.(使⽤ctrl+/快速切换)


1.3 引⼊⽅式

CSS有3种引⼊⽅式,语法如下表格所⽰:
3种引⼊⽅式对⽐:

引⼊⽅式语法描述⽰例
⾏内样式在标签内使⽤style属性,属性值是css属性键值对<div style="color:green">绿⾊</div>
内部样式定义<style>标签,在标签内部定义css样式<style>h1{...}</style>
外部样式定义<link>标签,通过href属性引⼊外部css⽂件<linkrel="stylesheet"href="[CSS⽂件路径]">

1. ⾏内样式,只适合于写简单样式.只针对某个标签⽣效.缺点是不能写太复杂的样式.

2. 内部样式会出现⼤量的代码冗余,不⽅便后期的维护,所以不常⽤.

3. 外部样式,html和css实现了完全的分离,企业开发常⽤⽅式


1.4 规范

样式⼤⼩写

虽然CSS不区分⼤⼩写,我们开发时统⼀使⽤⼩写字⺟

空格规范

• 冒号后⾯带空格

• 选择器和{之间也有⼀个空格


💡二、CSS选择器

CSS选择器的主要功能就是选中⻚⾯指定的标签元素.选中了元素,才可以设置元素的属性.

|就好⽐SC2,War3这样的游戏,需要先选中单位,再指挥该单位⾏动

CSS选择器主要分以下⼏种:

1. 标签选择器

2. class选择器

3. id选择器

4. 复合选择器

5. 通配符选择器

 我们以下面代码来学习CSS选择器的使用

<div class="font32">我是⼀个div, class为font32</div>
<div class="font32">我是⼀个div, class为font32</div>
<div><a href="#">我是⼀个div</a></div>
<ul><li>aaa</li><li>bbb</li><li><a href="#">ccc</a></li>
</ul>
<ol><li>1111</li><li>2222</li><li>3333</li>
</ol>
<button id="submit">提交</button>

运行结果: 

 1. 标签选择器

(1)选择所有的a标签, 设置颜⾊为红⾊

<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>a {color: red;}</style>
</head>

运行结果: 

(2)选择所有的div标签, 设置颜⾊为绿⾊

/* 选择所有的div标签, 设置颜⾊为绿⾊ */
div {color: green;
}

问题:为什么第三个”我是一个div”不显示?

答:因为div标签内部还有a标签,所以不会显示

2. class选择器

选择class为font32的元素, 设置字体⼤⼩为32px:

.font32 {font-size: 32px;}


⼀个类可以被多个标签使⽤,⼀个标签也能使⽤多个类(多个类名要使⽤空格分割,这种做法可以让代码更好复⽤)

3. id选择器

选择id为submit的元素, 设置颜⾊为红⾊

#submit {color: red;}

id是唯⼀的,不能被多个标签使⽤(是和类选择器最⼤的区别)

4. 复合选择器

只设置 ul标签下的 li标签下的 a标签, 颜⾊为红⾊

ul li a {color: blue;
}

(1)以上三个标签选择器 ul li a 中的任意,都可以替换成类选择器,或者id选择器,可以是任意选择器的组合,也可以是任意数量选择器的组合

(2)不⼀定是相邻的标签,也可以是"孙⼦"标签,但是ul>a这样,加了>就一定的是相邻标签

(3)如果需要选择多种标签,可以使⽤ , 分割,如 p, div { } 表⽰同时选中p标签和div标签 逗号前后可以是以上任意选择器,也可以是选择器的组合

5. 通配符选择器

设置⻚⾯所有元素, 颜⾊为红⾊

* {color: red;
}


三、常用CSS

接下来学习⼀些常⻅的css样式

准备如下html

<div class="text1">我是⽂本1</div>

3.1 color

color:设置字体颜⾊

.text1 {color: red;
}

颜⾊有如下⼏种表达⽅式:

• 英⽂单词,如red,blue

• rgb代码的颜⾊如rgb(255,0,0)

• ⼗六进制的颜⾊如#ff00ff

3.2 font-size

font-size:设置字体⼤⼩

.text1{font-size: 32px;
}

3.3 border

border:边框

边框是⼀个复合属性,可以同时设置多个样式,不分前后顺序,浏览器会根据设置的值⾃动判断

.text1{border: 1px solid purple;
}

以上border属性的对应设置的维度分别为边框粗细,边框样式,边框颜⾊

也可以拆开来设置

样式说明取值
border-width设置边框粗细数值
border-style设置边框样式

• dotted:点状

• solid:实状

• double:双状

• dashed:虚状

border-color设置边框颜色同color

border: 1px solid purple; 就等同于以下代码:

.text1 {/* border: 1px purple solid; */border-width: 1px;border-style: solid;border-color: purple;
}

3.4 width/height

width:设置宽度

height:设置⾼度

只有块级元素可以设置宽⾼

块级元素是HTML标签的⼀种显⽰模式,对应的还有⾏内元素

常⻅块级元素:h1-h,p,div

等常⻅⾏内元素:a,span

块级元素独占⼀⾏,可以设置宽⾼

⾏内元素不独占⼀⾏,不能设置宽⾼

改变显⽰模式

使⽤display属性可以修改元素的显⽰模式

display: block 改成块级元素[常⽤]

• display: inline 改成⾏内元素[很少⽤]

.test1 {width: 200px;height: 100px;
}

3.5 padding

padding:内边距,设置内容和边框之间的距离.

内容默认是顶着边框来放置的.⽤padding来控制这个距离

形象一点的图:

 

.text1 {padding: 20px;
}

padding也是⼀个复合样式,可以对四个⽅向分开设置

• padding-top

• padding-bottom

• padding-left

• padding-right

3.6 外边距

margin:外边距,设置元素和元素之间的距离

.text1 {margin: 20px;}

margin也是⼀个复合样式,可以给四个⽅向都加上外边距

• margin-top

• margin-bottom

• margin-left

• margin-right

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

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

相关文章

单片机原理及技术(三)—— AT89S51单片机(二)(C51编程)

一、AT89S51单片机的并行I/O端口 1.1 P0口 AT89S51的P0口是一个通用的I/O口&#xff0c;可以用于输入和输出。每个引脚都可以通过软件控制为输入或输出模式。 1.1.1 P0口的工作原理 P0口的工作原理是通过对P0寄存器的读写操作来控制P0口的引脚。 输出模式&#xff1a;当P0口…

【进程调度的基本过程】初步认识进程和线程的区别与联系:计算机是如何工作的

​ &#x1f525;个人主页&#xff1a; 中草药 &#x1f525;专栏&#xff1a;【Java】登神长阶 史诗般的Java成神之路 &#x1f43a;一.冯诺依曼体系结构 认识计算机的祖师爷 -- 冯诺依曼 冯诺依曼&#xff08;John von Neumann&#xff0c;1903年12⽉28⽇-1957年2⽉8⽇&…

docker实战命令大全

文章目录 1 环境准备1.1 移除旧版本Docker1.2安装工具包1.3配置docker yum源 2 安装最新docker2.1 设置开机自启docker2.2配置加速器 3 实操-镜像3.1搜索镜像3.2下载镜像3.3查看镜像3.4 删除镜像 4 实操-容器4.1运行nginx容器4.2 查看容器4.3启动容器4.5关闭容器4.6查看容器日志…

软件测试--Linux快速入门

文章目录 软件测试-需要掌握的Linux指令Linux命令操作技巧Linx命令的基本组成常用命令 软件测试-需要掌握的Linux指令 Linux命令操作技巧 使用Tab键自动补全上下键进行翻找之前输入的命令命令执行后无法停止使用CtrC,结束屏幕输出 Linx命令的基本组成 命令 [-选项] [参数] …

nginx c++模块编译

不论是c还是c&#xff0c;nginx的第三方模块编写没什么太区别&#xff0c;但是提供给nginx调用的&#xff0c;必须是纯c的接口。 先说下为什么不能使用c编译nginx&#xff0c;nginx是纯c写的&#xff0c;而且c是兼容c的&#xff0c;但是用c(g)编译nginx的框架&#xff0c;就会出…

深度网络学习笔记(二)——Transformer架构详解(包括多头自注意力机制)

Transformer架构详解 前言Transformer的整体架构多头注意力机制&#xff08;Multi-Head Attention&#xff09;具体步骤1. 步骤12. 步骤23. 步骤34. 步骤4 Self-Attention应用与比较Self-Attention用于图像处理Self-Attention vs. CNNSelf-Attention vs. RNN Transformer架构详…

【嵌入式】智能系统优化:【C++】驱动的【机器学习】与【数据挖掘】技术

目录 一、嵌入式系统简介 二、C在嵌入式系统中的优势 三、机器学习在嵌入式系统中的挑战 四、C实现机器学习模型的基本步骤 五、实例分析&#xff1a;使用C在嵌入式系统中实现手写数字识别 1. 数据准备 2. 模型训练与压缩 3. 模型部署 六、优化与分析 1. 模型优化 模…

生成式人工智能如何运作?

一、简述 生成式人工智能是一种可用于创建内容&#xff08;包括对话、故事、图像、视频和音乐&#xff09;的人工智能。人工智能技术试图在图像识别、自然语言处理&#xff08;NLP&#xff09;和翻译等非传统计算任务中模仿人类智能。生成式人工智能是人工智能的发展方向。您可…

使用python绘制桑基图

使用python绘制桑基图 桑基图效果代码 桑基图 桑基图&#xff08;Sankey Diagram&#xff09;是一种用来表示流动&#xff08;如能源、资金、材料等&#xff09;在不同实体之间转移的图表。 每个流的宽度与流量成正比&#xff0c;通常用于显示能量或成本流动的分布情况。 桑基…

RocketMQ教程(三):RocketMQ的核心组件

四个核心组件 RocketMQ 的架构采用了典型的分布式系统设计理念,以确保高性能、高可用和可扩展性。RocketMQ 主要由四个核心组件构成:NameServer、Broker、Producer 和 Consumer。下面是对这些组件以及它们在 RocketMQ 中的角色和功能的概述: 1. NameServer 角色和功能:Name…

Linux安装RocketMQ教程【带图文命令巨详细】

巨详细Linux安装Nacos教程RocketMQ教程 1、检查残留版本2、上传压缩包至服务器2.1压缩包获取2.2创建相关目录 3、安装RocketMQ4、配置RocketMQ4.1修改runserver.sh和runbroker.sh启动脚本4.2新增broker.conf配置信息4.3启动关闭rocketmq4.4配置开机自启动&#xff08;扩展项&am…

【设计模式深度剖析】【5】【行为型】【迭代器模式】

&#x1f448;️上一篇:策略模式 设计模式-专栏&#x1f448;️ 文章目录 迭代器模式定义英文原话直译如何理解呢&#xff1f; 迭代器模式的角色1. Iterator&#xff08;迭代器&#xff09;2. ConcreteIterator&#xff08;具体迭代器&#xff09;3. Aggregate&#xff08;聚…

排序算法之快速排序

排序算法之快速排序 简介算法解析双循环单循环 代码实现测试调用 简介 快速排序是由冒泡排序演变而来&#xff0c;比冒泡排序更快的排序算法。之所以快&#xff0c;是因为快速排序用了分治法。 相同的是&#xff0c;与冒泡排序一样&#xff0c;快速排序也属于交换排序&#x…

使用Ollama+OpenWebUI本地部署Gemma谷歌AI开放大模型完整指南

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;AI大模型部署与应用专栏&#xff1a;点击&#xff01; &#x1f916;Ollama部署LLM专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年6月4日10点50分 &#x1f004;️文章质量&#xff1…

google keybox.xml格式 内容有哪些 Keybox数量、设备ID、算法的 私钥 公钥 证书链 (ECDSA即ECC, RSA)

根据您提供的文件内容&#xff0c;keybox.xml 文件包含以下主要信息&#xff1a; Keybox数量 ([NumberOfKeyboxes](file:///d%3A/010F200/svn/ProduceToolMfc/FtSmartPos/FtSmartPos/ToolBydMes/httpclient/e%3A%5CGoogleKey%5CLinux_AttestationKeyboxPack_Tool%5CLinux_Atte…

微服务架构-正向治理与治理效果

目录 一、正向治理 1.1 概述 1.2 效率治理 1.2.1 概述 1.2.2 基于流量录制和回放的测试 1.2.3 基于仿真环境的测试 1.3 稳定性治理 1.3.1 概述 1.3.2 稳定性治理模型 1.3.3 基于容器化的稳定性治理 1.3.3.1 概述 1.3.3.2 测试 1.3.3.3 部署 1.3.3.3.1 概述 1.3.3…

matlab 计算三维空间点到直线的距离

目录 一、算法原理二、代码实现三、结果展示四、参考链接本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫与GPT。 一、算法原理 直线的点向式方程为: x − x 0 m = y

IEDA 默认集成依赖概述

IEDA 默认集成依赖概述 目录概述需求&#xff1a; 设计思路实现思路分析 1.Developer Tools:GraalVM Native supportGraphQL DGs Code GenerationSpring Boot DevToolsLombokSpring Configuration ProcessorDocker Compose supportSpring Modulith 2.WebWebSpring WebSpring Re…

应用层——HTTP协议(自己实现一个http协议)——客户端(浏览器)的请求做反序列化和请求分析,然后创建http向响应结构

应用层&#xff1a;之前我们写的创建套接字&#xff0c;发送数据&#xff0c;序列化反序列化这些都是在写应用层 我们程序员写的一个个解决我们实际问题, 满足我们日常需求的网络程序, 都是在应用层 之前的网络计算机是我们自定义的协议&#xff1a;传输的数据最终是什么样的结…

【NetTopologySuite类库】C#生成带约束(线、面)的Delaunay三角网

介绍 API地址&#xff1a;https://nettopologysuite.github.io/NetTopologySuite/api/NetTopologySuite.Triangulate.ConformingDelaunayTriangulationBuilder.html#NetTopologySuite_Triangulate_ConformingDelaunayTriangulationBuilder_Constraints 约束为线 效果图 红色…