当前位置: 首页 > 知识库问答 >
问题:

仅CSS检测HTML中的文本溢出?

丌官炎彬
2023-03-14

我看到了一些关于使用JavaScript检测和处理溢出HTML元素的文本的建议。但现在是2013年,所以我想知道CSS规范是否有办法自己检测溢出。

换句话说,如果我有一个固定大小的div:

<div class="smart-warning" style="width:200px; height:20px; overflow:hidden">
This is my very long text that would overflow the box.
</div>

我希望有一种风格,可以在文本溢出时发挥作用,例如:

<style>
.smart-warning {
  border:1px solid black
}
.smart-warning:overflowing {
  border:1px solid red
}
</style>

看起来我们真的很接近在CSS中有这样的东西,但倾诉规格不是我的游戏。

如果它不存在,你认为它有用吗?

谢啦!

共有3个答案

闻人嘉木
2023-03-14

如果div是单行,可以添加:

    text-overflow: ellipsis;
    white-space: nowrap;

此省略号属性添加“…”在宽度限制内的任何内容的末尾(为溢出的div添加视觉指示器)据我所知,它只能与nowrap属性结合使用。

令狐宏伟
2023-03-14

CSS永远不可能做到这一点的原因是,这将导致悖论。

考虑以下因素:

.box {
    height: 100px;
}

.box:overflowing {
    height: 200px;
}

.content {
    height: 150px;
}

现在如果盒子溢出,它的高度为200px,这意味着它不再溢出,这意味着它的高度为100px,这意味着它现在溢出,...

澹台蕴藉
2023-03-14

我不知道CSS规范的任何部分,在那里这是可能的。第4级选择器支持许多新的伪类(以及一些非常有用的用于检查输入元素状态的类),但这些类实际上都不能检查诸如框是否溢出之类的条件。您仍然必须通过Javascript来实现这一点。

 类似资料:
  • 问题内容: 我在页面上有一个块元素集合。它们都设置了CSS规则的空白,溢出,文本溢出,以便修剪掉溢出的文本并使用省略号。 但是,并非所有元素都会溢出。 无论如何,我可以使用JavaScript来检测哪些元素正在溢出吗? 谢谢。 补充:我正在使用的示例HTML结构。 SPAN元素始终适合单元格,它们应用了省略号规则。我想检测何时将省略号应用于SPAN的文本内容。 问题答案: 很久以前,我需要这样做,

  • 问题内容: 我想在表格单元格中使用CSS,这样,如果文本太长而无法放在一行上,它将用省略号进行剪切,而不是换成多行。这可能吗? 我尝试了这个: 但是,似乎使文本(及其单元格)不断向右扩展,从而使表格的总宽度超出了其容器的宽度。但是,如果没有它,文本在碰到单元格的边缘时会继续换行。 问题答案: 要在表格单元溢出时用省略号剪切文本,您需要在每个类上设置CSS属性,以使溢出起作用。不需要额外的布局div

  • 每个任务都有一个自己的堆栈,如果任务使用xTaskCreate()创建,则任务堆栈会自动从堆内存上创建。如果使用xTaskCreateStatic()创建,则堆栈由开发者自己确定并提供。堆栈溢出是影响系统稳定性的一个常见因素,freeRTOS提供两种可选的用于检测和纠正堆栈溢出的机制。使用配置选项configCHECK_FOR_STACK_OVERFLOW设置。 注意,这些选择只在那些内存映射不是

  • 我不知道为什么这个简单的CSS不起作用... null null 应该在第4次“测试”前后切断

  • 问题内容: 如何检测div元素中的垂直文本溢出? CSS: HTML: 问题答案: 您可以通过将scrollHeight与clientHeight进行比较轻松地做到这一点,请尝试以下操作: 有关更多信息,请查看:http : //help.dottoro.com/ljbixkkn.php

  • 我有html页面,我定义我的风格为代码在头: 它用于发送时事通讯。然后我必须在另一个页面的文本区域内呈现这个超文本标记语言页面。到目前为止一切都好。 当我将代码呈现到TextArea时,将其保存到数据库后,我在主页上破坏了css。所发生的是,它将在textarea中找到的css添加到主页面。这是它添加到标题中的标记。 有人能帮我避免吗?非常感谢!