使用CSS自动调整浏览器大小的图像

sig*_*gug 60 css resize responsive-design

当我调整浏览器窗口大小时,我希望所有(或只是一些)图像自动调整大小.我发现了以下代码 - 但它没有做任何事情.

HTML

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <link rel="stylesheet" href="style.css" type="text/css" media="screen" />
    </head>
    <body>
        <div id="icons">
            <div id="contact">
                <img src="img/icon_contact.png" alt="" />
            </div>
            <img src="img/icon_links.png" alt="" />
        </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

CSS

body {
    font-family: Arial;
    font-size: 11px;
    color: #ffffff;
    background: #202020 url(../../img/body_back.jpg) no-repeat top center fixed;
    background-size: cover;
}

#icons {
    position: absolute;
    bottom: 22%;
    right: 8%;
    width: 400px;
    height: 80px;
    z-index: 8;
    transform: rotate(-57deg); 
    -ms-transform: rotate(-57deg); 
    -webkit-transform: rotate(-57deg); 
    -moz-transform: rotate(-57deg);
}

#contact { 
    float: left; 
    cursor: pointer; 
}


img { 
    max-width: 100%; 
    height: auto; 
}
Run Code Online (Sandbox Code Playgroud)

我怎么能基本上有一个全屏设计(带background-size: cover)并且div在调整浏览器窗口大小时,元素处于完全相同的位置(%明智),它们的大小也会调整大小(就像cover为后台做的那样)?

Cur*_*ewe 140

要使图像灵活,只需添加max-width:100%height:auto.图像max-width:100%height:auto工作在IE7,但不是在IE8(是的,另一个奇怪的IE错误).要解决此问题,您需要width:auto\9为IE8 添加.

来源:http: //webdesignerwall.com/tutorials/responsive-design-with-css3-media-queries

例如 :

img {
    max-width: 100%;
    height: auto;
    width: auto\9; /* ie8 */
}
Run Code Online (Sandbox Code Playgroud)

然后使用img标签添加的任何图像都是灵活的

JSFiddle示例在这里.无需JavaScript.适用于最新版本的Chrome,Firefox和IE(我已经测试过).

  • 代码对我不起作用,所以我只将max-width更改为width.max-width:100%由宽度替换:100%,这为我解决了.在FF,Safari和Chrome以及Galaxy S4 FF和默认浏览器上测试过. (2认同)

Mat*_*lin 5

图像容器

仅当图像所在容器的大小发生变化时,使用上述技巧缩放图像才有效。

容器#icons使用px宽度和高度值。px当浏览器调整大小时,值不会缩放。

解决方案

使用以下方法之一:

  1. 使用值定义宽度和/或高度%
  2. 使用一系列@media查询根据当前屏幕尺寸将宽度和高度设置为不同的值。