返回顶部
首页 > 资讯 > 精选 >CSS中如何模拟float实现center文字左右环绕图片
  • 942
分享到

CSS中如何模拟float实现center文字左右环绕图片

2023-06-08 07:06:38 942人浏览 八月长安
摘要

这篇文章将为大家详细讲解有关CSS中如何模拟float实现center文字左右环绕图片,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。什么是文字左右环绕图片?就是下图的效果:效果的CSS代码可以点击这里 查

这篇文章将为大家详细讲解有关CSS中如何模拟float实现center文字左右环绕图片,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

什么是文字左右环绕图片?就是下图的效果:

CSS中如何模拟float实现center文字左右环绕图片

效果的CSS代码可以点击这里 查看

在CSS中,并没有float: center这种设置,但是我们可以通过一些小技巧来模拟出类似的效果。

经常会有小伙伴问:有float: left和right,为什么没有float: center?我的答案是:

text-align: center已经可以实现内联元素的居中效果

在一行中使文字环绕显示在图片的两侧,这种效果浏览器处理起来是非常困难的。除非将文字显示为两列,但这是另一个问题

当涉及到文本时,float实际上应该被称为环绕,float:left的意思是“将这个元素放置在容器的左侧,并将其右侧的所有内容都环绕其显示”,在这种情况下,我们讨论的float:center实际上是两侧环绕,这会带来一系列的问题,比如如何确定元素在容器中的“深度”?

为了模拟实现float: center的效果,我们通过创建两个div将文字划分为两列,其中居中的图片写在第一个div中:

<div id="container">  <div id="leftcol">    <p><img src=".../01.jpg">京都位于本州岛的中心附近,在王位移到江户...  </div>  <div id="rightcol">    <p>因此,京都许多保存下来的地方都是联合国教科文组织世界遗产,包括...  </div></div>

首先,我们设置两个div即.leftcol和.rightcol元素为display: table-cell,同时将容器.container元素设置为display: table:

div#container {   display: table;   width: 80%;  max-width: 900px;    margin: 0 auto;  line-height: 1.5;}div#leftcol, div#rightcol {   display: table-cell;   padding: 1em;}div#container img {  width: 55%;    height: auto;}

这样,文字就显示成为表格的两列了:

CSS中如何模拟float实现center文字左右环绕图片

图片会按照其该有的样式显示在第一列的顶部左侧,并且底部与文字的第一行的基线对齐。

接下来,如果给图片设置一个float:right,它就会在第一个div中右侧浮动,并且文字会环绕在图片的左侧显示:

CSS中如何模拟float实现center文字左右环绕图片

到这里,我们实现了一个最传统的布局:两列文字,其中一列包含一张浮动的图片。

下面,就要使用一些技巧来实现左右环绕的文字效果了。

第一步,通过设置margin-right属性负值,将图片右移一定的距离:

div#container img {  float: right;  width: 55%;  height: auto;  margin-right: -20%;    margin-left: 20px;  margin-bottom: 20px;}

margin-left和margin-bottom属性设置图片与左侧和下方的文字都间距20px。

这个时候图片会和第二列的文字显示重合了:

CSS中如何模拟float实现center文字左右环绕图片

第二步,通过:before伪元素在第二个div中生成一个元素,它不包含任何内容,仅仅是为了浮动后让文字环绕它。

div#rightcol:before {   content: " ";   float: left;   width: 25%;  padding-top: 102%;}

这个伪元素被设置为左浮动,并且它的宽度与图片右移的距离加起来刚好是图片的宽度。

padding-top属性设置的稍微大一点,这样文字与图片能够空出一些距离。

如果给这个没有任何内容的伪元素添加一个红色的边框,我们就可以看到它的位置:

CSS中如何模拟float实现center文字左右环绕图片

这个空伪元素的实际作用就是将与图片重合的文字隔开,并使它们环绕,这样就模拟出了右侧文字环绕图片的效果,而实际上文字环绕的是伪元素。

这种环绕方式有一个限制,就是图片必须位于div的顶部,我们不能在垂直方向上任意放置图片。

最后,再设置一些美化的样式和自适应的代码,最终的效果就实现了:

CSS中如何模拟float实现center文字左右环绕图片 

关于“CSS中如何模拟float实现center文字左右环绕图片”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: CSS中如何模拟float实现center文字左右环绕图片

本文链接: https://lsjlt.com/news/252385.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • CSS中如何模拟float实现center文字左右环绕图片
    这篇文章将为大家详细讲解有关CSS中如何模拟float实现center文字左右环绕图片,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。什么是文字左右环绕图片?就是下图的效果:效果的CSS代码可以点击这里 查...
    99+
    2023-06-08
  • 怎么用css的float实现文字环绕图片效果
    本篇内容介绍了“怎么用css的float实现文字环绕图片效果”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!...
    99+
    2024-04-02
  • CSS中怎么实现文字环绕图片效果
    CSS中怎么实现文字环绕图片效果,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。CSS实现文字环绕图片效果文字环绕图片,在Word里只要cl...
    99+
    2024-04-02
  • css如何实现文字环绕效果
    这篇文章主要讲解了“css如何实现文字环绕效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css如何实现文字环绕效果”吧! 方...
    99+
    2024-04-02
  • HTML+CSS如何实现文字环绕的效果
    ...
    99+
    2024-04-02
  • 如何使用CSS实现左图右文混排布局
    小编给大家分享一下如何使用CSS实现左图右文混排布局,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!代码如下:<!DOCTYPE html PUBLIC "-//W3C//D...
    99+
    2024-04-02
  • css如何实现文字从右到左的滚动效果
    这篇文章主要介绍了css如何实现文字从右到左的滚动效果的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇css如何实现文字从右到左的滚动效果文章都会有所收获,下面我们一起来看看吧。...
    99+
    2024-04-02
  • css如何实现从右往左读的文字正写竖排效果
    小编给大家分享一下css如何实现从右往左读的文字正写竖排效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!从右往左读的文字正写竖排效果.text {la...
    99+
    2023-06-27
  • 如何使用CSS的table-cell属性实现左图右文的排版
    这篇文章主要介绍“如何使用CSS的table-cell属性实现左图右文的排版”,在日常操作中,相信很多人在如何使用CSS的table-cell属性实现左图右文的排版问题上存在疑惑,小编查阅了各式资料,整理出...
    99+
    2024-04-02
  • css如何实现文字在背景图片之上
    这篇文章给大家分享的是有关css如何实现文字在背景图片之上的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。效果:<div class="imgs">  ...
    99+
    2023-06-08
  • CSS如何实现让文字半透明显示在图片上
    这篇文章将为大家详细讲解有关CSS如何实现让文字半透明显示在图片上,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。代码如下:<!DOCTYPE html PUBLIC...
    99+
    2024-04-02
  • CSS如何实现背景图片透明而文字不透明效果
    这篇文章给大家分享的是有关CSS如何实现背景图片透明而文字不透明效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。摘要: 方法一(毛玻璃效果):背景图 + 伪类 + flite:blur(3px)方法二(半透明效...
    99+
    2023-06-08
  • 如何使用CSS实现同一行的图片和文字垂直居中对齐
    小编给大家分享一下如何使用CSS实现同一行的图片和文字垂直居中对齐,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!代码如下:<...
    99+
    2024-04-02
  • C# .NET如何实现扫描识别图片中的文字
    C# .NET如何实现扫描识别图片中的文字,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。环境配置本文以C#及VB.NET代码为例,介绍如何扫描并读取图片中的文字。...
    99+
    2023-06-22
  • 如何实现同一行的图片和文字居中对齐
    这篇文章主要介绍“如何实现同一行的图片和文字居中对齐”,在日常操作中,相信很多人在如何实现同一行的图片和文字居中对齐问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何实现同一...
    99+
    2024-04-02
  • 如何在Android中实现一个在图片中添加文字功能
    这篇文章给大家介绍如何在Android中实现一个在图片中添加文字功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Android自定义实现图片加文字功能分四步来写: 1,组合控件的xml; 2,自定义组合控件的属性; ...
    99+
    2023-05-31
    android roi %d
  • Android开发中如何实现一个图片中叠加文字功能
    本篇文章为大家展示了Android开发中如何实现一个图片中叠加文字功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。效果图:功能:用户自由输入内容,可手动换行,并且行满也会自动换行。2.可拖动改变图...
    99+
    2023-05-31
    android roi
  • golang中如何实现给gif、png、jpeg图片添加文字水印
    小编给大家分享一下golang中如何实现给gif、png、jpeg图片添加文字水印,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!什么是golanggolang 是Google开发的一种静态强类型、编译型、并发型,并具有垃圾...
    99+
    2023-06-14
  • 如何在java项目中利用ocr实现一个图片文字识别功能
    这期内容当中小编将会给大家带来有关如何在java项目中利用ocr实现一个图片文字识别功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。最近在开发的时候需要识别图片中的一些文字,网上找了相关资料之后,发现g...
    99+
    2023-05-31
    java ocr ava
  • web开发中如何完美实现文字置于图片之上且背景半透明
    这篇文章给大家介绍web开发中如何完美实现文字置于图片之上且背景半透明,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 之前发过一篇关于 将图片的说明文字显...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作