css设置背景图拉伸铺满!

在css样式里设置背景图片拉伸充满有几种方法:

1、用body里设置(但是这样的缺点是只能横向充满,高度是按比例拉伸的):

background-size:100%;

或者:background-size:cover;

示例代码:

body{
   background-image:url(test.jpg);
   background-repeat:no-repeat;
   background-size:100%;
}

2、用一个div充满整个body(这样的缺点可想而知,网页的代码只能放在这个div里):

示例代码:

html部分代码:

<body>
<div class="background">
	<h1>测试测试</h1>
</div>
</body>

css样式部分代码:

body{
	overflow:hidden;
}
div.background{
	position:absolute;
	width:100%;
	height:100%;
	background-image:url(timg.jpg);
	background-repeat:no-repeat;
	background-size:100% 100%;
	
}

3、用一个img充满整个body(但是这样子后面的元素都要设置定位了,但自我感觉并不碍事哈~~~):

html部分代码:

<body>
<img class="background" src="timg.jpg" />
<h1>测试测试</h1>
</body>

css样式部分代码:

body{
	overflow:hidden;
}
img.background{
	position:absolute;
	width:100%;
	height:100%;
	
}
h1{
	position:absolute;
	top:0px;
}

上面都是我的一些总结,不足之处欢迎补充!

  • 12
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要让 CSS 背景图片全屏铺满而不拉伸,可以使用 `background-size: cover` 属性。这个属性会自动调整背景图片的大小,使得图片完整地覆盖整个容器,同时不拉伸图片。例如: ``` body { background-image: url(your-image-url.jpg); background-size: cover; background-repeat: no-repeat; background-attachment: fixed; background-position: center; } ``` 这样,背景图片就可以全屏铺满且不拉伸了。 ### 回答2: 要实现CSS背景图片全屏铺满且不拉伸可以使用以下方法: 1. 使用background-size属性: 在CSS中,可以使用background-size属性来设置背景图片的大小。通常,我们可以将其设置为cover,以使背景图完全覆盖背景区域,同时保持图片的比例不变。这样,背景图片可以全屏铺满,但可能会被裁剪。 例如: ``` body { background-image: url("背景图地址"); background-size: cover; background-repeat: no-repeat; background-position: center; background-attachment: fixed; } ``` background-repeat属性设置为no-repeat可以禁止背景图重复出现,而background-position属性将其设置为居中显示。同时,使用background-attachment: fixed属性可以固定背景图,使其随页面滚动而滚动。 2. 使用background-position属性和vw、vh单位: 使用background-position属性结合vw和vh单位,可以根据视口的宽度和高度设置背景图的位置,实现全屏铺满效果。 例如: ``` body { background-image: url("背景图地址"); background-repeat: no-repeat; background-position: center; background-attachment: fixed; background-size: auto; } @media (max-aspect-ratio: 16/9) { body { background-size: 100vw auto; } } @media (min-aspect-ratio: 16/9) { body { background-size: auto 100vh; } } ``` 通过@media媒体查询,可以根据视口的长宽比例设置合适的背景图大小。在上述示例中,背景图会根据视口的宽高比例设置为100vw自动高度或者自动宽度100vh。 综上所述,以上两种方法可以实现CSS背景图片全屏铺满而不拉伸的效果。 ### 回答3: 要将CSS背景图片全屏铺满但不拉伸,可以使用CSS3的background-size属性和background-position属性。以下是一种实现方法: 首先,在CSS样式中设置背景图片的路径,例如: ```css body { background-image: url("path-to-image.jpg"); } ``` 然后,使用background-size属性设置背景图片的尺寸,将其调整为cover,即将图片缩放以填充整个容器,但保持其纵横比: ```css body { background-size: cover; } ``` 接下来,使用background-position属性设置背景图片的位置为中心,即将其放置在容器的中央: ```css body { background-position: center; } ``` 最后,将容器的高度和宽度设置为100%,以使背景图铺满整个屏幕: ```css html, body { height: 100%; width: 100%; } ``` 以上方法可以确保背景图片在保持纵横比的同时填满整个屏幕,不会出现拉伸的情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值