使用js控制文字大小自动适应div不换行,div中文字字号自动调整大小以适应固定宽度

这篇具有很好参考价值的文章主要介绍了使用js控制文字大小自动适应div不换行,div中文字字号自动调整大小以适应固定宽度。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
        <style>
            * {
                padding: 0;
                margin: 0;
            }
            #text-container {
                margin: 30px;
                width: 300px;
                height: 30px;
                border: 1px solid #000;
                overflow: hidden; /* 隐藏溢出的内容 */
            }

            #text-container p {
                font-size: 28px; /* 初始字体大小 */
                white-space: nowrap; /* 禁止文字换行 */
            }
        </style>
    </head>
    <body>
        <div id="text-container">
<p>fadffadffadffadffadffadffadffadffadffadffadffadffadffadffadffadffadffadffadffadffadffadffad	ffa中过</p>
        </div>
    </body>
    <script>
        window.addEventListener("DOMContentLoaded", adjustFontSize);

        function adjustFontSize() {
            const textContainer = document.getElementById("text-container");
            const textElement = textContainer.querySelector("p");

            let fontSize = parseInt(window.getComputedStyle(textElement).fontSize);

            while (textElement.scrollWidth > textContainer.clientWidth && fontSize > 10) {
                fontSize--;
                textElement.style.fontSize = `${fontSize}px`;
            }
            while (textElement.scrollWidth < textContainer.clientWidth - 10 && fontSize < 32) {
                 fontSize += 1
                 numberItem.style.fontSize = `${fontSize}px`
                 console.log(fontSize, '----fontSize')
             }
        }
    </script>
</html>

文章来源地址https://www.toymoban.com/news/detail-701134.html

到了这里,关于使用js控制文字大小自动适应div不换行,div中文字字号自动调整大小以适应固定宽度的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • css中div超出自动换行

      目录 页面样式 html页面代码 scss样式代码  这是布局完成之后的整个页面的布局,可以看到每行显示两个div 在center大盒子中有8个div盒子,我们需要让他均匀的分布在页面 我们先是通过display:flex把所有的div整到一行中,overflow:hidden超出部分隐藏,flex-wrap:wrap超出自动换行

    2024年02月13日
    浏览(27)
  • iframe视频调用自适应页面大小使用css控制(同样适合其他元素)

    为了使iframe中的视频自适应页面大小,您可以使用CSS控制其宽度和高度。方便在电脑端和手机端等自适应显示大小,在实际项目还是比较常见呢,用CSS 不用再写JS来控制,这个是蛮不错呢。 首先,在HTML文件中,将iframe嵌入到一个包装元素(例如 )中,并为该包装元素分配一

    2024年02月11日
    浏览(29)
  • 【vue】vue 里面使用 v-html 插入的文本带有换行符‘\n‘不换行

    最近开发vue2 项目 ,接口返回的是类似于这样的数据: 我是第一行的哦n我是第二行的哦 我是直接这样渲染的, 但结果却是不如意,变成了下面这样 1.在使用 v-html 时添加样式,white-space:pre-wrap ,让浏览器保留空白和换行符。 2、用 pre 标签包裹 被包围在 pre 标签中的文本通常

    2024年02月14日
    浏览(26)
  • EasyExcel自适应列宽、行高、自动换行

    一、自定义模版 二、工具类  三、测试示例  四、导出结果 参考 https://blog.csdn.net/liuao107329/article/details/126306205

    2024年02月12日
    浏览(38)
  • 【Css/小程序】如何实现div或view中的文字左右居中和垂直居中?(已解决:多行和单行自适应)

    1、多行居中效果 2、单行照样居中效果 

    2024年02月04日
    浏览(35)
  • element ui设置table自适应表格宽,不自动换行

    在我们平常开发使用element ui中的table时,会出现数据过长自动换行的结果, 如果把宽给死的情况下也不太适合,接下来提供二种方式去动态计算每个盒子的宽度。 第一种方式 表格加** table-layout=\\\'auto’ **属性 表格加tableAuto类名 el-table-column标签不设置宽度 但这种方式纯在二个

    2024年02月11日
    浏览(28)
  • 微信小程序canvas画布绘制文字自动换行

    关键步骤介绍: text为需要绘制的文本,通过换行符将text分割为words数组。 basic_height为第一行文本的高度。 get_canvas_row函数根据行宽限制将输入文本转化为不同的行,实现见下文。 text_size为设置的文本高度,h+text_size*j为每行待绘制文本的高度,绘制完成后更新h。 get_canvas_

    2024年01月17日
    浏览(41)
  • 解决前端“\n”不换行问题

    在日常开发过程中,换行显示是一种很常见的应用需求,但是偶然发现,有时候使用 \\\"n\\\"并不会换行显示,只会被识别为空格,如下图。 通过上图可以看出,\\\"n\\\"它被识别成了一个空格显示,并没有达到换行的效果,那我们应该如何实现换行呢? 其实很简单,我们只需要对文

    2024年02月07日
    浏览(28)
  • Python中print()打印如何不换行?

    print() 函数用于打印输出,是python中最常见的一个内置函数。 如何在Python中打印两个或多个变量、语句时而不进入新行? 因为python中函数有一个预定义的格式,如果使用print(a_variable) 默认会换行 。 运行后的结果为: 但是有时我们不想转到下一行,在python2 和python3 中使用不

    2024年02月07日
    浏览(38)
  • 逻辑(css3)_强制不换行

    需求 如上图做一个跑马灯数据,时间、地点、姓名、提示文本字数都不是固定的。 逻辑思想 个人想法是给四个文本均设置宽度,不然会出现 不能左对齐 的现象。 此时四个文本均左对齐, 垂直排列样式也比较好看,但是出现一个缺点: 某些手机屏幕上会 折行 。 此时可以

    2024年02月06日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包