Java前端基础——CSS
一、CSS介绍
1.1 什么是CSS
CSS(Cascading Style Sheet),层叠样式表,用于控制页面的样式.
CSS 能够对网页中元素位置的排版进行像素级精确控制, 实现美化页面的效果. 能够做到页面的样式和结构分离.

1.2 基本语法规范
选择器 + {⼀条/N条声明}
• 选择器决定针对谁修改 (找谁) • 声明决定修改啥. (干啥)
• 声明的属性是键值对. 使用 ; 区分键值对, 使用 : 区分键和值.
<style>p {/* 设置字体颜⾊ */ color: red;/* 设置字体⼤⼩ */ font-size: 30px;}
</style>
<p>hello</p>
例如:
注意:
1.CSS一般写到style标签中(其他方式后面介绍);
2.style标签一般放到head标签中;
1.3 CSS引入方式
CSS有三种引入方式:
1.行内样式:将style标签作为属性写到起始标签内。
2.内部样式:
将style标签写到HTML语句中。
3.外部样式:
将CSS语句写到.css文件中。
三种引入方式对比:
1. 行内样式会出现大量的代码冗余, 不方便后期的维护,所以不常用
2. 内部样式, 只适合于写简单样式. 只针对某个标签生效. 缺点是不能写太复杂的样式.
3. 外部样式,html和css实现了完全的分离, 企业开发常用方式.
1.4 CSS书写规范
样式大小写
统一使用小写字母。
空格规范
1.冒号后面带空格。
2.选择器和 } 之间带空格。
二、CSS选择器
CSS 选择器的主要功能就是选中页面指定的标签元素. 选中了元素, 才可以设置元素的属性.
CSS的选择器主要有标签选择器、class选择器、id选择器、复合选择器、通配符选择器。
2.1 标签选择器
即将HTML中的标签作为选择器的选择器,如:
/* 选择所有的a标签, 设置颜⾊为红⾊ */
a {color: red;
}
/* 选择所有的div标签, 设置颜⾊为绿⾊ */
div {color: green;
}
示例:
2.2 ID选择器
!!!标签选择器改变的是整个页面中所有标签为该标签的属性,而ID选择器改变的只是页面中标签id为目标id的属性,往往改变的是单个标签的属性(id不重复的情况下)。
/* 选择id为submit的元素, 设置颜⾊为红⾊ */
#submit {color: red;
}
!!!注意:使用ID选择器要再id前加 # 以区分id与标签的区别。
示例:
2.3 类选择器
即通过标签中的class属性来改变标签的属性的选择器。
用来改变几个类属性相同的标签的属性。
/* 选择class为font32的元素, 设置字体⼤⼩为32px */
.font32 {font-size: 32px;
}
!!!注意:通过再class名前加“ . “来区分它为类选择器。
示例:
2.4 通配符选择器
/* 设置⻚⾯所有元素, 颜⾊为红⾊*/
* {color: red;
}
示例:
2.4 复合选择器
类型一:
/*只设置 ul标签下的 li标签下的 a标签, 颜⾊为红⾊*/
ul li a {color: blue;
}
ul li a 之间以空格隔开,表示将ul标签下的li标签下的a标签的颜色改为blue,它们之间是父子关系。
类型二:
ul , ol {color:red;
}
ol li 之间以逗号隔开,表示将所有的ul ol标签都改为红色,它们之间是兄弟关系。
三、常用CSS
<div class="div1">我是一个div</div>
3.1 color
color:设置字体颜色
.text1{color: red;
}
结果如下:
其中,颜色有以下三种表达方式:
1.英文单词:如red、green等
2.rgb代码的颜色:如rgb(255,0,0)(即用三原色表示)
3.十六进制表示:如#ff00ff(即将三原色的值用十六进制表示出来)
3.2 font-size
font-size用于设置字体大小
.div1 {font-size: 50px;}
结果如下:
3.3 border(边框)
边框是⼀个复合属性, 可以同时设置多个样式, 不分前后顺序, 浏览器会根据设置的值自动判断 。
.text1{border: 1px solid purple;
}
结果如下:
边框分为上下左右(top、buttom、left、right)四个部分,我们也可以单独对边框的某部分进行设置,如:
上面border的属性分别为边框粗细、样式还有颜色。也可以根据下表分开设置:

也就是说,上面的代码相当于:
.text1 {/* border: 1px purple solid; */border-width: 1px;border-style: solid;border-color: purple;
}
这三个属性可以通过1~4个值来指定(以border-width为例):
<1>当指定一个值时:同时设置4条边的宽度;
<2>当指定二个值时:第一个值设置顶部和底部,第二个值设置左侧和右侧;
<3>当指定三个值时:第一个值设置顶部,第二个值设置左侧和右侧,第三个值设置底部;
<4> 当指定四个值时:按照顶不,右侧,底部,左侧(顺时针)设置;
其它两个属性类似。
3.4 width和height
width: 设置宽度
height: 设置高度
注意:只有块级元素才可以设置宽高!!!(即独占一行的元素,如h1~h6等),比如改变span标签的高度和宽度是不会生效的。
如果一定要设置行内标签的宽高呢?我们可以通过使用display属性修改元素的显示模式。
• display: block 改成块级元素 [常用]
• display: inline 改成行内元素 [很少用]
3.5 padding(内边距)和 margin(外边距)
padding: 内边距, 设置内容和边框之间的距离.
内容默认是顶着边框放置的. 用 padding 来控制这个距离

.text1 {padding: 20px;
}
margin:外边距,设置元素与元素之间的距离。
.text1 {margin: 20px;
}
注意:和border一样,padding和margin也是⼀个复合样式, 可以对四个方向分开设置
• padding-top
• padding-bottom
• padding-left
• padding-right
• margin-top
• margin-bottom
• margin-left
• margin-right
示例:
!!!内边距和外边距是相对的。
相关文章:
Java前端基础——CSS
一、CSS介绍 1.1 什么是CSS CSS(Cascading Style Sheet),层叠样式表,用于控制页面的样式. CSS 能够对网页中元素位置的排版进行像素级精确控制, 实现美化页面的效果. 能够做到页面的样式和结构分离. 1.2 基本语法规范 选择器 {⼀条/N条声明} • 选择器决定针…...
Photino:通过.NET Core构建跨平台桌面应用程序,.net国产系统
一、Photino.NET简介: 最近发现了一个不错的框架 Photino.Net 一份代码运行,三个平台 windows max linux ,其中windows10,windows11,ubuntu 18.04,ubuntu 20.04 已测试均可以。mac 因为没有相关电脑没有测试。 github:https://github.com/t…...
个人全栈开发微信小程序上线了(记日记)
个人开发的全栈项目,《每日记鸭》微信小程序上线了! 主要是技术栈:uniapp,koa2,mongodb,langchian; 感兴趣的小伙伴可以来捧捧场!...
Linux移植IMX6ULL记录 一:编译源码并支持能顺利进入linux
目录 前言 一、不修改文件进行编译 二、修改设备树文件进行编译 前言 我用的开发板是100_ask_imx6ull_pro,其自带的linux内核版本linux-4.9.88,然后从linux官网下载过来的linux-4.9.88版本的arch/arm/configs/defconfig和dts设备树文件并没有对imx6ull…...
idea正则表达式-正则替换示例-2024.11笔记
注意idea中反向引用的格式是【$1】换行符是【\n】 需要在如下的代码中往接口的方法中添加一行注解,注解需要用到以后注解的中文备注 原文 Autowired private WomanService womanService; /** * 自定义分页 */ PostMapping("/page/{current}/{…...
Github 2024-11-20C开源项目日报 Top9
根据Github Trendings的统计,今日(2024-11-20统计)共有9个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量C项目9Assembly项目1raylib: 用于视频游戏编程的简单易用图形库 创建周期:3821 天开发语言:C协议类型:zlib LicenseStar数量:18556 个Fork数…...
安卓CameraX的使用
如果要在安卓应用中操作相机,有三个库可以选: Camera(已废弃):Camera是安卓最早的包,目前已废弃,在Android 5.0(API 级别 21)的设备上操作相机可以选择该包,…...
unity3d——基础篇小项目(开始界面)
示例代码: using System.Collections; using System.Collections.Generic; using UnityEngine;public class BeginPanel : BasePanel<BeginPanel> {public UIButton btnBegin;public UIButton btnRank;public UIButton btnSetting;public UIButton btnQuit; …...
【YOLOv8】安卓端部署-1-项目介绍
【YOLOv8】安卓端部署-1-项目介绍 1 什么是YOLOv81.1 YOLOv8 的主要特性1.2 YOLOv8分割模型1.2.1 YOLACT实例分割算法之计算掩码1.2.1.1 YOLACT 的掩码原型与最终的掩码的关系1.2.1.2 插值时的目标检测中提取的物体特征1.2.1.3 coefficients(系数)作用1.…...
安卓手机root+magisk安装证书+抓取https请求
先讲一下有这篇文章的背景吧,在使用安卓手机fiddler抓包时,即使信任了证书,并且手机也安装了证书,但是还是无法捕获https请求的问题,最开始不知道原因,后来慢慢了解到现在有的app为了防止抓包,把…...
11.20 深度学习-pytorch包和属性的基础语法
import torch import numpy as np def sci_close(): # 关闭pytorch 数据打印出来时科学计数法 torch.set_printoptions(sci_modeFalse) pass return 0 def create_tensor(): # 创建张量 t1torch.tensor(5) # 一阶张量 阶数看你传入的矩阵是多少阶的 这个是标量 不是一阶 一阶…...
SpringMVC域对象共享数据
目录 一.向 request 域对象共享数据 1.1使用ServletAPI向request域对象共享数据 1.2使用ModelAndView向request域对象共享数据 1.3使用Model向request域对象共享数据 1.4使用map向request域对象共享数据 1.5使用ModelMap向request域对象共享数据 二.Model、ModelMap、Ma…...
每日论文23-24ESSERC 6.4-16.1Ghz混合并联-串联谐振器
《A 6.4-to-16.1GHz Hybrid Parallel-Series Resonator Mode-Switching Oscillator with 206.6dBc/Hz FoMT at 1MHz Offset in 40nm CMOS》 24ESSERC 首先这篇文章有个地方我其实没太明白,它在title和行文的时候都写的是“ hybrid parallel-series resonator mode-…...
【软考】系统架构设计师-信息安全技术基础
信息安全核心知识点 信息安全5要素:机密性、完整性、可用性、可控性、审查性 信息安全范围:设备安全、数据安全、内容安全、行为安全 网络安全 网络安全的隐患体现在:物理安全性、软件安全漏洞、不兼容使用安全漏洞、选择合适的安全哲理 …...
kali搭建pikachu靶场
前言: 总所周知搭个网站需要有apachemysqlphp,Apache是一个开源的Web服务器软件, MySQL是一种关系型数据库管理系统(数据库),PHP是一种在服务器上执行的脚本语言 文章内容来自:【黑帽编程与攻…...
注解用于从 HTTP 请求中提取数据
在 Spring 框架中,PathVariable、RequestParam 和 RequestBody 等注解用于从 HTTP 请求中提取数据。具体来说: PathVariable:用于从 URL 路径中提取变量值。例如,在路径 /users/{id} 中,{id} 是一个路径变量。Request…...
(Linux)搭建静态网站——基于http/https协议的静态网站
简单了解nginx配置文件 1.下载并开启nginx服务 下载 [rootlocalhost ~]# dnf install nginx -y开启 [rootlocalhost ~]# systemctl restart nginx 1.(1)搭建静态网站——基于http协议的静态网站 实验1:搭建一个web服务器,访问该服务器时显示“hello w…...
【机器学习chp3】判别式分类器:线性判别函数、线性分类器、广义线性分类器、分段线性分类器
前言: 本文遗留问题:(1)对最小平方误差分类器的理解不清晰.(2)分段线性判别函数的局部训练法理解不清晰。 推荐文章1,其中有关于感知机的分析 【王木头从感知机到神经网络】-CSDN博客 推荐文…...
【学习】【HTML】HTML、XML、XHTML
HTML 什么是 HTML? HTML (HyperText Markup Language) 是一种用于创建和展示网页的标准标记语言。它由一系列的元素组成,这些元素通过标签的形式来告诉浏览器如何显示内容。 HTML 的基本结构是什么? <!DOCTYPE html> <html> …...
ARM中ZI-data段和RW-data段
ARM中ZI-data段和RW-data段 1、只定义全局变量,不使用,不占用内存空间2、 定义并初始化全局变量为0 占用ZI-Data区域3、定义并初始化全局变量非0 占用RW-Data区域4、增加的是一个int8的数据为什么,size增加不是15、定义的全局变量为0…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
关于nvm与node.js
1 安装nvm 安装过程中手动修改 nvm的安装路径, 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解,但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后,通常在该文件中会出现以下配置&…...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
第25节 Node.js 断言测试
Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...
短视频矩阵系统文案创作功能开发实践,定制化开发
在短视频行业迅猛发展的当下,企业和个人创作者为了扩大影响力、提升传播效果,纷纷采用短视频矩阵运营策略,同时管理多个平台、多个账号的内容发布。然而,频繁的文案创作需求让运营者疲于应对,如何高效产出高质量文案成…...
在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)
考察一般的三次多项式,以r为参数: p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]; 此多项式的根为: 尽管看起来这个多项式是特殊的,其实一般的三次多项式都是可以通过线性变换化为这个形式…...
Linux部署私有文件管理系统MinIO
最近需要用到一个文件管理服务,但是又不想花钱,所以就想着自己搭建一个,刚好我们用的一个开源框架已经集成了MinIO,所以就选了这个 我这边对文件服务性能要求不是太高,单机版就可以 安装非常简单,几个命令就…...
Ubuntu系统复制(U盘-电脑硬盘)
所需环境 电脑自带硬盘:1块 (1T) U盘1:Ubuntu系统引导盘(用于“U盘2”复制到“电脑自带硬盘”) U盘2:Ubuntu系统盘(1T,用于被复制) !!!建议“电脑…...
shell脚本质数判断
shell脚本质数判断 shell输入一个正整数,判断是否为质数(素数)shell求1-100内的质数shell求给定数组输出其中的质数 shell输入一个正整数,判断是否为质数(素数) 思路: 1:1 2:1 2 3:1 2 3 4:1 2 3 4 5:1 2 3 4 5-------> 3:2 4:2 3 5:2 3…...














