CSS 样式基础与视觉设计:从单位到字体

1. CSS 长度单位

CSS 长度单位可分为绝对单位相对单位两大类,它们为网页布局提供了灵活的尺寸控制方案。

1.1 绝对单位

绝对单位表示固定尺寸,不受其他元素影响。主要单位包括:

  • px(像素):屏幕显示的基本单位,1px 通常对应 1 个物理像素

1.2 相对单位

相对单位会根据父元素或视口尺寸动态调整,常见单位如下:

单位 说明
% 相对于父元素尺寸
em 相对于当前元素字体大小
rem 相对于根元素(html)字体大小
vw 视口宽度的 1%
vh 视口高度的 1%

示例:

css 复制代码
.box {
  width: 50vw;
  height: 50vh;
  background-color: red;
}

该示例中,.box 的尺寸会随视口大小自动调整。


2. CSS 颜色表示

CSS 支持多种颜色表示方式:

2.1 命名颜色

使用预定义颜色名称,如 redblue,简单但可选范围有限。

2.2 RGB/RGBA

  • RGB:通过红(0-255)、绿(0-255)、蓝(0-255)三原色混合
  • RGBA:在 RGB 基础上增加透明度(0-1)
css 复制代码
.box {
  background-color: rgb(255, 0, 0); /* 红色 */
}
.box1 {
  background-color: rgba(0, 255, 0, 0.5); /* 半透明绿色 */
}

2.3 十六进制颜色

#RRGGBB 格式表示,如:

css 复制代码
#ff0000 /* 红色 */
#00ff00 /* 绿色 */ 

2.4 HSL/HSLA

  • HSL:色相(0-360)、饱和度(0-100%)、亮度(0-100%)
  • HSLA:增加透明度
css 复制代码
.box {
  background-color: hsl(0, 100%, 50%); /* 红色 */
}

3. CSS 字体样式

3.1 基础属性

  • color:文本颜色
  • font-size:字号(px/em/rem等)
  • font-family:字体类型
css 复制代码
p {
  color: red;
  font-size: 16px;
  font-family: "Arial", sans-serif;
}

3.2 自定义字体

使用 @font-face 引入外部字体:

css 复制代码
@font-face {
  font-family: "MyFont";
  src: url("font.ttf");
}
p {
  font-family: "MyFont";
}

4. CSS 字体分类

分类 示例 适用场景
衬线字体 serif 传统正式页面
无衬线字体 sans-serif 现代简洁设计
等宽字体 monospace 代码展示
草书字体 cursive 创意装饰性设计
艺术字体 fantasy 特殊主题设计

示例:

css 复制代码
p {
  font-family: serif;
}

5. 其他字体样式

5.1 字体效果

css 复制代码
p {
  font-style: italic;  /* 斜体 */
  font-weight: bold;   /* 加粗 */
}

5.2 简写属性

css 复制代码
p {
  font: italic bold 30px "Courier New", monospace;
}
相关推荐
接着奏乐接着舞6 分钟前
react redux Toolkit 分组更推荐
前端·javascript·react.js
笨笨狗吞噬者14 分钟前
uni-app 运行时揭秘:styleIsolation 的转化
前端·微信小程序·uni-app
是席木木啊37 分钟前
告别console.log!Vue3项目日志框架选型指南
前端·vue3·日志框架
凰轮38 分钟前
TypeScript 知识点总结
前端·javascript·typescript
英俊潇洒美少年1 小时前
告别大请求卡顿!原生 CompressionStream 实现 axios 请求体自动 Gzip 压缩(前后端全适配)
前端
|晴 天|1 小时前
Element Plus 组件库实战技巧与踩坑记录
前端·javascript·vue.js·typescript
im_AMBER1 小时前
从面试题看JS变量提升
开发语言·前端·javascript·前端框架
Mintopia1 小时前
不用学微服务,也能设计不崩的系统:最小可行思路
前端
llf_cloud1 小时前
Vue2 项目中的全局自动弹窗队列设计
前端·javascript·vue.js
百锦再1 小时前
使用JavaScript获取和解析页面内容的完整指南
开发语言·前端·javascript·python·flask·fastapi