当前位置: 首页 > news >正文

【Web开发】CSS教学(超详细,满满的干货)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

💓 博客主页:从零开始的-CodeNinja之路

⏩ 收录文章:【Web开发】CSS教学(超详细,满满的干货)
🎉欢迎大家点赞👍评论📝收藏⭐文章

目录

  • CSS
    • 一. 什么是CSS?
        • 1.1 基本语法规范
        • 1.2 引入方式
        • 1.3 规范
    • 二. CSS选择器
        • 2.1 标签选择器
        • 2.2 类选择器
        • 2.3 ID选择器
        • 2.4 通配符选择器
        • 2.5. 复合选择器
    • 三. 常用CSS
        • 3.1 color(颜色)
        • 3.2 font-size(大小)
        • 3.3 border(边框)
        • 3.4 width/height(宽/高度)
        • 3.5 padding(内边距)
        • 3.6 margin(外边距)

CSS

一. 什么是CSS?

在这里插入图片描述

CSS(Cascading Style Sheet),层叠样式表,用于控制页面的样式.
CSS能够对网页中元素位置的排版进行像素级精确控制,实现美化页面的效果.能够做到页面的样式和结构分离.
CSS可以理解为化妆术.
对页面的展进行"化妆"
CSS前->CSS修饰后在这里插入图片描述

1.1 基本语法规范

选择器+{⼀条/N条声明}
• 选择器决定针对谁修改(找谁)
• 声明决定修改啥.(干啥)
• 声明的属性是键值对.使用;区分键值对,使用:区分键和值.

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

注意:
• CSS要写到style标签中(后面还会介绍其他写法)
• style标签可以放到页面任意位置.⼀般放到head标签内.
• CSS作为注释.(使用ctrl+/快速切换)

1.2 引入方式

CSS有3种引入方式,语法如下表格所示:

引入⽅式语法描述
行内样式在标签内使⽤style属性,属性值是css属性键值对
内部样式定义style标签,在标签内部定义css样式
外部样式定义link标签,通过href属性引⼊外部css⽂件

3种引入方式对比:

  1. 内部样式会出现⼤量的代码冗余,不方便后期的维护,所以不常用.(课堂上为了⽅便讲解,使用该方式)
  2. 行内样式,只适合于写简单样式.只针对某个标签生效.缺点是不能写太复杂的样式.
  3. 外部样式,html和css实现了完全的分离,企业开发常用方式.
1.3 规范

样式大小写
虽然CSS不区分大小写,我们开发时统⼀使用小写字母
空格规范
• 冒号后面带空格
• 选择器和{之间也有⼀个空格.

二. CSS选择器

CSS选择器的主要功能就是选中页面指定的标签元素.选中了元素,才可以设置元素的属性.
需要先选中单位,再指挥该单位行动.
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>
2.1 标签选择器
/* 选择所有的a标签, 设置颜⾊为红⾊ */a {color: red;}
/* 选择所有的div标签, 设置颜⾊为绿⾊ */div {color: green;}
2.2 类选择器
/* 选择class为font32的元素, 设置字体⼤⼩为32px */.font32 {font-size: 32px;}

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

2.3 ID选择器
/* 选择id为submit的元素, 设置颜⾊为红⾊ */
#submit {color: red;
}

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

2.4 通配符选择器
/* 设置⻚⾯所有元素, 颜⾊为红⾊*/
* {color: red;
}
2.5. 复合选择器
/*只设置 ul标签下的 li标签下的 a标签, 颜⾊为红⾊*/
ul li a {color: blue;
}
  1. 以上三个标签选择器 ul li a 中的任意,都可以替换成类选择器,或者id选择器,可以是任意选
    择器的组合,也可以是任意数量选择器的组合
  2. 不⼀定是相邻的标签,也可以是"孙⼦"标签
  3. 如果需要选择多种标签,可以使用 , 分割,如 p, div { } 表示同时选中p标签和div标签.
    逗号前后可以是以上任意选择器,也可以是选择器的组合.

三. 常用CSS

接下来学习⼀些常见的css样式
准备如下html

1 <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:点状
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-h6,p,div等
常见行内元素:a span
块级元素独占⼀行,可以设置宽高
行内元素不独占⼀行,不能设置宽高
改变显示模式
使用display属性可以修改元素的显示模式.
• display: block 改成块级元素
• display: inline 改成行内元素

.text1 {width: 200px;height: 100px;
}
3.5 padding(内边距)

padding:内边距,设置内容和边框之间的距离.
内容默认是顶着边框来放置的.用padding来控制这个距离
在这里插入图片描述

.text1 {padding: 20px;
}

padding也是⼀个复合样式,可以对四个方向分开设置
• padding-top
• padding-bottom
• padding-left
• padding-right

3.6 margin(外边距)

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

.text1 {margin: 20px;}

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

  • margin-top
  • margin-bottom
  • margin-left
  • margin-right

如果觉得文章不错,期待你的一键三连哦,你个鼓励是我创作的动力之源,让我们一起加油,顶峰相见!!!💓 💓 💓

相关文章:

  • HTML本地离线缓存?
  • 中国城市统计年鉴、中国县域统计年鉴、中国财政统计年鉴、中国税务统计年鉴、中国科技统计年鉴、中国卫生统计年鉴​
  • 【首次抽奖】16G、32G免费送!云服务器选购推荐 京东云 阿里云 腾讯云对比 幻兽帕鲁 雾锁王国 省钱学生党
  • 读书笔记--数据建模与设计的总结感悟
  • OpenvSwitch VXLAN 隧道实验
  • 指挥航空公司架次与延误率占比
  • 手机网络连接性能API接口:查询手机网络连接性能状态
  • android 简单快速 自定义dialog(简单好用,不需要设置样式)
  • 在idea中配置tomcat服务器,然后部署一个项日
  • 【力扣二刷思路】DAY3
  • SpringSecurity(SpringBoot2.X版本实现)
  • Java面试题总结16之分布式id生成方案
  • Android Kotlin知识汇总(一)编程语言
  • StarRocks面试题及答案整理,最新面试题
  • 利用适配器模式使用第三方库
  • 深入了解以太坊
  • [数据结构]链表的实现在PHP中
  • 【Linux系统编程】快速查找errno错误码信息
  • avalon2.2的VM生成过程
  • npx命令介绍
  • python3 使用 asyncio 代替线程
  • SpiderData 2019年2月25日 DApp数据排行榜
  • spring + angular 实现导出excel
  • webpack入门学习手记(二)
  • WinRAR存在严重的安全漏洞影响5亿用户
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 技术发展面试
  • 类orAPI - 收藏集 - 掘金
  • 猫头鹰的深夜翻译:Java 2D Graphics, 简单的仿射变换
  • 一道面试题引发的“血案”
  • 应用生命周期终极 DevOps 工具包
  • 走向全栈之MongoDB的使用
  • C# - 为值类型重定义相等性
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • !!Dom4j 学习笔记
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • #android不同版本废弃api,新api。
  • #define,static,const,三种常量的区别
  • #HarmonyOS:Web组件的使用
  • #NOIP 2014#day.2 T1 无限网络发射器选址
  • #NOIP 2014#Day.2 T3 解方程
  • #传输# #传输数据判断#
  • #绘制圆心_R语言——绘制一个诚意满满的圆 祝你2021圆圆满满
  • $ git push -u origin master 推送到远程库出错
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (delphi11最新学习资料) Object Pascal 学习笔记---第5章第5节(delphi中的指针)
  • (动态规划)5. 最长回文子串 java解决
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (全注解开发)学习Spring-MVC的第三天
  • (三十五)大数据实战——Superset可视化平台搭建
  • (实战)静默dbca安装创建数据库 --参数说明+举例
  • (转)http协议
  • *2 echo、printf、mkdir命令的应用
  • .Net FrameWork总结
  • .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖