【问题标题】:Changing position of an image depending on screen size根据屏幕尺寸更改图像位置
【发布时间】:2017-11-17 10:00:34
【问题描述】:

我参与了一个建立响应式网站的项目,遇到了一个问题,在这里或其他任何地方都找不到答案:

查看带有文本和图像的特定框时,我希望在使用台式机/平板电脑和较小的屏幕(即智能手机)时,图像的位置会有所不同。在台式机/平板电脑上,我希望图像具有固定大小并浮动在文本旁边但在标题下方,在较小的屏幕上,我希望图像位于标题和文本上方,并以 100% 大小填充框.

其实用一些图片来展示可能会更容易:

在台式机/平板电脑上的外观

我希望它在小屏幕上的样子

使用我完成的代码在较小的屏幕上出现(不想要的)结果

如您所见,我还没有弄清楚如何做到这一点,结果标题和文本被图像覆盖,并且它不尊重框的边界。这是我尝试过的代码:

台式机/平板电脑的 CSS:

div {position: relative;}

div img {
width: 200px;
float: right;
margin-left: 40px;
margin-bottom: 20px;}

小屏幕的 CSS:

div {position: relative;}

div img {
position: absolute;
top: 20px;
width: 100%;
margin-bottom: 20px;}

还有 div 的 HTML:

<div>
<h2>Sed ut perspiciatis unde omnis iste</h2>
<img src="img/blossom.jpg">
Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium.
</div>

一些注意事项:颜色、字体等是在全局 CSS 中声明的,但对这个问题并不重要。台式机/平板电脑版本运行良好,当屏幕变小并且智能手机版本加载图像时无法正常工作。没有图像,小版本可以正常工作。

但这里最大的问题是:当加载小屏幕版本时,如何使用 CSS 将图像移动到所有文本(包括标题)之上。图像必须尊重框的宽度和要进入的文本。

相信我,到目前为止,我已经尝试了很多不同的方法,但都没有成功,我被困住了!也许解决方案非常明显和简单,但我无法弄清楚。当然希望有人知道该怎么做...?

【问题讨论】:

  • 你检查过媒体查询吗?
  • 我有,并且我正在使用媒体查询来根据屏幕大小使用不同的样式表...
  • 那么问题出在哪里?只需将所需的样式放入正确的媒体查询中即可。
  • 如您所见,我需要将图像放在标题和文本之间,以便它向右浮动但在标题下方。我的问题是我不能让图像移动到顶部,即在标题上方。也许你知道一些我不知道的关于声明图像的事情,在这种情况下,请给我一个提示,以便将图像放置在文本旁边,但在大屏幕上的标题下方和小屏幕上的所有内容之上......

标签: html css responsive-design


【解决方案1】:

如果你能给出像素的宽度,它就可以了。如果您想使用它来使其具有响应性,您需要使用媒体查询,例如这里。

@media (min-height: 680px), screen and (orientation: portrait) {
div {position: relative;}

div img {
position: absolute;
top: 20px;
width: 200px;
margin-bottom: 20px;}
}

因为现在您使用的是图像的完整宽度,而不是屏幕。

【讨论】:

  • 谢谢,但我已经试过了!图像仍然不尊重文字,即标题和文字被图像覆盖而不是放在图像下方。出于设计目的,我希望图像宽度覆盖框边距内的框。
  • 你正在使用媒体查询?
  • 是的,大屏幕和小屏幕的 CSS 不同。问题是在 HTML 中,我需要将 IMG 标签放在标题和文本之间,以便它在文本旁边浮动,但在标题下方。我想要的是在小屏幕上将它移动到所有文本之上,包括标题。
猜你喜欢
  • 2011-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-28
  • 2012-01-27
相关资源
最近更新 更多