跨平台应用开发进阶(五十一):HTML5(富文本内容)连续数字、字母不自动换行问题分析及解决

news/2024/11/15 1:50:15/

文章目录

    • 一、前言
    • 二、问题分析
    • 三、解决方法
      • 3.1 对 input 标签设置
      • 3.2 对 input 标签内的 p 标签设置
    • 四、延伸阅读 顶部状态栏穿透问题
    • 五、拓展阅读

一、前言

项目开发过程中,涉及在Web端维护富文本内容,通过APP端查看的相关的功能,功能描述大概如下:通过富文本编辑器添加的内容,通过view展示出来(这里用到了 Vue 的 v-html 指令)。

<view  v-html="article"></view>

编辑了一个包含文章链接的长文本,等到APP端展示的时候发现,内容超出了(没有自动换行),且出现了左右滚动条,另外发现遇到文字就可以换行,如下图所示:

在这里插入图片描述

二、问题分析

在查资料的过程中发现,不只是字母不会自动换行,还有长数字也不会自动换行,造成这种现象的原因是<p>标签的问题。

三、解决方法

接下来介绍一下上面问题的两种解决方法:

3.1 对 input 标签设置

.input_content{WORD-WRAP:break-word;TABLE-LAYOUT:fixed;word-break:break-all;
}

3.2 对 input 标签内的 p 标签设置

.input_content >>> p {word-wrap: break-word;
}

考虑到内容展示使用的v-html指令,其值为字符串,故需要对该字符串进行正则替换。

//图片大小自适应
let contextTmp = context.replace(/\<img/gi, '<img style="max-width:100%;height:auto" ');
// 长链接自适应
this.article = contextTmp.replace(/\<p style=\"/gi, '<p style="word-wrap: break-word; ');

注⚠️:对于图片大小自适应的解决方式与长链接类似,对于不同尺寸的图片需要在APP端展示时,通过正则替换设置图片大小来满足图片大小自适应。

四、延伸阅读 顶部状态栏穿透问题

通过设置占位符解决。

<view class="status_bar"></view>
.status_bar {position: fixed;height: calc(var(--status-bar-height) * 1.2);width: 100%;background-color: rgba(255, 255, 255, 1);z-index: 999;
}

五、拓展阅读

  • 《Cross-platform APP》

http://www.ppmy.cn/news/7052.html

相关文章

【OpenCV-Python】教程:8-1 图像去噪 Image Denoising

OpenCV Python 图像去噪 Image Denoising 【目标】 非局部均值去噪算法去除图像中的噪声。 cv2.fastNlMeansDenoising() , cv2.fastNlMeansDenoisingColored() etc. 【理论】 在前面的章节中&#xff0c;我们已经看到了许多图像平滑技术&#xff0c;如高斯模糊&#xff0c…

【HTML】2023跨年烟花代码

*2022年圣诞节到来啦&#xff0c;很高兴这次我们又能一起度过~ &#x1f4c2;文章目录前言效果展示一、夜景烟花绽放动画效果HTML源码2023年(新年)春节倒计时代码源码2023除夕倒计时效果展示源码宇宙星空-效果展示1.源码2.思路3.步骤(js部分)更多干货&#x1f680;前言 时光荏苒…

Ubuntu系统中文乱码的解决办法

Ubuntu系统中文乱码的解决办法 文章目录Ubuntu系统中文乱码的解决办法1. 安装中文语言2. 安装语言设置的命令locale3. 安装中文的相关字体4. 修改语言的环境变量4.1 环境变量一4.2 设置二5. 正式配置语言后记最近在docker上pull下面的Ubuntu镜像运行后发现中文出现了乱码情况&a…

浅谈图数据库1:什么是图?

目录 一、图是什么&#xff1f; 二、“图”源自哪里&#xff1f; 三、加权图是什么&#xff1f; 四、有向图是什么&#xff1f; 五、图能给我们带来什么&#xff1f; 一、图是什么&#xff1f; 说到“图” 大部分人首先想到的是这样滴——图像 ​或者是 饼状图 折线图…

Java8新特性Stream流

一、Stream的介绍 ​ Stream不是集合元素&#xff0c;也不是数据结构&#xff0c;并不保存数据&#xff0c;它是有关算法和计算的&#xff0c;使用起来更像一个高级的迭代器&#xff0c;我们只需要给出需要对其流中的元素执行什么操作&#xff0c;Stream就会隐式的在内部进行遍…

服务调用方式

1.1.RPC和HTTP 无论是微服务还是SOA&#xff0c;都面临着服务间的远程调用。那么服务间的远程调用方式有哪些呢&#xff1f; 常见的远程调用方式有以下2种&#xff1a; RPC&#xff1a;Remote Produce Call远程过程调用&#xff0c;类似的还有RMI。自定义数据格式&#xff0c…

事务日志undo log

事务日志undo log 1 Undo日志的作用 作用1&#xff1a;回滚数据 逻辑上恢复&#xff0c;之前插入了一条数据&#xff0c;已经开辟了物理空间&#xff0c;回滚只是将该数据删除&#xff0c;物理空间还存在。 作用2&#xff1a;MVCC 2 Undo存储结构 mysql> show variables …

【C语言进阶】指针的进阶

在初级阶段的《指针》章节已经接触过了&#xff0c;我们知道了指针的概念&#xff1a; 1. 指针就是个变量&#xff0c;用来存放地址&#xff0c;地址唯一标识一块内存空间。 2. 指针的大小是固定的4/8个字节&#xff08;32位平台/64位平台&#xff09;。 3. 指针是有类型&#…