html自动图片尺寸,关于html:CSS背景图像适合宽度,高度应按比例自动缩放

我有

body {

background: url(images/background.svg);

}

期望的效果是该背景图像的宽度等于页面的宽度,高度变化以保持比例。 例如 如果原始图像恰好是100 * 200(任何单位)且正文宽度为600px,则背景图像最终应为1200px高。 如果调整窗口大小,高度应自动更改。 这可能吗?

目前,Firefox看起来正在调整高度,然后调整宽度。 这可能是因为高度是最长的尺寸而且它试图避免裁剪? 我想垂直裁剪,然后滚动:没有水平重复。

此外,即使明确指定background-repeat:repeat,Chrome也会将图像置于中心位置,不会重复,无论如何都是默认值。

html, body { height: 100%; }有帮助吗? 还有,咳嗽。

这有一个CSS3属性,即background-size(兼容性检查)。虽然可以设置长度值,但它通常与特殊值contain和cover一起使用。在您的特定情况下,您应该使用cover:

body {

background-image:    url(images/background.svg);

background-size:     cover;                      /*

background-repeat:   no-repeat;

background-position: center center;              /* optional, center the image */

}

eggplanation为contain和cover

对不起的双关语感到抱歉,但我将使用Biswarup Ganguly当天的照片进行演示。让我们说这是你的屏幕,灰色区域在你的可见屏幕之外。为了演示,我将假设一个16x9的比例。

d55e54c7843ed7a269bb31e5dd19db8d.png

我们想用上面提到的图片作为背景。但是,出于某种原因,我们将图像裁剪为4x3。我们可以将background-size属性设置为某个固定长度,但我们将关注contain和cover。请注意,我还假设我们没有破坏body的宽度和/或高度。

contain

contain

Scale the image, while preserving its intrinsic aspect ratio (if any), to the largest size such that both its width and its height can fit inside the background positioning area.

这样可以确保背景图像始终完全包含在背景定位区域中,但是,在这种情况下,可能会有一些空白空间填充background-color:

deb43c8122caf575da799f8e73e84757.png

cover

cover

Scale the image, while preserving its intrinsic aspect ratio (if any), to the smallest size such that both its width and its height can completely cover the background positioning area.

这可以确保背景图像覆盖所有内容。没有可见的background-color,但是根据屏幕的比例,图像的很大一部分可能会被切断:

1e7cc74c56d4b41b71ff26a7818d0a56.png

用实际代码演示

div > div {

background-image: url(http://i.stack.imgur.com/r5CAq.jpg);

background-repeat: no-repeat;

background-position: center center;

background-color: #ccc;

border: 1px solid;

width: 20em;

height: 10em;

}

div.contain {

background-size: contain;

}

div.cover {

background-size: cover;

}

/********************************************

Additional styles for the explanation boxes

*********************************************/

div > div {

margin: 0 1ex 1ex 0;

float: left;

}

div + div {

clear: both;

border-top: 1px dashed silver;

padding-top:1ex;

}

div > div::after {

background-color: #000;

color: #fefefe;

margin: 1ex;

padding: 1ex;

opacity: 0.8;

display: block;

width: 10ex;

font-size: 0.7em;

content: attr(class);

}

Note the grey background. The image does not cover the whole region, but it's fully contained.

Note the ducks/geese at the bottom of the image. Most of the water is cut, as well as a part of the sky. You don't see the complete image anymore, but neither do you see any background color; the image covers all of the .

这正是我想要的,谢谢。它似乎不适用于Chrome(或至少Chromium) - 有任何好主意吗?

根据quirksmode.org/css/contents.html#t44,它应该在Chrome中工作,没有任何前缀。但是,您尝试过-webkit-前缀吗?

Yauhen的答案(在本页底部)实际上是我在寻找的:background-size: contain

@DannyBeckett:虽然这是可能的,但它不是OP想要的:"我想垂直裁剪,然后滚动:没有水平重复。"

@DannyBeckett:新版本现在应涵盖所有相关问题。毕竟,我之前的回答是相当微小的。

contain就像缩放适合。 cover就像缩放填充。 contain调整图像大小以匹配宽度和高度之间的较大尺寸。 cover调整图像大小以匹配宽度和高度之间的较小尺寸。

@Zeta抱歉,我的错误,我混淆了两个边框:蓝色和红色边框。

基于来自https://developer.mozilla.org/en-US/docs/CSS/background-size的提示,我最终得到了以下对我有用的配方

body {

overflow-y: hidden ! important;

overflow-x: hidden ! important;

background-color: #f8f8f8;

background-image: url('index.png');

/*background-size: cover;*/

background-size: contain;

background-repeat: no-repeat;

background-position: right;

}

虽然我使用background-position: center;,但这对我来说比backgound-size: cover;更好。

我可以知道为什么我们需要overflow-y: hidden部分吗?

我不确定你到底在寻找什么,但是你真的应该看看Chris Coyier写的CSS-Tricks的这些优秀博客文章:

阅读每篇文章的描述,看看它们是否符合您的要求。

第一个回答了以下问题:

Is there a way to make a background image resizeable? As in, fill the background of a web page edge-to-edge with an image, no matter the size of the browser window. Also, have it resize larger or smaller as the browser window changes. Also, make sure it retains its ratio (doesn't stretch weird). Also, doesn't cause scrollbars, just cuts off vertically if it needs to. Also, comes in on the page as an inline tag.

第二篇文章的目标是获得以下内容,"网站上的背景图像始终覆盖整个浏览器窗口。"

希望这可以帮助。

试试这个,

element.style {

background: rgba(0, 0, 0, 0) url("img/shopping_bgImg.jpg") no-repeat scroll center center / cover;

}

背景图像不是设置完美然后他的CSS是问题创建所以他的CSS文件更改为下面的代码

html {

background-image: url("example.png");

background-repeat: no-repeat;

background-position: 0% 0%;

background-size: 100% 100%;

}

%; background-size:100%100%;"

只需添加以下一行:

.your-class {

height: 100vh;

}

vh是视口高度。

这将自动缩放以适合设备的浏览器窗口。

在这里查看更多:使div为浏览器窗口的100%高度

body{

background-image: url(../url/imageName.jpg);

background-attachment: fixed;

background-size: auto 100%;

background-position: center;

}

描述问题究竟是什么以及如何解决它,请不要在没有解释的情况下粘贴一堆代码。

我遇到了同样的问题,在调整浏览器尺寸时无法调整图像大小。

坏代码:

html {

background-color: white;

background-image: url("example.png");

background-repeat: no-repeat;

background-attachment: scroll;

background-position: 0% 0%;

}

好代码:

html {

background-color: white;

background-image: url("example.png");

background-repeat: no-repeat;

background-attachment: scroll;

background-position: 0% 0%;

background-size: contain;

}

这里的关键是添加这个元素 - > background-size:contains;

这对我有用:

background-size: auto 100%;

设置背景大小没有帮助,以下解决方案对我有用:

.class {

background-image: url(blablabla.jpg);

/* Add this */

height: auto;

}

它基本上会裁剪图像并使其适合,background-size: contain/cover仍然不适合。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/526396.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html定位的所有属性,HTML CSS定位属性详解 嘿嘿嘿

定位属性:Position作用:检索或者设置元素的定位方式“(改变元素位置)定位的步骤:1.给元素添加position属性 证明该元素要做位置变2.确定参照物!(通过position的属性值来确定 )3.确定坐标 left right top bottomPosition的属性值&a…

postman响应html,Postman工具——请求与响应(示例代码)

两个内容: Request 请求和 Response 响应,下面就开始了。一、Request 请求Request 请求,我们只介绍常用的四种:GET、POST、PUT、DELETE,其他类型的就不展开介绍了。另外,我们今天测试的项目是基于 RESTful …

2021高考无准考证成绩查询,2021考研没有准考证号怎么查成绩

2021考研没有准考证号怎么查成绩2020-12-10 11:02:14文/徐克达考研初试结束后,大家最关心的就是成绩的事情了,那么考研没有准考证号怎么查成绩呢?下面是小编整理的详细内容,一起来看看吧!考研没有准考证号查成绩的方法…

c++ 如何确认网卡为无线网卡_笔记本无线网卡有哪几种 有必要升级吗

无线网卡是很多朋友购买笔记本时容易忽视的部分,相比较处理器、内存、显卡和硬盘,无线网卡几乎不可选,而且很少有厂商提到自家产品采用的无线网卡型号。大家可能遇到过这种情况:为什么手机可以连接到5Ghz,而自己的笔记…

计算机网络专业运动会入场式,运动会入场式解说词(精选10篇)

运动会入场式解说词(精选10篇)在学习、工作生活中,接触并使用解说词的人越来越多,解说词是依靠文字来对事物、事件或人物进行描述的口头说明解说的词。大家知道解说词的格式吗?以下是小编精心整理的运动会入场式解说词(精选10篇),…

gifcam使用缩小内存_Fedora 上的桌面环境内存占用测试 | Linux 中国

通常,根据功能、外观和其它品质,选择桌面是一件非常个人的偏好。但有时,你选择的桌面环境还会受到硬件限制。-- Troy DawsonFedora 中有 40 多种桌面环境(DE)。每种桌面环境都有自己的优点和缺点。通常,根据功能、外观和其它品质&…

优秀自我简介200字_全球战疫 翰墨传情——东方盛世杯网络公益书画展优秀作品【二】...

​本文纯手打原创,转发请标注出处!中国书画爱好者,是中华优秀传统文化的薪火传承者。他们用生命中最美好的时光与最深沉的情感,实践着伟大文化复兴而不自知。——书画家网经过评委的精心评选,“东方盛世杯”2020网络公…

fi sap 凭证冲销 稅_SAP 成本收集器与重复制造配置手册

1.检查产品成本收集器的评估变式OPN22.检查产品成本收集器的成本核算变式OKKN3.确定作业数量的成本核算变式4.内部作业估价的成本核算变式5.定义订单交货的货物接收评估6.定义利润分析码OKG17.定…

要怎么在计算机里清除桌面内存,电脑内存不足怎么办?怎么清理电脑内存?

当电脑内存不足,内存占用高,磁盘空间不够时,我们该如何对电脑进行清理呢?今天我们就一起来看看清理电脑内存的方法!一、结束进程中占用内存高的软件1.使用电脑组合键【CtrlShiftEsc】调出任务管理器,在【进…

axios传数组到后台_我是如何让公司后台管理系统焕然一新的

作者:yeyan1996https://juejin.im/post/5c76843af265da2ddd4a6dd0写在前面马上到了金三银四的时间,很多公司开启了今年第一轮招聘的热潮,虽说今年是互联网的寒冬,但是只要对技术始终抱有热情以及有过硬的实力,即使是寒…

学计算机买电脑显卡1605ti够吗,铭瑄GTX1660Ti显卡值得买吗 铭瑄GTX1660Ti终结者显卡评测...

铭瑄GTX1660Ti显卡怎么样?值得买吗?下面小编带来铭瑄GTX1660Ti终结者显卡评测,希望对大家有所帮助。铭瑄GTX1660Ti终结者显卡评测:2019年1月7日,英伟达发布了价格更加实惠的甜品级RTX显卡RTX2060,玩家们对于…

windows无法新建计算机对象,教您activex部件不能创建对象怎么解决

我们有时候在运行ASP程序的时候,会出现提示ActiveX部件不能创建对象,出现这个问题的原因,有可能是服务器系统重装了。那么当我们遇到电脑出现ActiveX部件不能创建对象怎么办?下面,小编给大家准备了activex部件不能创建…

全国计算机三级数据库考试题型,2015年全国计算机三级考试《数据库》测试题及答案...

2015年全国计算机三级考试《数据库》测试题及答案1.假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。要查找选修 &qu…

七七计算机论文网,qepipnu

标签:长句英语基本单位毕业设计毕业论文杂谈英语毕业论文On the Techniques of Translating English LongSentences如有需要请联系 bstractTranslation is the most important means of communication betweendifferent countries and cultures,in which…

新系统如何测试软件,怎样检测电脑能否升级到最新的Windows11系统?官方检测工具帮你一招搞定!...

日前,微软正式发布了Windows11系统,新的Windows11操作系统不仅采用了全新的居中设计的开始键以及任务栏,同时还取消了Windows8引入的实时磁贴设计,取而代之的是最近文档、应用程序以及单独的搜索界面。再加上Windows11带来的全新的…

服务器个别目录下不能新建文件夹,域服务器不能创建sysvol和netlogon共享文件夹...

请教个问题。我这里有两台win2003sp2的DC,ip:172.16.1.2(PDC)和172.16.1.3(BDCexchange2003sp2);我发现我们的域服务器有问题,之前目录复制一直不成功,172.16.1.2(主域)的目录数据不能复制到172.16.1.3(bdc)&#xff0…

长安渝北工厂机器人_长安UNI-T智能工厂:机器人、激光焊, 一分钟一台车

生产线上没有人山人海、焊花四溅,误差被控制在0.2毫米、机器人边作业边实时检查……生产UNI-T的长安汽车重庆两江工厂今天(4月21日)下午在线展示其制造智能化、工厂数字化、工人年轻化。冲压车间工作人员介绍,UNI-T车身材质与宝马、奔驰一样,…

matlab 计算汉明距_matlab实现滑动平均滤波

什么是滑动均值滤波滑动平均滤波就是把连续取得的N个采样值看成一个队列,队列的长度固定为N,每次采样得到一个新数据放到队尾,并丢掉原来队首的一次数据,把队列中的N个数据进行平均运算,就可以获得新的滤波结果。具体的…

个人家用nas_NAS不会用?NAS真的很难操作吗?可能是你没选对!

在这个大数据时代,越来越多的小伙伴们发现,无论手机容量如何扩充升级,还是无法满足越来越多资料的存储和备份。于是不少人有了想搭建NAS私有云的想法,配备了一台超大容量的NAS私有云,不仅可以即时备份电脑以及手机等设…

我的世界服务器怎么修改合成表,《我的世界》1.8原版自定义合成表教程 怎么自定义合成表...

《我的世界》1.8原版自定义合成方法,很多玩家还不了解,今天给大家带来玩家“真名”分享的《我的世界》1.8原版自定义合成表教程,一起来看看吧。版本要求1.8优点:自定义合成表数量可以很大合成表可以很复杂没有名字、NBT不会合成自…