引导网站横幅变形窗口调整大小
Bootstrap website banner distortion on window resize
使用引导程序网站创建者jetstrap,我创建了一个简单的网站,其横幅图像可以拉伸窗口的大小。问题是拉伸后的图像上有一个徽标,在调整窗口大小时,图像会失真和拉伸。
我发现这个线程很好地描述了这个问题,我试图用背景大小更改css:contain,但似乎不起作用。
欢迎提出任何建议。
谢谢!
示例如下:http://www.filedropper.com/jetstrapexample2
Alexander De Sousa非常喜欢它,但下面是您的示例的一些特定代码:
在您的文件中,您有一个<img>
标记,您绝对要将其与width:100%
一起定位,以拉伸屏幕的大小。这是代码位:
<img class="jetstrap-selected jetstrap-highlighted" id="backimage" src="https://s3.amazonaws.com/media.jetstrap.com/Nd7Z0DbqQ4eNN2cV05DI_background.png">
它位于一个名为"carousel"的div容器中。
<div id="myCarousel" class="carousel slide" data-pause="remove">...</div>
控制这个元素的CSS位于上面下载的HTML页面的底部。影响这个元素的相关CSS是:
.carousel img {
position: absolute;
top: 0;
left: 0;
min-width: 100%;
height: 500px; /* THIS IS THE PROBLEM */
background-size: contain;
}
正如您在上面的CSS中看到的,它设置了一个非常特定的高度值。这会降低背景图像的纵横比。也就是说,当使用min-width:100%;
时,实际宽度(以像素为单位(随屏幕大小而变化。
如果屏幕是1000像素宽,那么您的图像就是1000像素宽。如果你将其缩小到875px,那么你的图像就是875px。
此时,你的身高始终保持在500像素。所以你的背景图片,使用了一个相当大的正方形"徽标"图像的图案背景,实际上被CSS请求扭曲了。
因为在某一时刻它是1000px / 500px
,而在另一时刻它又是875px / 500px
。
当然,也有媒体的质疑。在不同的屏幕尺寸下,高度值设置为特定值。
我认为你想要的是一个带有徽标的平铺背景图像,可以根据屏幕大小调整其大小/位置。
你会想做一些更像这样的事情:
<div id="#background">
<img src="myLogo.png" alt="" />
</div>
此容器将用作您的背景。我会把这个放在你的<div id="myCarousel">...</div>
元素结束之前。
从那里,你定位容器并用重复的背景填充它(或者你可以添加另一个响应图像来缩放它(:
#background{
position:absolute;
top:0;
left:0;
width:100%;
height:500px; /* You can set a specific height here, so it covers your content */
background: url(myBackground.png) repeat 50% 50%; /* if you don't want your background to distort, use a tiled background */
}
使用"徽标",您可以根据需要将其绝对定位在背景容器中。
#background img{
position:absolute;
top:10em;
right:20%;
width:200px; /* Or use a % to scale the logo fluidly */
}
通过媒体查询,您可以根据屏幕大小的需要调整徽标的位置。
这种技术可以保持背景图像的一致性,因此不会收缩/扩展渐变。相反,背景将随着屏幕大小的变化而裁剪。如果你喜欢缩放背景,你可以简单地在背景容器中添加另一个img,并用CSS类或ID适当地标记它们,然后应用样式。
<div id="#background">
<img id="myBgLogo" src="myLogo.png" alt="" />
<img id="myBgFill" src="myBackground.png" alt="" />
</div>
然后,只需专门针对图像并将其分层,使背景具有100%的宽度和高度。
我希望这能有所帮助!
.background img {
min-width: 100%;
max-width: 100%;
height: auto;
}
为了保持图像的比例,你可以设置任何你喜欢的宽度,但要确保你已经将高度指定为自动。
值得分享一个链接到您正在工作的网站
问题是定义图像的特定高度,该高度大于图像的纵横比。您需要删除高度定义,或者将图像更改为绝对定位的div的背景,使其扩展到视口之外。
- JQuery窗口调整大小;不要开火
- 如何获得一个进度元素,它被设置为在窗口调整大小时调整大小
- 了解窗口调整大小事件与 scope.$apply 与函数$watch
- 如何在窗口调整大小时调整iframe的大小
- highcharts饼图窗口调整大小问题
- 在窗口调整大小时调整tinymce实例的大小
- 如何使用浏览器窗口调整网页大小
- 同位素包装中项目之间的发际线间隙在窗口调整大小时
- 在窗口调整大小时删除属性
- 如何在窗口调整大小时禁用和启用滚动魔术
- JQuery 在窗口调整大小时动画的延迟很大
- 媒体查询和 JavaScript 窗口调整不同的宽度
- 在浏览器窗口调整大小时切换滑过不可见
- 窗口调整大小 以精确的大小执行操作
- 如何通过窗口调整图像大小.调整大小功能
- 窗口.调整大小到不起作用
- jQuery 砌体 - 在窗口调整大小事件中限制为最大宽度
- 使用窗口调整表格和文本的大小
- 测试窗口.调整带有茉莉花的夹具的大小
- 侦听窗口调整大小事件以关闭响应式 (Sidr) 菜单