速通前端篇 —— CSS

速通前端篇 —— CSS

找往期文章包括但不限于本期文章中不懂的知识点:

个人主页:我要学编程程(ಥ_ಥ)-ZEEKLOG博客

所属专栏:速通前端

目录

CSS的介绍

基本语法规范

CSS选择器

标签选择器

class选择器 

id选择器 

复合选择器 

通配符选择器

CSS常见样式 

颜色 color

字体大小 font-size 

边框 border 

宽度 与 高度 

内边距

外边距 


CSS的介绍

CSS(Cascading Style Sheet),层叠样式表,用于控制页面的样式。CSS能够对网页中元素位置的排版进行像素级精确控制,实现美化页面的效果。能够做到页面的样式和结构分离。简单理解,CSS就是类似于对页面进行"化妆",让页面变得更加好看。

基本语法规范

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

1、选择器决定针对谁修改 (找谁);2、声明决定修改啥(干啥);3、声明的属性是键值对,使用";"区分键值对,使用":"区分键和值。

既然CSS是"化妆",那首先得要对象才行,这个对象就是HTML的代码。

CSS有三种引入方式,引入到HTML的代码中:

引入方式描述
行内样式在标签内使用style属性,属性值是css属性键值对
内部样式定义<style>标签,在标签内部定义css样式
外部样式定义<link>标签,通过href属性引入外部的css文件

代码演示:

1、行内样式:

2、内部样式:

3、外部样式: 

三种引入方式的对比: 

行内样式,只适合于写简单样式,只针对某个标签生效。缺点是不能写太复杂的样式。

内部样式会出现大量的代码冗余,不方便后期的维护,所以不常用。

外部样式,html和css实现了完全的分离,企业开发常用方式。

注意:内部样式虽然可以写在任何地方,但我们常是写在 head 标签中。

CSS选择器

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

CSS选择器主要分以下几种:
1、标签选择器
2、class选择器
3、id选择器
4、复合选择器
5、通配符选择器

下面我们一 一来学习:

标签选择器

class选择器 

class是标签的一个属性,可以认为有相同class的标签被认为是同一组,在此基础上我们就可以进行一些列的其他操作,比较方便。

注意:

1、类名是可以随便取的,但不能是数字。 

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

id选择器 

复合选择器 

复合选择器是通过多个标签唯一的那个标签,然后进行设置相关属性的。和在文件夹中查找某个文件差不多。

如果我们只想将 有序列表下的div设置成红色,就可以使用复合选择器。

如果想更详细的一点的话,可以写成 body ol div 或者直接将 html 给包裹进来都是没问题的。 

注意:

1、上面的 ol 与 div 可以是任意选择器的组合,也可以是任意数量选择器的组合。

2、这里的标签不一定要是相邻的标签,例如,父标签-子标签。可以直接是 父标签-孙子标签。

3、如果想要选择多种标签,可以使用 ","来分隔。

通配符选择器

这里的通配符和我们在Java中学习的通配符是一样的,都是可以去代表所有,只不过Java中的通配符只能作为接收方,而不能是发送方(与多态一样,向上转型可以,但是向下转型就会失败)。而这里的通配符是全部都行。

这里通配符是采用 *。 

CSS常见样式 

颜色 color

color 是用来设置字体的颜色的,颜色的表示方式有三种。第一种就是我们前面直接使用英文单词去表述的;第二种是使用三原色的参数来设置的;第三种是在第二种的基础上,使用十六进制的数字来表示的。

第一种前面有,因此这里不作演示,我们直接来看第二种与第三种的方式。

1、使用三原色:

三原色(rgb)指的是 red、green、blue,三种颜色。通过参数来调整三者的占比,从而实现不同的颜色。

如果要变为绿色的话,就是(0, 255, 0)。 

2、使用十六进制数:

因为rgb的参数范围是(0,255),可以用2^8来表示,如果把2^8看成比特位的话,就是可以用8个比特位来表示,而一个十六进制位可以表示4位二进制,即 两个十六进制位可以表示上述rgb的参数范围。

字体大小 font-size 

边框 border 

边框是一个复合属性,常用的包括 边框粗细、边框样式、边框颜色。既可以一起同时设置,也可以分开设置三者。

样式说明举例
border-width设置边框粗细取数值
border-style设置边框样式dotted:点状
border-color设置边框颜色与color是相同的,有三种方式

上面是三者分开设置的,下面来尝试三者一起设置。

注意:并不只是div才能设置边框,几乎所有的标签都是可以设置边框的。

宽度 与 高度 

width 设置宽度、height 设置高度。

注意:只有块级元素可以设置宽高。常见的块级元素有: h1-h6、P、div等,常见的行内元素有:span、a。块级元素是独占一行的,因此可以设置其相关的属性,而行内元素是不能独占一行的,也就是会和其他的元素一起占据一行,如果去设置其的宽高,那别的元素也需要改变,这就不合理,因此行内元素不能设置宽高。当然,我们也可以使用 display 属性来修改元素的显示模式。

display : block 改成块级元素;display : inline 改成行内元素。

内边距

padding:内边距,其含义是内容和边框之间的距离。

内容默认是顶着边框来放置的,可以用padding来控制这个距离。

padding也是一个复合样式,可以对四个方向分开设置。

padding-top(顶部)、padding-bottom(底部)、padding-left(左部)、padding-right(右部)

当然,也可以设置边框为实线去观察。

外边距 

margin:外边距,其含义是元素与元素之间的距离。同样元素与元素之间默认也是挨着的。

margin也是一个复合样式,可以给四个方向都加上外边距。与内边距类似,这里就不再演示了。 

前面的样式涉及到了一个著名的IE盒子模型:

好啦!本期 速通前端篇 —— CSS 的学习之旅 就到此结束啦!我们下一期再一起学习吧!

Read more

Leaflet赋能:WebGIS视角下的省域区县天气可视化实战攻略

Leaflet赋能:WebGIS视角下的省域区县天气可视化实战攻略

目录 前言 一、空间数据基础 1、省域空间检索 2、区县天气信息检索 二、天气数据简介 1、省域天气数据获取 2、区县名称不一致 三、SpringBoot后台实现 1、Java后台天气数据查询 2、控制层实现 四、WebGIS前端实现 1、气温颜色及图例初始化 2、气温数据展示实现 五、成果展示 1、湖南省天气展示 2、西藏自治区天气展示 六、总结 前言         在当今数字化时代,地理信息系统(GIS)技术与Web技术的深度融合,为地理信息的可视化展示带来了前所未有的机遇。WebGIS作为一种基于网络的地理信息系统,能够将地理空间数据以直观、便捷的方式呈现给用户,极大地拓展了地理信息的应用范围和价值。而天气数据作为与人们生活息息相关的重要地理信息之一,其可视化展示对于气象预报、灾害预警、交通规划、农业生产等诸多领域都有着极为重要的意义。本文将从WebGIS的视角出发,

《C++ Web 自动化测试实战:常用函数全解析与场景化应用指南》

《C++ Web 自动化测试实战:常用函数全解析与场景化应用指南》

🔥草莓熊Lotso:个人主页 ❄️个人专栏: 《C++知识分享》《Linux 入门到实践:零基础也能懂》 ✨生活是默默的坚持,毅力是永久的享受! 🎬 博主简介: 文章目录 * 前言: * 一. 元素定位:自动化测试的 “精准导航” * 1.1 cssSelector:简洁高效的选择器 * 1.2 xpath:灵活强大的路径语言 * 二. 测试对象操作:定位后的 “核心动作” * 2.1 点击与提交:触发页面交互 * 2.2 文本输入与清除:模拟用户输入 * 2.3 文本与属性获取:验证测试结果 * 三. 窗口与弹窗控制:解决 “多窗口与弹窗干扰” * 3.1 窗口控制:句柄是关键 * 3.

【AI赋能】MCP+Skill能力下的前端JS逆向自动化落地(附工具)

【AI赋能】MCP+Skill能力下的前端JS逆向自动化落地(附工具)

项目地址 https://github.com/Fausto-404/js-reverse-automation--skill js-reverse-automation--skill 结合chrome-devtools-mcp的能力并加上Skill的规范,实现JSRPC+Flask+autoDecoder方案的前端JS逆向自动化分析,提升JS逆向的效率 适用场景 * 需要快速落地前端签名/加密参数逆向 * 需要将js逆向逻辑封装为可复用的代码 * 需要与 Burp 配合进行抓包、改包 流程设计思路 针对js逆向中常用的远程调用法进行js逆向(如JSRPC+Mitmproxy、JSRPC+Flask等)中,初始配置阶段中面对的定位加密函数、编写注册代码、编写python代码等繁琐操作,通过引入AI的MCP和Skill技术进行赋能,让AI自动完成函数发现与注册代码生成,最终实现从“半自动”到“高自动”的跨越,人员全程只需下方指令,并最终配置一下burp即可完成JS逆向的全流程。 核心能力 * 基于 MCP 连接真实浏览器,触发并跟踪js加密/签名链路

前端实现B站视频画中画功能 - 完整代码实现主页面和小窗同步视频控制功能

前端实现B站视频画中画功能 - 完整代码实现主页面和小窗同步视频控制功能

🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Micro麦可乐的博客 🐥《Docker实操教程》专栏以最新的Centos版本为基础进行Docker实操教程,入门到实战 🌺《RabbitMQ》专栏19年编写主要介绍使用JAVA开发RabbitMQ的系列教程,从基础知识到项目实战 🌸《设计模式》专栏以实际的生活场景为案例进行讲解,让大家对设计模式有一个更清晰的理解 🌛《开源项目》本专栏主要介绍目前热门的开源项目,带大家快速了解并轻松上手使用 🍎 《前端技术》专栏以实战为主介绍日常开发中前端应用的一些功能以及技巧,均附有完整的代码示例 ✨《开发技巧》本专栏包含了各种系统的设计原理以及注意事项,并分享一些日常开发的功能小技巧 💕《Jenkins实战》专栏主要介绍Jenkins+Docker的实战教程,让你快速掌握项目CI/CD,是2024年最新的实战教程 🌞《Spring Boot》专栏主要介绍我们日常工作项目中经常应用到的功能以及技巧,代码样例完整 👍《Spring Security》专栏中我们将逐步深入Spring Security的各个