CSS background-repeat属性
来源:互联网 发布:ce6.2软件 编辑:程序博客网 时间:2024/05/01 13:53
城市现在为了评选文明城市,都开始注重城市的市容市貌多种树、多修路,尤其是人行甬道都开始铺设清洁的瓷砖、大理石等一些装饰性设施。我们今天的话题就从甬道上的这些东西开始。
Repeat英文意思是“重复”,拿到CSS中就有“平铺”的意思。顾名思义,background-repeat
就是“背景平铺”的意思。它是控制背景图片的平铺方式。平铺的概念在现实生活中比比皆是,比如地板砖的平铺、农村二层小洋房墙壁的瓷砖平铺……
既然这样,那平铺一定有其铺设的规则,不能东一榔头西一斧头的。在CSS规则中,background-
控制的平铺规则有:
repeat
repeat-x
:横向平铺;repeat-y
:纵向平铺;repeat
:横向平铺和纵向平铺(默认值);no-repeat
:不平铺;round
:背景图像自动缩放直到适应且填充满整个容器或某个方向。(CSS3)space
:背景图像以相同的间距平铺且填充满整个容器或某个方向。(CSS3)
首先,我们先看看前四个规则(这里以repeat-x
规则为例)
在CSS2中,background-repeat
的写法是这样的:
background-repeat: repeat-x;
它规定的是背景容器中背景图片横向和纵向的统一平铺规则,上例中即是横向和纵向都共同遵守repeat-x
的平铺规则。
我们来逐个分析这些规则:
相信军训我们都经历过吧,想当年,我就是站在炎炎烈日下,接受着军训的考验的,那真是又痛苦,又记忆满满。军训有一项就是听从口令,排列阵型。
接下来,我们想象自己就是教官,开始对背景图片下达命令:
repeat-x
口令:“全体都有,以为***基准,成一横排排列,向左向右看 ~ ~ ~ 齐”
repeat-y
口令:“全体都有,以为***基准,成一竖排排列,向前向后看~ ~ ~齐”
repeat
口令:“全体都有,以为***基准,成一方队排列,向左向前看~ ~ ~齐”
no-repeat
口令:“立正,稍息,除了***,全体解散”(***被罚站了,哈哈)
休息过后,CSS3总教官指示我们排列阵型的训练加项,加项的内容有:
round
口令:“全体都有,以为***基准,成密集队形,方队排列,小碎步倒腾起来,向左向前看~ ~ ~齐”(每个人都被挤扁了);
space
口令:“全体都有,以为***基准,成散开队形,方队排列,小碎步倒腾起来,向左向前看~ ~ ~齐”(每个人之间有了距离);
接下来CSS3总教官又有了新指示:横排和纵排可以分别下达指令,于是就有了诸如以下口令:
background-repeat:repeat no-repeat; background-repeat:repeat round; background-repeat:round space; .......
第一个口令是给横排下达的命令,而第二个口令是给纵排下达的口令。
比如:
repeat no-repeat口令:“以为***基准,向左向右看~ ~ ~齐,第二排往后解散”;
repeat round口令:“以为***基准,向左向右看~ ~ ~齐,纵排成密集队形,向前向后看~ ~ ~齐”;
round space口令:“以为***基准,横排成密集队形,向左向右看~ ~ ~齐,纵排成散开队形,向前向后看~ ~ ~齐”;
……
上面的***是一个基准,我们可以把它看成是元背景图片
好了,漫长的军训在我们的严格训练下有意义的结束了。
最后我们可以开始写军训总结了:
综合CSS3,
background-repeat
属性可以有单值,该值表示背景图片在横向和纵向的统一平铺规则;也可以有双值,其中第一、二个值分别表示背景图片在横向和纵向的平铺规则。在双值模式下,repeat-x
和repeat-y
被摒弃,因为没有什么意义,直接可以用repeat
和no-repeat
来代替。需要说明的是:其实无论是横向的平铺还是纵向平铺,它不是射线形式的平铺,而是直线形式的平铺。比如横向平铺时,它是通过元背景图片向左向右延伸,纵向平铺时,它是通过元背景图片向上向下延伸。
图片来源于
http://www.zhangxinxu.com/wordpress/2011/05/%E7%BF%BB%E8%AF%91-css3-backgrounds%E7%9B%B8%E5%85%B3%E4%BB%8B%E7%BB%8D/round
值和space
值是用于调试平铺后的背景图片能够完整的展现在背景容器内。
为了达成这个目的,它们真是八仙过海,各显神通:round是
用牺牲图片原尺寸大小来实现(可能会导致图片失真)space
是用补白的方式来实现。
round
和space
他们调节的力度大小与背景容器的大小、背景图片的绘画起点(background-origin
)、背景图片的大小(background-size
)有关,而与背景图片的附着点(background-attachment
除了fixed
值外)、背景图片的剪切方式(background-clip
)、背景图片的定位(background-position
)无关。
这里要说明一下:background-attachment
属性的值为fixed
时,round
和space
就会变心,它会以完整的铺满可视窗口为目的,而不是背景容器
原文链接
- CSS background-repeat 属性
- CSS background-repeat 属性
- CSS background-repeat 属性
- CSS background-repeat属性
- CSS background-repeat 属性示例
- CSS背景:background-repeat
- CSS中背景图片的属性:background-repeat、background-position、background-size
- [CSS]CSS background属性
- background-repeat
- background-repeat:no-repeat
- CSS background-position 属性
- css背景属性 Background
- css 属性 background:transparent;
- css的background属性
- CSS background-position 属性
- css background 各种属性
- CSS background属性详解
- CSS background 属性
- HTML5(动画)
- 2018中兴回寄三方
- Appium Desktop-启动异常Permission to start activity denied.
- 从一个html页面传值到另一个页面,两个html之间的值传递(js location.search用法)
- Redis学习指南
- CSS background-repeat属性
- 配置文件无法识别targetFramework属性
- WaitForMultipleObjects用法详解,一看就懂
- 怎么获取积分啊
- 安装Vue.js脚手架 vue-cli
- ios每日源码,侧滑菜单精美动画曲线表弹性碰撞效果视频播放器渐变背景动画效果源码
- 使用browserSync不起作用的解决办法
- 【Java】【JVM】垃圾回收机制
- OkGoHttp让网络请求更简单