我目前正在为一家公司制作一个手机登陆页面。这是一个真正的基本布局,但下面的标题有一个产品的图像,将始终是100% 的宽度(设计表明,它总是从边缘到边缘)。根据屏幕的宽度,图像的高度会有明显的相应调整。我最初使用的是一个 img (CSS 宽度为100%) ,效果很好,但我意识到我想使用媒体查询来服务基于不同分辨率的不同图像——比如同一张图片的小、中、大版本。我知道你不能用 CSS 改变 img src,所以我认为我应该使用 CSS 背景的图像,而不是在 HTML 中的 img 标记。
我似乎不能让这个工作正常与背景图像的 div 需要一个宽度和一个高度来显示背景。我当然可以使用‘ width: 100%’,但是我该如何设置高度呢?我可以把一个随机的固定高度像150像素,然后我可以看到图像的顶部150像素,但这不是解决方案,因为没有一个固定的高度。我有一个发挥,发现一旦有一个高度(测试与150像素) ,我可以使用“背景大小: 100%”,以适应图像在 div 正确。我可以使用最近的 CSS3为这个项目,因为它的唯一目标是移动。
我在下面添加了一个粗略的示例。请原谅行内样式,但我想给出一个基本的例子,试图使我的问题更清楚一点。
<div id="image-container">
<div id="image" style="background: url(image.jpg) no-repeat; width: 100%; height: 150px; background-size: 100%;"></div>
</div>
我可能必须给容器 div 一个百分比的高度基于整个页面还是我看这完全错误?
另外,你认为 CSS 背景是最好的方法吗?也许有一种技术可以根据设备/屏幕宽度提供不同的图像标签。总的想法是,登陆页模板将使用多次与不同的产品图像,所以我需要确保我开发这个最好的方式可能。
我很抱歉这有点冗长但我在这个项目和下一个项目之间来回奔波所以我想把这件小事做完。