CSS3背景样式详解(图像大小,图像位置等)

这篇具有很好参考价值的文章主要介绍了CSS3背景样式详解(图像大小,图像位置等)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景样式

在CSS3中,新增了3个背景属性

属性 说明
background-size 背景大小
background-origin 背景位置
background-clip 背景剪切

background-size属性

概念:在CSS3之前,我们是不能用CSS来控制背景图片大小的,背景图片的大小都是由图片实际大小确定的。

但在CSS3中,可以用background-size属性来定义背景图片的大小。

特点

  • 图片可以保有其原有的尺寸,
  • 图片拉伸到新的尺寸,
  • 图片在保持其原有比例的同时缩放到元素的可用空间的尺寸

语法::

background-size:属性值;

常用属性值

属性值 说明
像素值 设置背景图像的宽度和高度。只能为正值。如果设置2个属性值,则第1个属性值定义宽度,第2个属性值定义高度。如果只设置1个属性值,则表示宽度,而高度则等比例缩放
百分比 父元素的百分比来设置背景图像的宽度和高度。只能为正值。如果设置2个属性值,第一个属性值设置宽度,第二个属性值定义高度。如果只设置1个属性值,该属性值表示宽度,而高度则等比例缩放
auto 定义背景图像按照原始尺寸表示
cover 即“覆盖”,表示把背景图像等比例缩放到完全覆盖背景区域。背景图像的某些部分也许无法在背景定位区域中。和contain相反,cover值尽可能大的缩放背景图像并保持图像的宽高比例(图像不会被压扁)。该背景以它的全部宽或者高覆盖所在容器。当容器和背景图像大小不同时,背景图的左/右或者上/下部分会被裁剪
contain 即”容纳“,表示把背景图像等比例缩放到宽度或高度与容器的宽度或高度相等时,以使背景图像位于区域内,但可能使背景区部分空白。contain尽可能的缩放背景并保持图像的宽高比例(图片不会被压缩)。该背景图会填充所在的容器。当背景图和容器的大小不同时,容器的空白区域(上/下或者左/右)会显示由background-color设置的背景颜色

注意:没有被背景图片覆盖的背景区域仍然会显示用background-color属性设置的背景颜色。此外,如果背景图片设置了透明或者半透明属性,衬在背景图片后面的背景色也会显示出来

单张图片的背景大小可以使用以下方法中的一种来规定:

  • 使用关键字contain
  • 使用关键字cover
  • 设定宽度和高度值

当通过宽度和高度来定义尺寸时,可以提供一或者两个数值:

  • 当通过宽度和高度值来设定尺寸时,你可以提供一或者两个数值:
  • 如果仅有一个数值被给定,这个数值将作为宽度值大小,高度值将被设定为 auto
  • 如果有两个数值被给定,第一个将作为宽度值大小,第二个作为高度值大小。

每个值都可以是像素值 还是百分比,或者auto

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>背景图片的大小</title>
		<style type="text/css">
			div{
				display:inline-block;
				width:200px;
				height:150px;
				border:1px solid green;
				margin:20px;
				background-image:url('../边框样式/image/son.jpg');
				background-repeat:no-repeat;
			}
			.a{
				background-size:200px 150px;
			}
			.b{
				background-size:100% 100%; 
			}
			.c{
				background-size:auto;
			}
			.d{
				background-size:cover;
			}
			.e{
				background-size:contain;
			}
		
		</style>	
	</head>
	<body>
		<div class="a"></div>
		<div class="b"></div>
		<div class="c"></div>
		<div class="d"></div>
		<div class="e"></div>
	</body>
</html>

运行结果
CSS3背景样式详解(图像大小,图像位置等),html+css,css3,前端,css,html

注意:背景图片跟普通图片(即是img标签)是不同的东西。width跟height这两个属性只能用来定义img标签图片的大小,而不能用于控制背景图片的大小

background-origin属性

概念:默认情况下,background-position属性总是以元素左上角为坐标原点定位背景图像。

在CSS3中,可以使用background-origin属性来定义背景图片是从什么地方开始平铺的,也就是定义背景图片background-image属性的原点位置的背景相对区域

语法:

background-origin:属性值;

说明

属性值

属性值 说明
border-box 边框区域(含边框)开始显示背景图像
padding-box 默认值,从内边距区域(含内边距)开始显示背景图像
content-box 内容区域(含内容)开始显示背景图像

注意:当使用background-attachment为fixed时,该属性将被忽略不起作用

边框区域,内边距区域和内容区显示如图
CSS3背景样式详解(图像大小,图像位置等),html+css,css3,前端,css,html

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>背景图片位置</title>
		<style>
			div{
				display:inline-block;
				width:200px;
				height:150px;
				border:10px solid green;
				margin:20px;
				padding:20px;
				background-image:url('../边框样式/image/border.png');
				background-repeat:no-repeat;
				text-align-last: center;
				line-height:150px;
				font-size:20px;
			
			}
			.a{
				background-origin:border-box;
			}
			.b{
				background-origin:padding-box;
			}
			.c{
				background-origin:content-box;
			}
		</style>
	</head>
	<body>
		<div class="a">border-box</div>
		<div class="b">padding-box</div>
		<div class="c">content-box</div>
	</body>
</html>

运行结果
CSS3背景样式详解(图像大小,图像位置等),html+css,css3,前端,css,html

实际上,background-origin属性的本质是:定义background-position属性相对于什么位置来定位。如果没有设置background-position,因此浏览器会采用默认值,即"background-position:top left"。

background-clip属性

概念:background-clip属性用于定义背景图片的裁剪区域

语法:

background-clip:属性值;

属性值

属性 说明
border-box 默认值,从边框区域开始向外裁剪背景图像
padding-box 内边距区域开始向外裁剪背景图像
content-box 内容区域开始向外裁剪背景图像
text 背景被裁剪成文字的前景色

边框区域,内边距区域和内容区显示如图
CSS3背景样式详解(图像大小,图像位置等),html+css,css3,前端,css,html

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>裁剪图像</title>
		<style>
			div{
				display:inline-block;
				width:200px;
				height:150px;
				border:10px dotted green;
				margin:20px;
				padding:20px;
				background-image:url('../边框样式/image/son.jpg');
				background-repeat:no-repeat;
				text-align-last: center;
				line-height:150px;
				font-size:20px;
				color:white;
			}
			.a{
				background-clip:border-box;
			}
			.b{ 
				background-clip:padding-box;
			}
			.c{
				background-clip:content-box;
			}
			.d{
				background-clip:text;
				color:rgba(0,255,255,0.6);
			}
		</style>
	</head>
	<body>
		<div class="a">border-box</div>
		<div class="b">padding-box</div>
		<div class="c">content-box</div>
		<div class="d">text</div>
</html>

运行结果
CSS3背景样式详解(图像大小,图像位置等),html+css,css3,前端,css,html

多重背景图像

概念:

所谓的多重背景图像,指的是该元素的背景图像不止一张

在CSS3之前版本中,一个容器中只能填充一幅背景图像,如果重复设置,后设置的背景图像会覆盖之前的背景图像

但在CSS3的背景图像功能增强了很多,允许在一个容器里显示多幅背景图像,使背景图像效果更容易控制。

CSS3中没有为实现多重背景图像提供对应的属性,而是通过background这个复合属性来实现多重背景图像的效果,各属性值之间用英文逗号(,)隔开。

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>多重背景图像</title>
		<style>
			div{
				width:1200px;
				height:800px;
				border:1px solid blueviolet;
				background:url("../边框样式/image/fish4.png") left center no-repeat ,url("../边框样式/image/fish.png") top center no-repeat;

			}
		</style>
	</head>
	<body>
		<div></div>
	</body>
</html>

运行结果
CSS3背景样式详解(图像大小,图像位置等),html+css,css3,前端,css,html

除了运用background复合属性,也可以通过background属性的子属下background-image、background-repeat、background-position等属性提供多个属性值来实现多重背景图像的效果

/* background复合属性 */
	background:url("../边框样式/image/fish4.png") left center no-repeat ,url("../边框样式/image/fish.png") top center no-repeat;

/* background子属性,这两者效果是一样的*/
	background-image: url("../边框样式/image/fish4.png"),url("../边框样式/image/fish.png");
	background-repeat:no-repeat;
	background-position:left center,top center;
	background-size:40%;

这两者是等价的,运行效果都一致的。

说明:多重背景图像在实际开发中,不建议使用多张背景图片,因为每多一张图片就会多引发一次HTTP请求,势必影响页面加载速度文章来源地址https://www.toymoban.com/news/detail-821530.html

到了这里,关于CSS3背景样式详解(图像大小,图像位置等)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 通过使用html的css样式来达到给背景色添加渐变色的效果

    这里我直接添加了两个div,并且给两个div添加了基本的css样式,有问题请私信          在演示开始之前我们先来认识一下实现渐变效果的一个属性  background: linear-gradient 这个是我们设置背景渐变色的关键属性,然后我们开始演示(这里我们通过修改第二个div)          

    2024年02月08日
    浏览(53)
  • HTML5+CSS3+移动web 前端开发入门笔记(二)HTML标签详解

    排版标签用于对网页内容进行布局和样式的调整。下面是对常见排版标签的详细介绍: 标题使用至标签进行定义。定义最大的标题,定义最小的标题。具有align属性,属性值可以是:left、center、right。 将给定的HTML代码转换为Markdown格式的标题标签如下所示: 效果演示: H3:

    2024年02月07日
    浏览(69)
  • css3背景渐变

    1.线性渐变  2.径向渐变 3.重复渐变 无论线性渐变,还是径向渐变,在没有发生渐变的位置,继续进行渐变,就为重复渐变。 利用重复渐变实现网格效果 代码如下:

    2024年02月13日
    浏览(46)
  • CSS3-背景

        背景         1 背景颜色         2 背景图片         3 背景平铺         4 背景位置         5 背景相关属性连写         6(拓展)img标签和背景图片的区别             1 背景颜色             属性名:background-color             取值;、rgb表示法、rgba表示

    2024年02月11日
    浏览(40)
  • CSS3样式分类:

    虽然样式都是比较简单的  但是到用的时候就会想不起来 我这边列举一下常用的 加深下记忆 边框样式: border-radius:设置元素的圆角边框。 box-shadow:为元素添加阴影效果。 border-image:使用图像来定义边框的样式。 渐变背景: linear-gradient:创建线性渐变背景。 radial-gradie

    2024年02月13日
    浏览(51)
  • 【CSS】CSS 背景设置 ② ( 背景位置 | 背景位置-方位值设置 )

    如果 盒子的大小 大于 背景图片的大小 , 默认的 图片 位置是 左上角 ; 设置背景位置的 CSS 语法如下 : background-position 属性值 可以是 length 长度 , 也可以是 position 方位 ; length 长度 : 百分数 : 如 50% ; 浮点数 + 单位 : 如 : 150.5px ; position 方位 : 设置的是 x 坐标的方位 和 y 坐标的方

    2024年02月07日
    浏览(43)
  • css3背景与渐变

    在现代网页设计中,背景与渐变是塑造用户体验和品牌形象的关键元素。这不仅仅是技术层面的问题,更是一门艺术。通过本文,我们将揭示CSS3的神奇之处,帮助你释放创意,打破设计的局限,让你的网页焕发生机。 background-color属性表示背景颜色 背景颜色可以用十六进制、

    2024年01月20日
    浏览(47)
  • CSS3设计动画样式

    CSS3动画包括过渡动画和关键帧动画,它们主要通过改变CSS属性值来模拟实现。我将详细介绍Transform、Transitions和Animations 3大功能模块,其中Transform实现对网页对象的变形操作,Transitions实现CSS属性过渡变化,Animations实现CSS样式分步式演示效果。 2012年9月,W3C发布CSS3变形工作草

    2024年02月06日
    浏览(48)
  • CSS3表格和表单样式

    在传统网页中,表格主要用于网页布局,因此也成为网页编辑的主要工具;在标准化网页设计中,表格的主要功能是显示数据,也可适当辅助结构设计。本章主要介绍如何使用CSS控制表格和表单的显示效果,如表格和表单的边框、背景等样式。 CSS为表格定义了5个专用属性,

    2024年02月06日
    浏览(37)
  • 深入理解css3背景图边框

    重点理解 border-image-slice 设置的值将边框背景图分为9份,图像中间的舍弃,其他部分图像对应边框的相应区域放置,上右下左四角固定,border-image-repeat设置的是除四角外其他部分的显示方式。 截图来自菜鸟教程:CSS3 border-image-slice 属性 | 菜鸟教程  背景图像大小 81*81 依据

    2024年02月10日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包