css background 背景知识详解
background 背景属性
我们知道元素有前景色color,与之对应的还有背景色,通过background我们可以为元素添加实色(background-color)和任意多个背景图片(background-image)。
css 背景常见属性
- background-color
- background-position
- background-size
- background-repeat
- background-origin
- background-clip
- background-attachment
- background-image
一、background-color
background-color 属性设置元素的背景颜色。它会会填充元素的内容、内边距和边框区域,扩展到元素边框的外边界(但不包括外边距)。如果边框有透明部分(如虚线边框),会透过这些透明部分显示出背景色。如果不想它包含边框可以用它的另一个属性clip来处理。

看效果图,我们知道默认背景颜色会填充边框的。
它的取值有:
1、关键字:red,blue等
2、十六进制值:#ff0000
3、transparent值
4、inherit:从父元素那继承的值
5、rgb、rgba(如rgba(255,255,0,.8))、hsl、hsla(如hsla(360, 50%, 50%, .5))
等
二、background-position
background-position属性顾名思义是用来控制背景的位置,它同时设定了元素和图片的原点,而原点决定了元素和图片中某一点的水平和垂直坐标。默认情况原点位于左上角。也就是说元素的左上角和图片的左上角是对齐的。
它的取值:
一、它的五个关键字:top、left、right、bottom、center。二二取值都可以成为它们的属性值。
- top left
- top center
- top right
- center left
- center center
- center right
- bottom left
- bottom center
- bottom right
上面的关键字如果只设定一个,那另外一个也会取相同的值。关键字的顺序不重要,left bottom和bottom left意思一样。
二、百分比值:
第一个值是水平位置,第二个值是垂直位置。左上角是 0% 0%。右下角是 100% 100%。只设定一个值,则只用来设定水平位置,而垂直位置会默认设为center。
三、像素或其他css单位
第一个值是水平位置,第二个值是垂直位置。左上角是 0 0。单位是像素 (0px 0px) 或任何其他的 CSS 单位。如果您仅规定了一个值,另一个值将是50%。您可以混合使用 % 和 position 值。
此外还可以运用正负值,将图片左上角定位到元素外部,或将图片右下角推到元素外部。
background-position: top right;background-repeat:no-repeat;
效果图:

三、background-repeat
background-repeat 属性设置如何重复背景图像。默认背景图像在水平和垂直方向上重复。
它的取值有:
repeat:默认值
repeat-x:水平方向重复
repeat-y:水平方向重复
no-repeat:图像只出现一次
inherit:继承
此外css3还新增二个值:
background-repeat:round:为图片不被剪切,自动调整图片大小来适应背景区域。
background-repeat:space:为图片不被剪切,自动添加图片间空白来适应背景区域。
下图是值为background-repeat:space的效果图:

下面是值为background-repeat:repeat-y的效果图:

四、background-image
该属性为元素设置背景图像。格式为background-image:url(图片路径)。
五、background-size
css3新增的背景尺寸,顾名思义就是来调整图片的尺寸。
它的取值:
百分比:%
像素值:第一个值设置宽度,第二个值设置高度。
cover:拉大图片,完全填满背景区;保持宽高比。
contain:缩放图片,使其恰好适合背景区;保持宽高比。
上面最后二个属性值会将很小的图片拉得很大,so会导致图片失真。

六、background-attachment
该属性规定元素内背景图片是否随元素滚动而移动。默认值是scroll。
它的值:
scroll
fixed:背景图像不会随元素移动。通常应用给body元素中心位置添加水印等,让水印不随页面滚动而移动。
inherit
七、background-clip
background-clip 属性规定背景的绘制区域。
它的取值:
content-box:背景被裁剪到内容框
border-box:背景被裁剪到边框盒
padding-box:背景被裁剪到内边距
background-color:yellow;background-clip:content-box;padding:15px;
上面的代码给容器增加了15px的内边距后,背景被裁剪了内容区域里,
效果图如下:

八、background-origin
background-origin 属性规定 background-position 属性相对于什么位置来定位。
取值:
content-box:背景图像相对于内容框来定位
border-box:背景图像相对于边框来定位
padding-box:背景图像相对于内边距框来定位
如果背景图像的 background-attachment 属性为 "fixed",则该属性没有效果。
九、背景渐变
background:linear-gradient
background:radial-gradient
具体解释看这一篇
十、background-break
控制分离元素的显示效果
css background 背景知识详解的更多相关文章
- 如何把canvas元素作为网站背景总结详解
如何把canvas元素作为网站背景总结详解 一.总结 一句话总结:最简单的做法是绝对定位并且z-index属性设置为负数. 1.如何把canvas元素作为网站背景的两种方法? a.设置层级(本例代码就 ...
- css样式继承规则详解
css样式继承规则详解 一.总结 一句话总结:继承而发生样式冲突时,最近祖先获胜(最近原则). 1.继承中哪些样式不会被继承? 多数边框类属性,比如象Padding(补白),Margin(边界),背景 ...
- RabbitMQ基础知识详解
什么是MQ? MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法.MQ是消费-生产者模型的一个典型的代表,一端往消息队列中不断写入消息,而另一端则可以读取队列中 ...
- RabbitMQ,Apache的ActiveMQ,阿里RocketMQ,Kafka,ZeroMQ,MetaMQ,Redis也可实现消息队列,RabbitMQ的应用场景以及基本原理介绍,RabbitMQ基础知识详解,RabbitMQ布曙
消息队列及常见消息队列介绍 2017-10-10 09:35操作系统/客户端/人脸识别 一.消息队列(MQ)概述 消息队列(Message Queue),是分布式系统中重要的组件,其通用的使用场景可以 ...
- 浏览器对象模型(BOM)是什么?(体系结构+知识详解)(图片:结构)
浏览器对象模型(BOM)是什么?(体系结构+知识详解)(图片:结构) 一.总结 1.BOM操作所有和浏览器相关的东西:网页文档dom,历史记录,浏览器屏幕,浏览器信息,文档的地址url,页面的框架集. ...
- Intent知识详解
Intent知识详解 一.什么是Intent 贴一个官方解释: An intent is an abstract description of an operation to be performed ...
- Css盒模型属性详解(margin和padding)
Css盒模型属性详解(margin和padding) 大家好,我是逆战班的一名学员,今天我来给大家分享一下关于盒模型的知识! 关于盒模型的属性详解及用法 盒模型基本属性有两个:padding和marg ...
- css 之position用法详解
css 之position用法详解: http://www.jb51.net/web/77495.html
- CSS定位属性Position详解
CSS中最常用的布局类属性,一个是Float(CSS浮动属性Float详解),另一个就是CSS定位属性Position. 1. position:static 所有元素的默认定位都是:position ...
随机推荐
- c#几种数据库的大数据批量插入(SqlServer、Oracle、SQLite和MySql)
这篇文章主要介绍了c#几种数据库的大数据批量插入(SqlServer.Oracle.SQLite和MySql),需要的朋友可以了解一下. 在之前只知道SqlServer支持数据批量插入,殊不知道Ora ...
- 20165224 陆艺杰 Exp3 免杀原理与实践
杀软是如何检测出恶意代码的? 识别代码特征码 监测像后门的行为 (2)免杀是做什么? 让后面程序不被安全软件发现 (3)免杀的基本方法有哪些? 多方式编码 半手工shellcode编程 完全自己写没有 ...
- Qt 学习之路 2(63):使用 QJson 处理 JSON
Home / Qt 学习之路 2 / Qt 学习之路 2(63):使用 QJson 处理 JSON Qt 学习之路 2(63):使用 QJson 处理 JSON 豆子 2013年9月9日 Qt ...
- 关于Apache显示port 80 in use 无法解决的情况,这个世界对程序媛太不友好了
学到Ajax时下载了Apache,百度的安装教程,配置文件参数分别是: 1. httpd.conf里的80改为8000或者其他的,共三处(用记事本打开,按ctrl+F找方便) 2. httpd-ssl ...
- apache的URL重写
apache的url重写 第一步:修改apache\conf目录下的的httpd.conf文件 1.加载apache的url重写模块 大概122行:LoadModule rewrite_module ...
- XSS攻击的防御
XSS攻击的防御 XSS 攻击是什么 XSS 又称 CSS,全称 Cross SiteScript,跨站脚本攻击,是 Web 程序中常见的漏洞,XSS 属于被动式且用于客户端的攻击方式,所以容易被忽略 ...
- ORA-28009: 应当以 SYSDBA 身份或 SYSOPER 身份建立 SYS 连接
用 SQL*Plus 连接数据库的时候,除了用户名和密码外,还要在口令后面加一个主机字符串.如下: 请输入用户名:sys 口令:ANKoracle123,orcl as sysdba
- POJ1064 Cable master 【二分找最大值】
题目:题目太长了! https://vjudge.net/problem/POJ-1064 题意分析:给了你N根长度为小数形式的棍子,再给出了你需要分的棍子的数量K,但要求你这K根棍子的长度必须是一样 ...
- 113th LeetCode Weekly Contest Reveal Cards In Increasing Order
In a deck of cards, every card has a unique integer. You can order the deck in any order you want. ...
- HDU - 5119 DP
题意:求异或大于等于m的方案数 j枚举大了会WA..emmm #include<iostream> #include<algorithm> #include<cstdio ...