【问题标题】:Float Image, wrap text, minimum wrap size浮动图像,换行,最小换行大小
【发布时间】:2017-02-19 19:28:11
【问题描述】:

我有一个 320 像素宽度的图片。图像向左浮动,文本环绕。很容易。这是我的 HTML:

<div>
    <img src="https://www.wikipedia.org/portal/wikipedia.org/assets/img/Wikipedia-logo-v2.png" style="width:320px; float:left; margin:0 10px 4px 0;">
    a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg a bb ccc ddd eeee fffff gggggg  
</div>

问题:

当窗口大小为 321-400 像素时,它看起来很奇怪。小字有点浮在上面,贴在上面,但看起来很糟糕。我想要的是定义文本的最小宽度(仅在右侧),例如 100 像素。所以 100px 宽会在右侧环绕,然后在浮动图像下方 420 像素宽。

所以,如果屏幕是 320 像素,则图像在上,文字在下。

如果屏幕为 370 像素,则图像在上,文字在下。

如果屏幕为 420 像素以上,图像向左浮动,文字环绕,向右和向下。

我希望这已经足够清楚了。我一直在尝试浮动和弹性框的各种组合,但没有达到预期的效果。

我不是在寻找复杂的 javascript 屏幕分辨率大小调整解决方案。我可以写下来并根据屏幕大小更改代码......但这不是我想要解决这个问题的方式。我只是在寻找一个简单的 CSS 解决方案。

谢谢

????

编辑:

这是fiddle

调整窗口大小,右边只显示a和bb。

【问题讨论】:

  • 你能提供一个codepen的例子吗? codepen.io
  • 我加了一个小提琴。

标签: html css image flexbox


【解决方案1】:

将 CSS 用于具有媒体样式的屏幕分辨率。

@media screen and (max-width: 420px) {
img {
   float:none !important;
}}

如果屏幕尺寸低于 420,块中的 css 将适用。

【讨论】:

  • 这是一个很好的答案。这是我想要的 95%。但是,有一个小问题。当屏幕缩小到 400px 时,第一行文字仍然漂浮在图片的右侧。它应该在图片下方。
【解决方案2】:

https://jsfiddle.net/manukarki/12syovj0/2/

使用媒体查询。

img{
  width:320px; 
  float:left; 
  margin:0 10px 4px 0;
}
@media only screen and (max-width:370px){
  img{
    float: none;
  }
}

你的问题不清楚。你说你只想要图像 470。他们之间的资源呢?

而且 370 不会给你想要的结果。 420px 是要走的路。

@media only screen and (max-width: 420px){

【讨论】:

  • 正如我在问题中所说,如果屏幕为 370 像素,则图像在顶部,文本在下方。我正在寻找 320px、321-419px 和 420px+ 的干净布局。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-14
  • 1970-01-01
  • 2011-09-12
  • 2015-04-26
  • 2017-05-27
相关资源
最近更新 更多