我不知道为什么这个简单的CSS无法正常工作…
.app a {
height: 18px;
width: 140px;
padding: 0;
overflow: hidden;
position: relative;
margin: 0 5px 0 5px;
text-align: center;
text-decoration: none;
text-overflow: ellipsis;
white-space: nowrap;
color: #000;
}
<div class="app">
<a href="">Test Test Test Test Test Test</a>
</div>
应该切断第四次“测试”
text-overflow:ellipsis;
仅在满足以下条件时起作用:
px
(像素)。宽度%
(百分比)无效。overflow:hidden
并white-space:nowrap
设置。您在这里遇到问题的原因是因为width
您的a
元素的不受限制。您确实有一个width
设置,但是因为该元素设置为display:inline
(即默认值),所以它忽略了它,并且也没有其他任何约束其宽度的方法。
您可以通过执行以下任一操作来解决此问题:
display:inline-block
或display:block
(可能是前者,但取决于您的布局需求)。display:block
并为其赋予一个固定值width
或max-width
。float:left
或float:right
(可能是前者,但同样,就省略号而言,两者应具有相同的效果)。我建议display:inline- block
,因为这将对您的布局产生最小的附带影响;就display:inline
布局而言,它的工作方式与当前使用的非常相似,但也可以随意尝试其他方面。我试图提供尽可能多的信息,以帮助您了解这些事物如何相互作用。理解CSS的很大一部分是关于理解各种样式如何协同工作的。
这是您的代码的片段,带有display:inline-block
添加的代码,以显示您的距离。
.app a {
height: 18px;
width: 140px;
padding: 0;
overflow: hidden;
position: relative;
display: inline-block;
margin: 0 5px 0 5px;
text-align: center;
text-decoration: none;
text-overflow: ellipsis;
white-space: nowrap;
color: #000;
}
<div class="app">
<a href="">Test Test Test Test Test Test</a>
</div>
我不知道为什么这个简单的CSS不起作用... null null 应该在第4次“测试”前后切断
问题内容: 这是我尝试过的: 本质上,当窗口变小时,我希望跨度以省略号缩小。我做错什么了? 问题答案: 您需要具有CSS ,(或)和。
问题内容: 我知道您可以使用CSS规则组合来在溢出时(不超出父级的范围)使文本以省略号(…)结尾。 是否有可能(随意说,不)达到相同的效果,但让文本换行超过一行? 如您所见,当文本的宽度大于div的宽度时,文本以省略号结尾。但是,仍然有足够的空间用于文本换行并继续。这会被中断,以使省略号起作用。 有任何想法吗? PS:没有JS解决方案,如果可能的话,使用纯CSS。 问题答案: 我不确定您是否看过
问题内容: 我有一条路径列表(由于缺少更好的词,也许面包屑痕迹可以更好地描述它们)。有些值太长而无法在其父项中显示,因此我正在使用。问题在于重要信息在右侧,因此我希望省略号出现在左侧。像这样的ASCII艺术: 请注意,第一行足够短,因此仍保持左对齐,而其他两行又太长,因此省略号出现在左侧。 我更喜欢仅CSS的解决方案,但是如果无法避免,JS很好。如果该解决方案仅适用于Firefox和Chrome,
我的容器带有。我希望中间的孩子将占据整个空间,因此我将其设置为。到现在为止,一直都还不错。 下一个级别是中间的孩子有2个孩子,所以我也想设置它flex(如果你失去了我,就跳到片段)和第一个孩子我设置省略号样式。现在,省略号停止工作。 如果你会点击按钮,你会看到一切都好短的文字; 有什么想法吗?
问题内容: 我在页面上有一个块元素集合。它们都设置了CSS规则的空白,溢出,文本溢出,以便修剪掉溢出的文本并使用省略号。 但是,并非所有元素都会溢出。 无论如何,我可以使用JavaScript来检测哪些元素正在溢出吗? 谢谢。 补充:我正在使用的示例HTML结构。 SPAN元素始终适合单元格,它们应用了省略号规则。我想检测何时将省略号应用于SPAN的文本内容。 问题答案: 很久以前,我需要这样做,