当前位置: 首页 > 面试题库 >

将文字浮动到右下角

蒯翰墨
2023-03-14
问题内容

我有一个带有段落和标题的文本容器。我想在页面的底部将图像浮动到页面的右侧,而文字环绕图像。图像的底部应与最后一段的底部齐平。

页面宽度是可变的(响应),但是图像尺寸是固定的。是否可以在HTML和CSS中完成此操作(CSS3很好)?如果没有,可以用最少的Javascript完成吗?

这是我要完成的示意性示例:

HTML当前看起来像这样,但是可以根据需要进行更改。我并不特别在意图像在文档中的位置。使用背景图像也可以。

<section>
  <h2>...</h2>
  <p>... ...</p>
  <p>... ...</p>
  ...
  <img src="...">
</section>

当我float: right在图像上进行设置时,它向右浮动,但是我无法使其与页面底部对齐。有什么建议吗?

编辑:我最接近的是这个 ……:-)


问题答案:

与创建一个间隔元件float: rightheight等于高度的内容的减去的图像的高度。然后在图像上使用float: rightclear: right:

<div class="spacer"></div>
<img class="bottomRight" src="" />
<div class="content"></div>



.spacer {
    height: calc(100% - 200px);
    width: 0px;
    float: right;
}
.bottomRight {
    height: 200px;
    float: right;
    clear: right;
}

我的演示在容器元素中使用了固定尺寸。由于这很少是现实情况,因此使用JavaScript调整间隔大小可能更有意义。调用此函数,在
文档准备就绪以及window.onresize事件发生时传递对spacer元素的引用。

function sizeSpacer(spacer) {
    spacer.style.height = 0;
    var container = spacer.parentNode;
    var img = spacer.nextElementSibling || spacer.nextSibling;
    var lastContentNode = container.children[container.children.length - 1];
    var h = Math.max(0, container.clientHeight - img.clientHeight);
    spacer.style.height = h + "px";
    while (h > 0 && img.getBoundingClientRect().bottom > lastContentNode.getBoundingClientRect().bottom) {
        spacer.style.height = --h + "px";
    }
}

此函数有效(请参见演示),并且可以针对jQuery或您选择的库进行重新设计。它并不是要成为插件质量代码,而只是用来说明概念。



 类似资料:
  • 本文向大家介绍基于javascript实现右下角浮动广告效果,包括了基于javascript实现右下角浮动广告效果的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了基于javascript实现右下角浮动广告效果,供大家参考,具体内容如下 效果图: 具体代码: 希望本文所述对大家学习javascript程序设计有所帮助。

  • 问题内容: 如果我有三个向右浮动的元素,那么为什么顺序跟随(请参阅jsfiddle),而元素3实际上是最后一个元素,则元素1是右侧的第一个元素。 现在订购 但是元素在html中按此顺序 为什么? 问题答案: 这种“倒序”是预期的结果。 您可以根据需要在CSS规范中进行深入研究,但是示例将按原样进行渲染。 如果您希望它们以与标记相同的顺序显示,请向右浮动,其子项向左浮动。

  • 问题内容: 是否有更改此文本的CSS代码 到这个 问题答案: 尝试这个 编辑:将此类应用于段落标记,您应该得到想要的结果。

  • 问题内容: 我有一个页面,其中页眉由三个div组成-一个浮动在左侧,一个浮动在右侧,以及一个在它们之间。我希望该中心div居中,但遗憾的是不存在,我不能只是将其浮动到左侧并添加填充,因为它必须根据窗口大小进行更改。 有什么简单的我可以忽略的吗?还是我会怎么做? 更新: 此外,我想找到一种方法将中间div居中于div 之间的空间 中,以防看起来更好。 问题答案: 如果您有两个浮动div,那么您知道边

  • 在上面的例子中,我希望项目1在左侧,项目2和3在右侧的页面使用CSS3 FlexBox。 提前致谢

  • 所以我在一个网站上建立了一个包含搜索栏的navbar,同时还有一个分组按钮。它在桌面视图上运行良好,但当我缩小到移动视图时,站点会产生可折叠菜单,搜索栏会留在左侧,但按钮会浮到右侧。当我用它周围的input-group-btn类移除span时,就没有这个问题了。 图片包括http://bit.ly/1G706RC 编辑:我修复了我自己的问题!我只需将一个类添加到span中