CSS背景相关属性
CSS样式可以精确控制HTML元素的背景、边框的样式和外观,也可以精确控制边框的线型和形状。其中,背景相关属性可以用于控制背景色、背景图片等属性。在控制背景图片的同时还可以控制背景图片的排列方式。
常用的背景相关属性如下:
- background:设置对象的背景样式,是一个复合属性,可以用于同时设置背景色、背景图片、背景重复模式等属性。
该复合属性可以分开写为以下几个属性:
- background-color:设置背景色。如果同时设置了背景色和背景图片,则背景图片将覆盖背景色。
- background-image:设置背景图片。该属性需要使用url()函数指定图片地址,图片地址既可以是相对地址,也可以是绝对地址。
- background-repeat:用于设置对象的背景图片是否平铺。在指定该属性之前,必须先指定background-image属性。其属性值有repeat(平铺)、no-repeat(不平铺)、repeat-x(仅在横向平铺)和repeat-y(仅在纵向平铺)。CSS 3 为该属性新增了space和round,这两个属性值用于保证图片不会被裁减。其中,round通过自动调整背景图片的大小来达到目的,而space是调整背景图片的间距。
- background-attachment:用于设置背景图片是随对象内容滚动还是固定的。该属性支持以下两个值:
- scroll:指定背景图片会随元素里内容的滚动而滚动。是默认值。
- fixed:背景图片固定,不会随元素里内容的滚动而滚动。
- background-position:用于设置对象的背景图片位置。该属性需要横坐标和纵坐标两个值。(当一个网页中的小图标非常多时,通常会使用雪碧图以达到减少加载网页图片时对服务器的请求次数的目的,在使用雪碧图时,就需要使用background-position来定位显示出相应的小图标)
除了以上几个属性外,CSS 3 中新增了几个背景相关属性。
1、background-clip:用于设置背景图片的覆盖范围
该属性支持以下几个属性值:
- border-box:指定背景覆盖盒模型的边框区(border)、内填充区(padding)、内容区(content)
- no-clip:指定背景覆盖盒模型的边框区(border)、内填充区(padding)、内容区(content)
- padding-box:指定背景覆盖盒模型的内填充区(padding)、内容区(content)
- content-box:指定背景覆盖盒模型的内容区(content)
盒模型相关概念请查看:https://www.cnblogs.com/web12/p/9925742.html
2、background-origin:用于设置背景覆盖的起点
该属性支持以下几个属性值:
- border-box:指定背景图片从边框区开始覆盖
- padding-box:指定背景图片从内容填充区开始覆盖
- content-box:指定背景图片从内容区开始覆盖
3、background-size:用于设置背景图片的大小
该属性由两个值组成,分别代表图片的宽度、高度。可以设置具体的长度值,也可以指定百分比(为它所在元素的宽或高的百分比),还可以设置为auto(指定背景图片保持纵横比缩放,宽度、高度只能有一个被指定为auto,表明宽度、高度会以保持纵横比的方式自动计算出来)。
CSS3允许为以上几个属性指定多个属性值(属性值之间以英文逗号隔开)以此来实现多背景图片的效果。
CSS3还为背景提供了线性渐变和径向渐变支持,使得开发者可以进行更多灵活的背景设置。
- 使用linear-gradient设置线性渐变
语法格式为:background-gradient:linear-gradient(渐变方向,颜色列表)
方向参数支持如下:
| 角度 | 用英文 | 作用 |
| 0deg | to top | 从上到下 |
| 90deg | to right | 从左到右 |
| 180deg | to bottom | 从上到下 |
| 270deg | to left | 从右到左 |
| to top left | 右下角到左上角 | |
| to top right | 左下角到右上角 |
CSS3还提供了repeating-linear-gradient设置循环线性渐变,这种渐变将会循环利用给出的渐变颜色。下面页面代码示范了循环线性渐变的功能。
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> 循环线性渐变 </title>
<style type="text/css">
/* 为div元素增加边框 */
div{
height: 400px;
width: 400px;
}
</style>
</head>
<body>
background:repeating-linear-gradient(red, blue 10%, magenta 20%)<br>
红、蓝、洋红循环线性渐变
<div id="dv1" style="background:repeating-linear-gradient(red, blue 10%, magenta 20%);"></div>
<!-- 为input滑动事件(range)绑定onchange事件处理器 -->
角度:<input style="width:360px" type="range" min="0" max="360" value="0"
onchange="change(this.value);">
<script type="text/javascript">
function change(val){
var s = "linear-gradient(" + val + ", red, blue)";
document.getElementById("dv1").style.background =
"repeating-linear-gradient(" + val + "deg, red, blue 10%, magenta 20%)";
}
</script>
</body>
其效果如下:

- 使用radial-gradient设置线性渐变
其语法格式如下:
background:radial-gradient(形状?大小?at x坐标 y坐标,颜色列表)
radial-gradient语法格式可分为4个部分
- 形状:指定径向渐变的形状,目前支持circle和ellipse两种形状。该属性值可以被省略,如果省略,将由浏览器感觉被添加背景的HTML元素的形状来决定渐变的形状。
- 大小:指定径向渐变的大小。这部分也可以省略,如果省略,也将由浏览器来决定,通常会占满整个HTML元素。
- 圆心:圆心部分必须由at关键字开头,后面紧跟圆心的x坐标和y坐标。这部分也可以省略,如果省略,则默认为HTML元素的中心。x坐标和y坐标支持如下写法:
- left:代表x坐标的最左边
- center:可代表x左边和y坐标的中间
- right:代表x坐标的最右边
- top:代表y坐标的最顶部
- bottom:代表y坐标的最底部
- 数值:支持长度值和百分比,可代表x左边和y坐标的值
- 颜色列表:可以指定多个颜色
CSS背景相关属性的更多相关文章
- CSS 基础 背景相关属性操作
1.background-color:red : //设置背景颜色为红色,rgb(0,0,0)和transparent 均为透明颜色 2.background-image(可缩bgi写用tab键) 语 ...
- CSS will-change 属性
介绍 如果你注意到在webkit的浏览器上“flicker”一些CSS操作(尤其是变形和动画方面的)的表现,你很可能之前就注意过硬件加速了 CPU.GPU和硬件加速 硬件加速意味着Graphics P ...
- css动画属性性能
性能主要表现:流量.功耗与流畅度 在现有的前端动画体系中,通常有两种模式:JS动画与CSS3动画. JS动画是通过JS动态改写样式实现动画能力的一种方案,在PC端兼容低端浏览器中不失为一种推荐方案. ...
- CSS字体属性大全
文章转自:http://www.10wy.net/Article/CSS/CSS_list_8.html查看更多更专业性的文章请到:网页设计网 CSS字体属性 字体名称属性(font-family) ...
- css z-index属性使用过程中遇到的问题
z-index属性在web开发中会经常使用,其主要的作用简单的说就是把元素的position设置为absolute.fixed之后,可以调节元素在文档上的层级关系.比如经常见到的dialog,mask ...
- 【转】CSS z-index 属性的使用方法和层级树的概念
文章转自:CSS z-index 属性的使用方法和层级树的概念,另外加了一点自己的注释 CSS 中的 z-index 属性用于设置节点的堆叠顺序, 拥有更高堆叠顺序的节点将显示在堆叠顺序较低的节点前面 ...
- css之属性部分
这篇写的是今天的学习到的属性,一共20个. 属性再多,但也要会使用,会在使用时可以记起它,才能起到它为我们所需要的作用. 样式属性 1.border CSS边框属性允许你指定一个元素边框的样式和颜色. ...
- CSS背景属性Background详解
[转] 本文详解了CSS的背景属性Background,包括CSS3中新增的背景属性.如果你是个CSS初学者,还可以查看之前介绍的CSS浮动属性和CSS透明属性详解. CSS2 中有5个主要的背景(b ...
- CSS3 border-radius 属性和CSS outline 属性
CSS3 border-radius 属性 border-radius 属性是一个简写属性,用于设置四个 border-*-radius 属性. 提示:该属性允许为元素添加圆角边框! 注释:按此顺序设 ...
随机推荐
- CRC32算法笔记
这几天在研究CRC32的计算过程,看了CRC算法的原理,也看了不少通过移位法实现的代码,但是算出的结果跟校验工具算的不一致. 折腾了好长时间,终于找到一个手工计算CRC32的文章,再对照IEEE 80 ...
- Python全栈-magedu-2018-笔记12
第三章 - Python 内置数据结构 字典dict key-value键值对的数据的集合 可变的.无序的.key不重复 字典dict定义 初始化 d = dict() 或者 d = {} dict( ...
- 【算法笔记】B1017 A除以B
1017 A除以B (20 分) 本题要求计算 A/B ,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数.你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立. 输入格式: ...
- 使用Appium-Desktop捕获APP元素控件实现自动化控制
使用Appium捕获APP的元素控件 实现自动化控制 我是用的是华为P20手机进行测试,为了映射出它的adb端口,需再去官网下载安装一个华为手机助手,然后将手机调成开发者模式,连接时选择传输文件模式. ...
- pycharm入门的简易使用教程
1.安装python3.5包: 本人安装到C盘,如下所示: Ps:安装时候,路径一定要添加到环境变量中,安装完,需要更新环境变量,所以要重启电脑 2.安装pycharm 下载相应的安装包,步骤不重复了 ...
- 用代码如何检测一个android程序是否在运行
/** * 检测一个android程序是否在运行 * @param context * @param PackageName * @return */ public static boolean is ...
- 3dsmax2020卸载/安装失败/如何彻底卸载清除干净3dsmax2020注册表和文件的方法
3dsmax2020提示安装未完成,某些产品无法安装该怎样解决呢?一些朋友在win7或者win10系统下安装3dsmax2020失败提示3dsmax2020安装未完成,某些产品无法安装,也有时候想重新 ...
- 利用C#结合net use命令破解域帐号密码
背景 我的职业是程序猿,而所在的工作单位因各种原因,对上网帐号有严格控制,近期竟然把我们的上网帐号全部停用,作为程序猿,不能上网,就如同鱼儿没有水,煮饭没有米,必须想办法解决此问题.公司的局域网环境是 ...
- Android控件之ListView的使用
ListView是Android当中一个非常常用的数据显示控件. 第一种可以使用List<HashMap<String , Object>>,作为适配器的数据源来显示要显示的数 ...
- <数据挖掘导论>读书笔记4--其他分类技术
1.基于规则的分类器 2.最近邻分类器 3.贝叶斯分类器 4.人工神经网络 5.支持向量机 6.组合方法 7.不平衡类问题 8.多类问题