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

使用可变宽度div时的CSS文本省略号

颛孙智勇
2023-03-14

我想知道当父div和相邻div没有足够的空间时,是否有任何方法可以使浮动div中的文本获得省略号。例如:

<style>
.parent-div {
    width: 100%;
    border: 1px;
    padding: 4px;
}
.text-div {
    float: right;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;    
}
.icon-div {
    float: left;
}
</style>
<div class="parent-div">
  <div class="text-div">This is text I'd like to truncate when space doesn't permit</div>
  <div class="icon-div">X</div>
</div>

到目前为止,如果我挤压浏览器窗口,父div将崩溃,然后text div中的空白将消失,但当没有更多空间时,省略号将永远不会出现。

我能想到的唯一一件事就是在窗口调整大小并在text div上动态设置一个新的固定宽度时触发一个事件,但这感觉很不雅观,特别是考虑到填充和其他相邻的工件,我必须减去它以获得适当的宽度。

对这个有什么想法吗?

这里有一个jsFiddle演示:http://jsfiddle.net/Blender/kXMz7/

共有2个答案

拓拔嘉运
2023-03-14

我的公司还不支持CSS3,但我能够用另一种解决方案解决这个问题。通过将浮动属性仅应用于图标div并将其放在超文本标记语言的第一位,另一个div将保持垂直对齐,同时在没有足够空间时也会截断。

示例:(右侧的图标)http://jsfiddle.net/qftWN/,(图标位于左侧)http://jsfiddle.net/Nr2NN/

齐嘉庆
2023-03-14

您可以使用CSS3灵活的方框布局非常直观地执行此操作:

.parent-div {
    display: flex;
}

.text-div {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;    

    min-width: 0;
}

.icon-div {
    flex: 1;
}​

演示:http://jsfiddle.net/Blender/kXMz7/1/

 类似资料:
  • 我想知道当父div和相邻div没有足够的空间时,是否有任何方法可以使浮动div中的文本获得省略号。例如: 到目前为止,如果我挤压浏览器窗口,父div将崩溃,然后text div中的空白将消失,但当没有更多空间时,省略号将永远不会出现。 我能想到的唯一一件事就是在窗口调整大小并在text div上动态设置一个新的固定宽度时触发一个事件,但这感觉很不雅观,特别是考虑到填充和其他相邻的工件,我必须减去它

  • 问题内容: 有没有一种方法可以在比其父对象更宽的父容器DIV中包含子DIV 。子DIV必须与浏览器视口的宽度相同。 子DIV 必须保留为父div的子。我知道我可以在子div上设置任意的负边距以使其更宽,但是我不知道如何从根本上使它成为浏览器宽度的100%。 我知道我可以这样做: 但是我需要孩子的宽度与动态浏览器的宽度相同。 Update 感谢您的回答,到目前为止,似乎最接近的答案是将子DIV位置设

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

  • 问题内容: 我想创建一个div可以随窗口宽度变化而改变其宽度/高度的。 是否有任何CSS3规则可以允许高度根据宽度而改变,同时保持其长宽比? 我知道我可以通过JavaScript来做到这一点,但我宁愿只使用CSS。 问题答案: 只需使用百分比值创建包装器,如下所示: 它将导致高度等于其容器宽度的75%(长宽比为4:3)。 这取决于以下事实: 相对于生成的盒子的包含块的宽度计算百分比(来源:w3.o

  • 问题内容: 我在一个响应式网站上工作,遇到一个有趣的问题。我有一些并排的div。可能有2到6个左右的任何地方。当屏幕的宽度不足以正确显示所有内容时,div将垂直堆叠。使用CSS足够简单。 问题是,我需要根据布局以不同的顺序排列它们。使用2或3个div([根据width更改div的顺序])很容易做到这一点,但是当您添加第四个[div时,难度就更大。 我可以使用并手动设置位置,但是这会使父级缩小并且不

  • 我正在创建一个快速响应的网站。我使用类似这样的方法来隐藏一些用于移动显示的元素: 现在我需要从高度方面检查一些元素。我尝试了这个:,但我不知道为什么它不起作用。还需要注意的是,我需要一个,我想要这个条件: 如何使用CSS实现上述条件?