3. CSS的色彩与背景
3.1 CSS3中的色彩
CSS3扩展了颜色的定义方式,使得开发者能够使用更多样化和灵活的颜色表达方式。这包括RGB、RGBA、HSL、HSLA等格式,以及支持透明度和渐变的特性。
3.1.1 颜色格式
十六进制颜色
十六进制颜色是最常用的颜色表示法,以#开头,后面跟随三位或六位十六进制数。
/* 三位十六进制颜色 */
.element {background-color: #f00; /* 红色 */
}/* 六位十六进制颜色 */
.element {background-color: #ff0000; /* 红色 */
}
RGB颜色
RGB颜色格式使用红、绿、蓝三个颜色分量来定义颜色。
.element {background-color: rgb(255, 0, 0); /* 红色 */
}
RGBA颜色
RGBA颜色是在RGB基础上增加了透明度(Alpha)通道,值范围为0到1。
.element {background-color: rgba(255, 0, 0, 0.5); /* 50%透明的红色 */
}
HSL颜色
HSL颜色格式使用色相(Hue)、饱和度(Saturation)和亮度(Lightness)三个分量来定义颜色。
.element {background-color: hsl(0, 100%, 50%); /* 红色 */
}
HSLA颜色
HSLA颜色是在HSL基础上增加了透明度(Alpha)通道。
.element {background-color: hsla(0, 100%, 50%, 0.5); /* 50%透明的红色 */
}
3.1.2 透明度
CSS3引入了 opacity
属性,可以设置元素的透明度。
/* 设置元素的透明度为50% */
.element {opacity: 0.5;
}
3.1.3 渐变
CSS3引入了线性渐变和径向渐变,允许开发者创建平滑的颜色过渡效果。
线性渐变
线性渐变是沿着一条直线的颜色渐变。
/* 从上到下的线性渐变 */
.element {background: linear-gradient(to bottom, red, yellow);
}
径向渐变
径向渐变是从中心点向外扩展的颜色渐变。
/* 从中心点向外的径向渐变 */
.element {background: radial-gradient(circle, red, yellow);
}
3.2 CSS3中的背景
CSS3扩展了背景属性,增加了多背景、背景尺寸、背景裁剪等新特性。
3.2.1 多背景
CSS3允许为一个元素指定多个背景图像,每个背景图像可以独立设置。
/* 设置多背景 */
.element {background-image: url('image1.png'), url('image2.png');background-position: left top, right bottom;background-repeat: no-repeat, repeat;
}
3.2.2 背景尺寸
background-size
属性允许开发者设置背景图像的尺寸。
/* 背景图像填充整个元素 */
.element {background-size: cover;
}/* 背景图像包含在元素内 */
.element {background-size: contain;
}
3.2.3 背景裁剪
background-clip
属性用于设置背景图像的裁剪区域。
/* 背景图像延伸到边框外 */
.element {background-clip: border-box;
}/* 背景图像延伸到内边距 */
.element {background-clip: padding-box;
}/* 背景图像延伸到内容区域 */
.element {background-clip: content-box;
}
3.2.4 背景附着
background-attachment
属性定义背景图像是随元素滚动还是固定在视口。
/* 背景图像固定 */
.element {background-attachment: fixed;
}/* 背景图像随元素滚动 */
.element {background-attachment: scroll;
}
3.3 实例解析
3.3.1 制作半透明按钮
使用RGBA颜色和透明度制作一个半透明按钮。
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>半透明按钮</title>
<style>
.button {background-color: rgba(0, 123, 255, 0.5); /* 50%透明的蓝色 */color: white;padding: 10px 20px;border: none;border-radius: 5px;cursor: pointer;transition: background-color 0.3s ease;
}.button:hover {background-color: rgba(0, 123, 255, 0.8); /* 增加透明度 */
}
</style>
</head>
<body>
<button class="button">点击我</button>
</body>
</html>
3.3.2 创建渐变背景的标题
使用线性渐变创建一个渐变背景的标题。
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>渐变背景标题</title>
<style>
h1 {background: linear-gradient(to right, red, yellow);color: transparent;-webkit-background-clip: text;background-clip: text;font-size: 48px;
}
</style>
</head>
<body>
<h1>渐变背景标题</h1>
</body>
</html>
3.3.3 多背景图像示例
为一个元素应用多个背景图像。
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>多背景图像示例</title>
<style>
.container {width: 300px;height: 300px;background-image: url('image1.png'), url('image2.png');background-position: center, top right;background-repeat: no-repeat, repeat;
}
</style>
</head>
<body>
<div class="container"></div>
</body>
</html>
相关文章:
3. CSS的色彩与背景
3.1 CSS3中的色彩 CSS3扩展了颜色的定义方式,使得开发者能够使用更多样化和灵活的颜色表达方式。这包括RGB、RGBA、HSL、HSLA等格式,以及支持透明度和渐变的特性。 3.1.1 颜色格式 十六进制颜色 十六进制颜色是最常用的颜色表示法,以#开头…...

MiniCPM-Llama3-V-2_5-int4
MiniCPM-Llama3-V-2_5-int4大模型部署使用环境: python3.8cuda11.8其它要求,按照安装文档要求下载即可 我是在算力平台用4090跑的, GPU 显存(8GB)可以部署推理 int4 量化版本,如果推理非量化版本需要更高显…...

压缩能力登顶 小丸工具箱 V1.0 绿色便携版
平常录制视频或下载保存的视频时长往往都很长,很多时候都想要裁剪、 截取出一些“精华片段”保留下来,而不必保存一整个大型视频那么浪费硬盘空间… 但如今手机或电脑上大多数的视频剪辑软件,切割视频一般都要等待很长时间导出或转换&#…...

电子电器架构 - 车载网管功能简介
电子电器架构 - 车载网管功能简介 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,…...
路由配置总结
在 Vue 中,一级路由和二级路由的配置主要依赖于 vue-router 插件。以下是关于一级路由和二级路由配置的总结: 一、安装 vue-router 你可以通过 npm 或 yarn 来安装 vue-router。在命令行中运行以下命令: 使用 npm: npm install vue-router…...

从零起航,Python编程全攻略
新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、Python入门之旅 二、Python进阶之道 三、Python爬虫实战 四、Python数据分析利器 五…...
正运动视觉与运动一体机小课堂----三分钟系列
【视觉运控一体机小课堂】三分钟搭建机器视觉开发环境-正运动技术 (zmotion.com.cn) 【视觉运控一体机小课堂】三分钟读取本地图像-正运动技术 (zmotion.com.cn) 【视觉运控一体机小课堂】三分钟实现相机采集和图像保存-正运动技术 (zmotion.com.cn) 【视觉运控一体机小课堂…...

微信小程序如何跳转微信公众号
1. 微信小程序如何跳转微信公众号 1.2. 微信公众号配置 登录微信公众号,点击【小程序管理】: 点击【添加】: 点击【关联小程序】: 输入小程序进行关联: 1.2. 微信小程序配置 登录微信小程序…...

vi和vim编辑器
目录 1 vi和vim的基本介绍 2 vi和vim常用的三种模式 1)正常模式 2)插入模式 3)命令行模式 3 vim快捷键 1)普通模式下: 2)输入模式 3)命令行模式 4)可视模式 1 vi和vim的基本…...

纯电动汽车硬件在环测试
纯电动汽车硬件在环测试技术研究综述 1、新能源汽车概述 随着新能源汽车“电动化、智能化、网联化、共享化”进程的不断推进,新能源汽车的整体性能得到显著提高,纯电动汽车已经逐渐走进大众视野,消费者对于新能源汽车的认可度和购买欲望也稳…...
Flutter 中的 ClipRect 小部件:全面指南
Flutter 中的 ClipRect 小部件:全面指南 在Flutter中,ClipRect是一个布局小部件,它使用矩形裁剪其子组件的可见部分。这意味着超出ClipRect定义的矩形区域的子组件部分将被隐藏。ClipRect通常用于实现自定义的滚动效果、动画或者仅仅是为了限…...

【LeetCode】【209】长度最小的子数组(1488字)
文章目录 [toc]题目描述样例输入输出与解释样例1样例2样例3 提示进阶Python实现前缀和二分查找滑动窗口 个人主页:丷从心 系列专栏:LeetCode 刷题指南:LeetCode刷题指南 题目描述 给定一个含有n个正整数的数组和一个正整数target找出该数组…...

1738. 找出第 K 大的异或坐标值
题目: 给你一个二维矩阵 matrix 和一个整数 k ,矩阵大小为 m x n 由非负整数组成。 矩阵中坐标 (a, b) 的 值 可由对所有满足 0 < i < a < m 且 0 < j < b < n 的元素 matrix[i][j](下标从 0 开始计数)执行异…...
Fortran: stdlib标准库
Fortran 标准库 stdlib_logger,stdlib_error, stdlib_sorting,stdlib_optval模块挺好用 封装 stdlib_logger和stdlib_error: M_logger.F90 module M_loggeruse stdlib_loggeruse stdlib_error containssubroutine info(message,module,procedure)character(len*),intent(in):…...
CSS3优秀动画代码示例
目录 旋转立方体悬停效果动画路径动画纯CSS进度条文字打字机效果3D翻转卡片SVG路径跟随动画SVG心跳动画旋转文字手风琴效果...
嵌入式0基础开始学习 ⅠC语言(4)循环结构
0.问题引入 求0~100数据之和: int sum 0; sum 1234....100; 废手,那么有没有一种好的方法取操作呢? int sum 0; int i 1; sum sum i; // sum 01; …...

【JAVASE】抽象类
1、抽象类概念 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。比如: 说明&a…...

嵌入式硬件中PCB走线与过孔的电流承载能力分析
简介 使用FR4敷铜板PCBA上各个器件之间的电气连接是通过其各层敷着的铜箔走线和过孔来实现的。 由于不同产品、不同模块电流大小不同,为实现各个功能,设计人员需要知道所设计的走线和过孔能否承载相应的电流,以实现产品的功能,防止过流时产品烧毁。 文中介绍设计和测试FR4敷…...

动态规划之背包问题中如何确定遍历顺序的问题-组合or排列?
关于如何确定遍历顺序 322. 零钱兑换中,本题求钱币最小个数,那么钱币有顺序和没有顺序都可以,都不影响钱币的最小个数。 所以本题并不强调集合是组合还是排列。 如果求组合数就是外层for循环遍历物品,内层for遍历背包。 如果求…...

开源大模型与闭源大模型
概述 开源大模型和闭源大模型是两种常见的大模型类型,它们在以下方面存在差异: 开放性: 开源大模型:代码和模型结构是公开可用的,任何人都可以访问、修改和使用。闭源大模型:模型的代码和结构是私有的&…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...

AI书签管理工具开发全记录(十九):嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...

MyBatis中关于缓存的理解
MyBatis缓存 MyBatis系统当中默认定义两级缓存:一级缓存、二级缓存 默认情况下,只有一级缓存开启(sqlSession级别的缓存)二级缓存需要手动开启配置,需要局域namespace级别的缓存 一级缓存(本地缓存&#…...
redis和redission的区别
Redis 和 Redisson 是两个密切相关但又本质不同的技术,它们扮演着完全不同的角色: Redis: 内存数据库/数据结构存储 本质: 它是一个开源的、高性能的、基于内存的 键值存储数据库。它也可以将数据持久化到磁盘。 核心功能: 提供丰…...

若依登录用户名和密码加密
/*** 获取公钥:前端用来密码加密* return*/GetMapping("/getPublicKey")public RSAUtil.RSAKeyPair getPublicKey() {return RSAUtil.rsaKeyPair();}新建RSAUti.Java package com.ruoyi.common.utils;import org.apache.commons.codec.binary.Base64; im…...