零基础教你学前端——72 CSS背景
myzbx 2025-01-20 15:11 15 浏览
我们学习 CSS 背景属性。
假设这里有个 div 容器,宽 400,高 300,默认情况下,这个 div 是没有背景的,或者说它的背景是透明的,我们拿一张图片实验一下就能看得出来,这个 div 在默认情况下,背景是透明的。
也可以给 div 加一个背景颜色。
既然可以设置背景颜色,那么当然也可以给这个 div 设计一个背景图片,就像这样。但是由于这个 div 已经被我设定了大小,图片呢,是大于这个容器的,所以实际上,我们最终看到的效果,是这个样子的。我们只能看到图片的一部分。下面我们就来看看应用 CSS 背景属性如何实现这个效果。
创建一个 css-background.html 文件和一个 background-style.css 文件。接下来,我们打算给整个页面来添加背景图片。
事实上,body 元素也是一个容器,可以直接给 body 添加背景图片。body 容器默认水平方向上,是占满整个窗口的,我们来给它添加一个高度样式,定义选择器 body,声明样式 height: 100%。
CSS
body {
height: 100%;
}
预览一下效果,按下 F12,来观察一下页面 body 元素的大小,我们发现 body 依然是只有宽度,没有高度。为什么我们设置的高度 100% 不管用呢?大家注意,这里的100%是相对于它的父元素高度的,body 元素的父元素是 html,这个元素我们并没有给它设置大小。
所以,在 body 选择器前面加一个 html 逗号 ( html, ),这样两个元素都设置了高度。让他们的高度和浏览器窗口大小保持一致。
这时再来看一下页面,现在 body 和整个窗口就一样大了。
CSS
html, body {
height: 100%;
}
下面我们给 body 添加背景图片,可以通过 background-image 属性实现,属性值为 url 后跟一个小括号,括号里面填写背景图片的路径 (url(./duck.gif))。
回到样式代码,再定义一个 body 选择器,单独给它再声明样式 background-image: url(./duck.gif)。这个图片是一个动态图片。
我们来观看一下效果,为什么会出现这么多的图片呢?我明明只是加了一张背景图而已。原因是,当我们给元素添加背景图片的时候,图片是以平铺的方式来展现的。
什么是平铺呢?就是当我们放入一张背景图的时候,这个图片在默认情况下,会向四周扩散,无限的进行重复,就变成了这个样子。当然了,容器是有大小限制的,最终我们能看到的部分呢,也就这么多而已。
如果我们不希望这个背景图是重复的,需要使用一个新的背景属性 background-repeat,取值为 no-repeat。
我们来看效果,最终就只有一张动图了。
接下来我们来修改一下,将背景图片换成另外一张图片。
再来观察这个效果,由于不允许平铺,我们只看到了一张图片。
把 background-repeat 属性值 no-repeat 改为 repeat。
我们就看到了这样的效果。
在平时开发的时候,给一个网页或一个比较大的容器设置背景,经常会采用这样的技巧,放一个小的图片进去,只需要让它保持平铺的方式,我就会得到一张无限大的图。
再回到刚才的例子。如果要求这个背景图片在页面中间显示,我们如何调整背景图的位置呢?
我们需要使用 background-position 属性,这个属性需要写两个值:第一个值表示在水平方向上的对齐方式——left,center,right。第二个值表示在垂直方向上的对齐方式——top,center ,bottom。
给 body 添加样式 background-position: center center,也就是水平垂直居中。
大家发现,图片移到了页面的中间。如果将图片放到右下角,属性值该如何设置呢?把答案写到公屏上吧。
回到 html 代码,添加一个 h1 元素和五个 p 元素,填入一些文本。再复制五份。
再回到 css 代码,背景图恢复为 bg.png,图片平铺方式为 repeat。
我们看一下效果,可以通过滚动条来查看网页内容,仔细观察,文字和背景图片一起滚动。那能否实现文字滚动,背景图片不动呢?大家可以先脑补一下效果。
实现这个效果,需要使用 background-attachment 属性,用来声明容器里的背景图片与内容的依附方式。值 fixed:图片固定,值 scroll:同时滚动。
给 body 选择器添加样式 background-attachment
[??t?t?m?nt] : fixed。
再看一下效果,滚动一下页面,背景固定的效果实现了!
前面我们多次使用到了 background-color 属性,它可以给容器设置背景颜色,值可以设置为颜色名称,十六进制颜色值,RGB颜色值等等。
把背景图片的样式注释掉,添加 background-color 属性,值为 green。
此时,整个页面背景为绿色!颜色有点深,可以让绿色变的浅一些吗?
你能想到的方法应该是换一个其他的颜色值,其实,我们可以通过让背景透明一些,同样可以实现这个效果。
这需要学习一个新的颜色值表示方法——rgba。这里的 rgb 就是 rgb 颜色值,a 是 alpha 的简写,表示通过设置一个 alpha 通道,来指定颜色的不透明度,是一个介于 0 到 1 的数字。0表示完全透明,1 表示完全不透明。比如 rgba(0, 0, 0, 0.5),表示的颜色就是黑色半透明。
把 green 颜色名称改为 rgba(0, 255, 0, 0.1)。
我们看,页面绿色的背景因为透明,颜色变浅了!
为了缩短代码,也可以使用单一的 background 来指定所有的背景属性。
可以把 body 的全部背景属性,合并在一个 background 属性里。注释所有代码,声明属性 background,值可以写为:颜色值 rgba(0, 255, 0, 0.1), 背景图片 url(./duck.gif),平铺方式 no-repeat,背景图位置 right bottom,背景依附 fixed。 (rgba(0, 255, 0, 0.1) url(./bg.png) no-repeat right bottom fixed;)
我们看,一句声明,实现了全部的背景效果!
文章配套视频链接: https://www.bilibili.com/video/BV1oU4y1278g/?p=75
- 上一篇:前端入门——css边框和圆角
- 下一篇:vb.net的颜色赋值代码
相关推荐
- 斐波那契时钟:据说智商太低的人看不懂,你敢来挑战吗?
-
如果你在一个公共场合,看到了桌上亮着的东西,你会以为它是什么?小夜灯?恭喜你,回答错误。它是Fibonacci钟,专为追求与众不同的“怪胎们”准备。它外表精美,甚至看不出这是一个钟,但它真的是个钟,只...
- 曾都区文峰学校二年级数学组开展钟表制作主题活动
-
为了使学生更加直观地认识钟表、感知钟表,曾都区文峰学校二年级数学组开展了“小钟面大创意”钟表制作主题活动。孩子们大胆设计、精心制作,每一个作品都充满了创意与童趣。 滴答滴答滴答,小小时钟在说话。它都...
- 不能更酷!游戏机改造的报时钟表(游戏机能改成正常机吗)
-
当家里的游戏机逐渐过时的时候,你会把它怎么办?无论是卖掉还是封存珍藏都是不错的办法,不过Rurue0111有更酷的主意:将PlayStation改造成时钟。初代PS正脸有一个圆圆的硕大光驱盒盖,别...
- 计量小知识来了!古代没有钟表,夜晚是如何计算时间的?
-
古人把一昼夜分为十二个时辰,用十二地支名加上“时”字表示。即子时、丑时、寅时、卯时、辰时、巳时、午时、未时、申时、酉时、戌时、亥时。每一时刻相当于今天的两个小时。这十二时辰与现今计时法的关系是:子时-...
- 「爱」的挂钟(爱的时钟)
-
鸳鸯和天鹅算是鸟类中最会秀恩爱的了吧,以它们为元素做设计也应该是件很优雅的事。台湾的好事(haoshi)工作室成立于2009年。设计师坚持纯洁与和平的设计理念,将生活中抽象的好事物以艺术化的形式呈...
- 亚洲最大欧米茄时钟亮相北京王府井百货 钟面直径约7.9米
-
亚洲最大欧米茄(OMEGA)时钟正式亮相北京地标性建筑王府井百货(专题阅读)大楼。作为迄今为止亚洲最大的欧米茄时钟,甫一亮相即吸引到众多游客的目光。至此,位于北京最繁华地带的王府井大街将被欧米茄时钟...
- 初一数学难点“线段与角”,老师手把手教你画图,保证学会
-
期中考试已过去,学生们的学习进了一个新的阶段,每个科目的老师又开始兢兢业业开始了他们的讲授之路。现以初一数学为例,具体说说现阶段的数学学习什么?如何去高效学习?在现阶段,学生们开始学习了一些简单的几何...
- 科技感十足的悬浮时钟(悬浮 时钟)
-
说起来磁悬浮已经不是什么新鲜事儿了,自从有了磁悬浮列车,好像所有的东西都可以跟磁悬浮扯上关系。一个来自瑞典的设计团队FLYTE设计了一款叫做STORY的时钟,利用磁悬浮技术,让时钟的指针飞了起来~▽设...
- 一上数学 第七单元 认识钟表 逐字稿
-
(bluehouse456全文整理)同学们大家好,老师,这里准备了一些图片,你知道是什么吗?是钟表。钟表在我们的生活中经常遇到,你知道钟表有什么作用吗?是的,钟表可以帮助人们计时安排一天的工作和学习...
- 人教版数学一年级上册第七单元《认识钟表》知识要点:
-
一、认识钟面1.钟面结构钟面上有12个数字,按顺时针方向排列,代表1到12时。分针:又细又长的指针,转动较快,指示分钟。时针:又粗又短的指针,转动较慢,指示小时。指针转动方向为顺时针(从左到右)。2...
- 浔阳小学一年级数学组举行钟表制作活动
-
九江新闻网讯(伍巧红)12月23日,浔阳小学一年级数学组组织学生进行制作钟表的活动。孩子们利用双休日与父母共同参与了这项活动。这次钟面设计手工制作活动,属于数学“设计与应用”领域。钟表与学生的生活息息...
- 时钟指针夹角计算公式(时钟夹角万能公式)
-
关于时钟指针夹角问题,小学应该有一定的认识,一些特殊情况下的夹角,学生能顺利求出。在初一数学《角》的教学中,我们对夹角问题会有更深入的了解。设定钟面时间为a时b分,此时,时针与分针夹角是多少呢?有没有...
- 雨城区四小教育集团汉碑校区一年级数学组开展“创意钟面”制作比赛
-
四川新闻网雅安5月6日讯为丰富学生的课余生活,培养创新思维和动手操作能力,复习巩固新学的《钟面的认识》,使学生进一步掌握“整时、几时半、大约几时”等知识点。近日,雨城区四小教育集团汉碑校区一年级数学...
- 一大波奇奇怪怪的钟表来袭,你见过几个?
-
别再问时间都去哪了,其实时间都去了设计师的脑洞里……No.1音乐时钟DINN意大利设计师AlessandroZambelli为钟表品牌Diamantini&Domeniconi设...
- 瑞士国铁钟表Mondaine:分秒不差的精准,穿越七十年的经典
-
在瑞士,时间不仅是数字,更是一种艺术。当你踏入瑞士任何一个火车站,目光一定会被站台上那简洁优雅的挂钟吸引——纯白的钟面、清晰的黑色刻度,再配上一根醒目的红色圆头秒针,仿佛在无声地诉说着瑞士人对精准与美...
- 一周热门
- 最近发表
- 标签列表
-
- HTML 简介 (30)
- HTML 响应式设计 (31)
- HTML URL 编码 (32)
- HTML Web 服务器 (31)
- HTML 表单属性 (32)
- HTML 音频 (31)
- HTML5 支持 (33)
- HTML API (36)
- HTML 总结 (32)
- HTML 全局属性 (32)
- HTML 事件 (31)
- HTML 画布 (32)
- HTTP 方法 (30)
- 键盘快捷键 (30)
- CSS 语法 (35)
- CSS 选择器 (30)
- CSS 轮廓 (30)
- CSS 轮廓宽度 (31)
- CSS 谷歌字体 (33)
- CSS 链接 (31)
- CSS 中级教程 (30)
- CSS 定位 (31)
- CSS 图片库 (32)
- CSS 图像精灵 (31)
- SVG 文本 (32)